/*分支语句和循环语句

分支语句:if switch

循环语句:while for do while

if语句

if(表达式)

语句;

if(表达式)

语句1;

else

语句2;

多分支:

if(表达式1)

语句1;

else if(表达式2)

语句2;

else

语句3;*/

/*int main()

{

int age;

printf("你的年龄:");

scanf("%d",&age);

if (age<18)

printf("未成年\n");

else

{

if(age>=18 && age<28)

printf("青年\n");

else if(age>=28 && age<60)

printf("壮年\n");

else if(age>=60 && age<90)

printf("老年\n");

else

printf("接近百年老人\n");

}

/*if (age<18)

printf("未成年\n");

else if(age>=18 && age<28)

printf("青年\n");

else if(age>=28 && age<60)

printf("壮年\n");

else if(age>=60 && age<90)

printf("老年\n");

else

printf("百年老人\n");

/*if(age<18)

printf("未成年\n");

else

printf("成年\n");*/

/*if(表达式)

{

}

else(表达式)

{

}*/

//悬空else :就近原则  与最近的未匹配的if 匹配,否则可以用{}花括号隔开;

//练习:判断一个数是否为奇数;输出1-100之间的奇数

/*int main()

{

int z = 1;

while(z<=100)

{

if(z%2 == 1)

printf("%d\n",z);

z++;

}

}*/

/*int main()

{

int z;

printf("请输入一个数:");

scanf("%d",&z);

if (z<=100 && z%2 != 0)

{

printf("奇数\n",z);

}

else

printf("偶数\n",z);

}*/

 

//switch语句

/*switch(整型表达式)

{

//case:整型常量表达式

语句项;

//break:中断

}*/

/*int main()

{

int day;

printf("请输入今天星期几:");

scanf("%d",&day);

switch(day)

{

case 1:

printf("星期一\n");

break;

case 2:

printf("星期二\n");

break;

case 3:

printf("星期三\n");

break;

case 4:

printf("星期四\n");

break;

case 5:

printf("星期五\n");

break;

case 6:

printf("星期六\n");

break;

case 7:

printf("星期日\n");

break;

default://处理非法状况

printf("输入错误\n");

}

}*/

//练习

/*int main()

{

int n = 1;

int m = 2;

switch(n)

{

case 1:m++;

case 2:n++;

case 3:

switch(n)

{//switch允许嵌套使用

case 1:n++;

case 2:m++;n++;

break;

}

case 4:m++;

break;

default:

break;

}

printf("m=%d,n=%d\n",m,n);

return 0;

}*/

//循环语句

//while循环

/*while(表达式)

循环语句;

*/

//int main()

/*{

int z=1;

while(z<50)

{

if(z==5)

break;

printf("%d\n",z);

z++;

}

}*/

/*{

int z=1;

while(z<50)

{

if(z==5)

continue;//终止本次循环,直接跳到while循环

printf("%d\n",z);

z++;

}

}*/

//getchar语句

/*int main()

{

int ch = 0;

//ctrl + z

//EOF-end of file -> -1

while((ch=getchar())!= EOF)

{

putchar(ch);

}

}*/

/*int main()

{

int ch = 0;

while((ch = getchar())!=EOF)

{

if(ch<'0' || ch>'9')

continue;

putchar(ch);

}

}*/

 

//for循环

/*for(表达式1:(初始化变量)表达式2:(判断循环终止)表达式3:(循环条件的调整))

循环语句;*/

/*int main()

{

int z;

//把初始化 判断 调整用在一起

for(z=1;z<=10;z++)

{

if(z==5)

//break;跟while用法一致

continue;//不会出现while那种死循环,会跳到调整部分;

printf("%d\n",z);

}

}*/

//建议:1不可在for循环体内修改循环变量,防止for循环失去控制


// 2建议for语句的循环控制变量的取值采用"前闭后开区间"写法

//for语句变种

/*int main()

{

for(;;)//for循环的初始化 调整 判断可以省略,但是:判断条件省略,那判断条件恒为正;不要随便省略

{

printf("haha\n");//死循环

}

}*/

/*int main()

{

int x,y;

for(x=0,y=0;x<2 && y<5;++x,y++)

{

printf("你是猪\n");

}

return 0;

}*/

//练习:

/*int main()

{

int i = 0;

int k = 0;

for(i=0,k=0; k=0; i++,k++)

k++;

}*///循环0次:因为k=0重新赋值k

 

 

//do...while()循环

/*do

{

循环语句;

}

while(表达式);*/

/*int main()

{

int z=1;

do

{

if(z==5)

//break;

continue;//跟while情况一样,形成死循环.

printf("%d\n",z);

z++;

}

while(z<=10);

}*/

//循环语句练习

//计算n的阶乘

/*int main()

{

int a=0;

int n=0;

int ret=1;

scanf("%d",&n);

for(a=1;a<=n;a++)

{

ret=ret*a;

}

printf("ret=%d\n",ret);

}*/

//计算1!+2!+3!+....+10!

/*int main()

{

int a=0;

int n=0;

int ret=1;

int sum=0;

for(n=1;n<=3;n++)

{

ret=1;

for(a=1;a<=n;a++)

{

ret=ret*a;

}

//n的阶乘

sum=sum+ret;

}

printf("sum=%d\n",sum);

}*/

//优化

/*int main()

{

int a=0;

int n=0;

int ret=1;

int sum=0;

for(n=1;n<=3;n++)

{

// ret=1;

// for(a=1;a<=n;a++)

// {

ret=ret*n;

// }

//n的阶乘

sum=sum+ret;

}

printf("sum=%d\n",sum);

}*/


小胖专属学习分享