runnoob菜鸟
runnoob菜鸟
第五十六课 for循环训练
1. 设定初始化和条件判断语句的取值范围:
①当递增用于步骤使用时,可以从0到指定的最高值
比如说老师出的题目中,要输出20个星号。
②当递增用于数字统计时,可以从1到指定的最高值+1。
(小提示而已,不是全部情况都这样的,初学小白的笔记而已,嘿嘿!)
2.输入两个正整数n和m,计算n和m之间(包含n和m)所有能被17整除的数的和,并输出和。
int n=Convert.ToInt32(Console.ReadLine());
int m=Convert.ToInt32(Console.ReadLine());
int temp = 0;
int b = 0;
if (n > m)
{
temp = n;
n = m;
m = temp;
}
for (int a = n; a < m+1; a++)
{
if (a % 17 == 0)
{
b += a;
}
}
Console.Write(b);
3.输入两个正整数n和m,利用for循环打印出来n和m之间(包含n和m),所有的级数和所有的偶数。奇数和偶数各方在一行并用空格分隔。
int n=Convert.ToInt32(Console.ReadLine());
int m=Convert.ToInt32(Console.ReadLine());
int temp = 0;
string ji = "";
string ou = "";
if (n > m && n > 0 && m > 0)
{
temp = n;
n = m;
m = temp;
}
for(int a =n; a <= m; a++)
{
if (a % 2 == 1 )
{
ji += a + " ";
}
else
{
ou += a + " ";
}
}
Console.WriteLine(ji);
Console.Write(ou);
注:
string chuan ="";
表示字符串变量chuan为空,好比int a = 0;(自己猜想的哦),
chuan += a+" ";
表示,想chuan变量里放入字符串并用空格隔开,可以放很多个,不会被覆盖,而是被组拼起来形成一个串。(给自己串饿了,想起啤酒来了,走了,出去吃串喝啤酒去)
第五十五课 通过for循环输出1-10
1. for语句:
for( 初始化; 条件判断; 增量表达式 )
{
循环体;
}
注:
初始化只执行一次;
条件判断执行到不满足条件为止;
增量表达式在循环体执行完以后执行;
然后再执行条件判断→循环体→增量表达式......→条件判断不满足跳出循环。
2. 条件判断语句的书写时,相同条件表达,性能不同:
i<11;
i<=10;
表达相同,性能不同。1<11;更快一些,每一步只有一次判断;i<=10;慢有一些,每一步要两次判断。
sda
第五十四课 编程题while循环
1. 班上有若干名学生,输入学生的个数,然后输入每一个学生的年龄,计算出来平均年龄,保留到小数点后两位,输出平均年龄。
int mub=Convert.ToInt32(Console.ReadLine());
int temp = 0;
double count = 0;
while (temp< mub)
{
int a = Convert.ToInt32(Console.ReadLine());
count += a;
temp++;
}
double pj = 1.0*count /mub;
double d = ((int)(pj * 100)) / 100.0;
Console.WriteLine("学生的平均年龄为:"+d);
可修改为老师的方法:
int mub=Convert.ToInt32(Console.ReadLine());
int temp = 0;
double count = 0;
while (temp< mub)
{
int a = Convert.ToInt32(Console.ReadLine());
count += a;
temp++;
}
double pj = 1.0*count /mub;
pj = ((int)(pj * 100)) / 100.0;
Console.WriteLine("平均年龄为:"+pj);
2. Console.WrtieLine();
表示输出并换行,是先输出再换行。
例如:
Console.Wrtie(1);
Console.Wrtie(2);
Console.WrtieLine(3);
Console.Wrtie(4);
输出结果为:
123
4
3再同一行,表示WriteLine功能是先输出并换行。
3.单独使用Console.WriteLine();
只起到换行的作用,不输出任何值。
第五十三课 编程题3n加1问题
1. 3n+1问题:
对于任意大于1的自然数n,若n为奇数,将n变成3n+1,否则变成n的一半,经过若干次这样的变化,n最终一定会变成1,。比如:7→22→11→34→17→52→26→13→40→20→10→5→16→8→4→2→1
输入n,输出变换的次数。
比如输入3,输出7;输入10,输出6。
int n =Convert.ToInt32(Console.ReadLine());
int a = 0;
while (n > 1)
{
if(n % 2 == 1)
{
n = 3 * n + 1;
a++;
}
else
{
n = n / 2;
a++;
}
}
Console.Write("最后值为{0}" + " " + "共用{1}步", n, a);
这道题还蛮好玩的,睡觉去了,睡晚了更掉头发,明天再听老师揭秘。
注:
计循环次数额a++写在while里if外啊,我还每个if里面写一个,真笨。
public class Program
{
public static void Main(string[] args)
{
//题目1:有⼀个游乐场,只有年龄不⼤于16岁的⻘少年可以进⼊,判断输⼊的年龄是否符合条件
Console.WriteLine("请输入年龄");
int age = Convert.ToInt32(Console.ReadLine());
if ((age > 0)&&(age <= 16))
{
Console.WriteLine("能进去");
}
else
{
Console.WriteLine("不可以");
}
Console.ReadKey();
}
}
//输⼊考试成绩(0-100),
//如果90-100,评级为A
//如果70-89,评级为B
//如果60-69,评级为C
//如果⼩于60,评级为D,
//根据输⼊的成绩,输出评级
Console.WriteLine("请输入成绩");
int score = Convert.ToInt32(Console.ReadLine());
//double age2 = age % 2;
Console.WriteLine("读取成功:您的成绩为"+score);
if (score >= 0 && score<=60)
{
Console.WriteLine("D级的垃圾,爪巴");
}
else if (score >= 60 && score<= 69)
{
Console.WriteLine("C级的垃圾,爪巴");
}
else if (score >= 70 && score <= 89)
{
Console.WriteLine("B级的垃圾,爪巴");
}
else if (score >= 90 && score <= 100)
{
Console.WriteLine("A级的垃圾,爪巴");
}
else
{
Console.WriteLine("神经病,能不能好好填成绩?");
}
Console.ReadKey();
驼峰(Camel)命名法
第五十二课 控制while循环的开头和结尾
1. 输入两个整数n1,n2,输出n1-n2(包含n1和n2)之间所有的偶数。
int n1 = Convert.ToInt32(Console.ReadLine());
int n2 = Convert.ToInt32(Console.ReadLine());
if (n1 > n2)
{
int temp = n1;
n1 = n2;
n2 = temp;
Console.WriteLine("{0}、{1}", n1, n2);
}
while (n1 < n2 + 1)
{
if (n1 % 2 == 0)
Console.Write(n1+" ");
n1++;
}
学这玩应掉头发!
2. 3n+1问题:
对于任意大于1的自然数n,若n为奇数,将n变成3n+1,否则变成n的一半,经过若干次这样的变化,n最终一定会变成1,。比如:7→22→11→34→17→52→26→13→40→20→10→5→16→8→4→2→1
输入n,输出变换的次数。
比如输入3,输出7;输入10,输出6。
int n =Convert.ToInt32(Console.ReadLine());
int a = 0;
while (n > 1)
{
if(n % 2 == 1)
{
n = 3 * n + 1;
a++;
}
else
{
n = n / 2;
a++;
}
}
Console.Write("最后值为{0}" + " " + "共用{1}步", n, a);
这道题还蛮好玩的,睡觉去了,睡晚了更掉头发,明天再听老师揭秘。
第五十课 while循环的调节书写
1. int Hp = 100;
while (Hp>0)
{
Hp -=3;
Console.WriteLine("Hp");
}
注:
Hp--;表示递减1.
Hp -= 3;递减3就是这么写。
第四十九课 while循环的基本结构
while(满足true执行,flase终止)
{
循环语句
}
第四十七课 编程题
1. 输入4个整数,输出最大数和最小数。
int a = Convert.ToInt32(Console.ReadLine());
int b = Convert.ToInt32(Console.ReadLine());
int c = Convert.ToInt32(Console.ReadLine());
int d = Convert.ToInt32(Console.ReadLine());
int temp = a; int mini = a;
if (a != b && b != c && c != d && d != a)
{
if (temp < b)
{
temp = b;
}
if (temp < c)
{
temp = c;
}
if (temp < d)
{
temp = d;
}
if (mini > b)
{
mini = b;
}
if (mini > c)
{
mini = c;
}
if (mini > d)
{
mini = d;
}
Console.WriteLine("最大值:{0},最小值:{1}", temp, mini);
}
没啥说的~飘过。
2. 输入两个整数,再输入0-3之间的一个整数,0代表加法,1代表减法,2代表乘法,3代表除法,计算这两个数的结果。
Console.WriteLine("输入两个整数");
int a = Convert.ToInt32(Console.ReadLine());
int b = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("输入0-3之间的整数");
int c = Convert.ToInt32(Console.ReadLine());
if (c >= 0 && c <= 3) {
switch (c)
{
case 0:
Console.WriteLine(a + b);
break;
case 1:
Console.WriteLine(a - b);
break;
case 2:
Console.WriteLine(a * b);
break;
default:
Console.WriteLine(a / b);
break;
}
}
注:我测试了一下
case后面的数字标注的几,按几号键就会输出相对性的结果,所以还是限制一下数字范围,如果没有限制数字范围的情况下,那default就有意思了,出了0,1,2意外的数字都默认为除法,哈哈。
第四十六课 switch语句变形
1. switch语句变形
当switch语句下面的判断中case 1:与下一条case 2:、case 3:……执行的条件相同时,那么他们就可以简写:
例如:
switch(abcd)
{
case 1:
Console.WriteLine("今天吃点啥?");
break;
case 2:
Console.WriteLine("今天吃点啥?");
break;
case 2:
Console.WriteLine("今天吃点啥?");
break;
}
以上语句就可以写成:
switch(abcd)
{
case 1:
case 2:
case 3:
Console.WriteLine("今天吃点啥?");
break;
}
因为最后执行的结果都一样就没必要再次重复了,所以,
case 1:
case 2:
case 3:
这样连续写就表示条件满足case 1:或case 2:或case 3:其中的一个,然后再执行下面的语句。
2. if语句和swithc语句区别:
①if语句适合范围判断()中的bool条件可以做各种判断。
②switch语句()中只能装==的条件。
注:
两个语句其实没有实际的相同,很好判断
if语句通俗易懂的说法就是:
if如果这样,if要么这样……else如果不行,那就这样。
seitch语句,今天我们组人分头行动,分别做什么,(语句简写理解,如果任务相同,只能有一组人来做,别一群人上去把人给吓着了)
第四十五课 switch语句基本语法
1. switch语句格式:
switch( 变量 )
{
case 1: 判断条件1;
语句;
break;
case 2: 判断条件2;
语句;
break;
case 2: 判断条件3;
语句;
break;
default:(除以上条件外)
语句;
break;
}
第四十三课 编程题
1. 如何判断一个单字符a是不是数字
if( a >= '0' && a <= '9')
‘0’和‘9’都是字符(与数字0和就不同),指的是在阿斯克码表上,对应数字类型和字母类型的区分,意思是说,你输入的这个单字符所对应的是不是表阿斯克码表中数字范围内的。
比如:这段就要求你输入的是数字类型,出了数字类型就不行,所以就要有这个要求了。
判断小写字母a到z
if(x >= 'a' && x <= 'z')这么写更直观。
也可以写成if( x>= 97 && x<= 122)和上面的表达是一样的
第四十二课 编程题
1. 输入三个整数,按照从小到大顺序输出。
int a = Convert.ToInt32(Console.ReadLine());
int b = Convert.ToInt32(Console.ReadLine());
int c = Convert.ToInt32(Console.ReadLine());
if(a !=b && b!=c && a!= c) {
if (a > b)
{
int temp = a;
a = b;
b = temp;
}
if (b > c)
{
int temp = b;
b = c;
c = temp;
}
if (a > b)
{
int temp = a;
a = b;
b = temp;
}
Console.WriteLine(a + " " + b + " " + c);
}
解析:总if语句中表示三个数不能相等。
例如,我们给出个字母和数字对应的表格。
a b c
4 3 1
第一个if语句以后变为
a b c
3 4 1
第二个if语句以后变为
a b c
3 1 4
第三个if语句以后变为
a b c
1 3 4
比较以后,将大的数字还给后面的字母容器承装。
2. 输入一个小数m和整数k(k为0或1);
如果k为0,则输出m保留整数部分;
如果k为1,则输出m,四舍五入保留1位小数。
Console.WriteLine("先输入一位小数");
double m = Convert.ToDouble(Console.ReadLine());
Console.WriteLine("再输入0或1");
int k = Convert.ToInt32(Console.ReadLine());
if(k == 0)
{
int temp = (int)m;
Console.WriteLine(temp);
}else if(k == 1)
{
double sep = ((int)((m + 0.05) * 10))/10.0;
Console.WriteLine(sep);
}
注:
比如输入的小数为:3.4567
①取小数部分方法:
取一位小数时,需要百分位上的数四舍五入,那么让这个小数+0.05,如果百分位上的数不大于5,那么+0.05也不能进一位,所以相当于被四舍;百分位上的数大于5,那么+0.05就会被进上去一位,相当于被五入了。
②在除以一个数,并且想得到一位小数部分,那么就要写/10.0,将除数带上一位小数,这样结果才会带上一位小数。(别像我傻傻地写了个10上去给自己弄的怀疑人生了,看了老师继续讲才知道的。)
第四十一课 编程题
1. x-- ,x++ 只要是参加过一次运算以后就递增一次,不管是不ture还是false。
2. if( )里面只能是bool类型的。
第四十课 编程题 if语句嵌套
1. 体能测试!每个人都需要测试两组项目,请输入你的性别(m或f)和抽到的单双数号码,输出你的测试项目。
体育课测试项目表
长跑 单数 双数
男male 1000米 跳远 俯卧撑
女female 800米 跳绳 仰卧起坐
样例输入 m 3 输出1000米 跳远
样例输入 f 8 输出800米 仰卧起坐
char zimu = Convert.ToChar(Console.ReadLine());
int shuzi = Convert.ToInt32(Console.ReadLine());
if(zimu == 'm')
{
string yichuanzimu = "1000米长跑";
if (shuzi % 2 == 1)
{
yichuanzimu += " 跳远";
}
else
{
yichuanzimu += " 俯卧撑";
}
Console.WriteLine(yichuanzimu);
}
else if(zimu == 'f')
{
string gengchangdeyichuanzimu = "800米长跑";
if (shuzi % 2 == 1)
{
gengchangdeyichuanzimu += " 跳绳";
}
else
{
gengchangdeyichuanzimu += " 俯卧撑";
}
Console.WriteLine(gengchangdeyichuanzimu);
}
注:
字符串可以先装变量里一串,后面如果再想接着装一串的话就用 += “ 老板再来一串”;,最后直接输出变量,里面的串就都端上来了(确实饿了,注意“”里面的前端有空格哈,要么老板不给加串)。
2. if语句简写
if(){ }语句中,如果()内的判断只有一条语句,而{ }里面也只有一条语句,那么(){ }都可以扔掉不要。else{就不能扔掉 ; }
如果后面有多条,那么if语句就认为只有下一条是它的,其他的它都不管else也是这样(看来是师出同门啊)
\n 换行
\t
注释快捷键 Ctrl+ K+ C
Ctrl+ K+ U