day4
1.C语言的结构
1.顺序结构、选择结构、循环结构
1.1选择结构
1.1.1 if else
/* code */
if(表达式)
{
语句块;
}
/* code */
if(表达式)
{
语句块1;
}
else
{
语句块2;
}
if(表达式1)
{
语句块1;
}
else if(表达式2)
{
语句块2;
}
else if(表达式3)
{
语句块3;
}
....
else
{
语句块n;
}
if()
{
if()
{
}
else
{
}
}
else
{
if()
{
}
else if
{
}
}
补充自动对齐
1.命令行模式
gg=G
2.可视化模式 在命令模式 按V
练习
1.两个数里面取,最大值。
int a, b, max;
scanf("%d", &a);
scanf("%d", &b);
if( a > b)
{
max = a;
}
else
{
max = b;
}
printf("max:%d\n", max);
2.三个数中找最大值
int a, b, c, max;
printf("input three num:");
scanf("%d %d %d", &a, &b, &c);
/*
scanf("%d", &a);
scanf("%d", &b);
scanf("%d", &c);
*/
if(a > b)
{
if(a > c)
{
max = a;
}
else
{
max = c;
}
}
else
{
if(b > c)
{
max = b;
}
else
{
max = c;
}
}
printf("max:%d\n", max);
1.1.2 switch case
switch语句
switch (表达式)
{ case 常量表达式1:语句块1; break;
case 常量表达式2:语句块2; break;
….
case 常量表达式n:语句块n; break;
default :语句块n+1;
}
练习
1.终端输入成绩 int 有效成绩 [0, 100]
无效成绩:打印 "error"
有效成绩:判断等级
[90, 100] --- A
[80, 90) --- B
[60, 80) --- C
[0, 60) --- not pass
int score;
printf("input a score:");
scanf("%d", &score);
if(score < 0 || score > 100)
{
printf("error\n");
}
else
{
switch(score / 10)
{
case 10: printf("A\n"); break;
case 9: printf("A\n"); break;
case 8: printf("B\n"); break;
case 7: printf("C\n"); break;
case 6: printf("C\n"); break;
default : printf("not pass\n");
}
}
if(10<= n<= 100)
其实比较的就是10和100,恒真
---> if(10<= n && n<= 100)
1.2循环结构
1.2.1 for
for( 表达式1; 表达式2; 表达式3)
{
循环语句块;
}
表达式1:循环控制变量初始化
表达式2: 循环的条件
表达式3:循环控制变量的更新
练习
1.实现累加
1 + 2 + 3 + ... + 100 输出求和结果
int i;
int sum = 0;
for(i = 1; i <= 100; i++)
{
sum += i; //sum = sum + i;
}
printf("%d\n", sum);
2.鸡兔同笼
鸡兔共有90只脚, 30个头, 求解鸡有几只,兔有几只?
j t
0 30
1 29
int j;
for(j = 0; j <= 30; j++)
{
if( j*2 + (30 - j)*4 == 90 )
{
printf("j:%d t:%d\n", j, j - 15);
}
}
1.2.2 while
while(表达式)
{
语句块;
}
练习
1.判断0~100之间的偶数,如果是偶数打印输出,要求10个偶数一行
int i = 0, count = 0;
while(i <= 100)
{
if( i % 2 == 0)
{
printf("%d\t", i);
count++;
}
if( count % 10 == 0)
{
printf("\n");
//count = 0;
}
i++;
}
1.2.3 do while
do{
代码块;
}while(表达式);
1.2.4 goto
LOOP:
goto LOOP;
循环相关的关键字
break : 跳出循环
continue : 跳过本次循环
return : 函数的结束