/*判断闰年的函数*/
#include
int main(void){
printf("输入一个年份:");
int year;
scanf("%d",&year);
if((year%4==0 && year%100!=0) || year%400==0){
printf("%d是闰年!\n",year);
} else{
printf("%d不是闰年\n",year);
}
return 0;
}
switch(表达式){
case 常量:表达式;break;
case 常量:表达式;break;
default : 表达式;
}
#include
int main(void){
int age;
printf("输入孩子年龄:");
while(1){
scanf("%d",&age);
if(age>=2 && age<=6){
break;
} else{
printf("输入不年龄不符合要求,请重新输入:\n");
}
}
switch(age){
case 2: ;
case 3: printf("孩子年龄%d,进入小班!\n",age);break;
case 4: printf("孩子年龄%d,进入小中班!\n",age);break;
case 5: ;
case 6: printf("孩子年龄%d,进入小大班!\n",age);break;
}
return 0;
}
c.循环结构 while ,do while ,for
for(循环变量;循环条件表达式;变量自增(自减)){
语句块;
}
还可以写为:
for(;;){}
#include
/*求输入数的阶乘*/
int main(void){
int i,n;
double s=1;
printf("Please enter n:");
scanf("%d",&n);
for(i=1;i<=n;i++){
s=s*i;
printf("%d!=%.0lf\n",i,s);
}
printf("%d!=%.0lf\n",n,s);
return 0;
}
while(逻辑表达式){
语句块;
}
do{
语句块;
}while(逻辑表达式);
区别 while是先判断表达式的值(1成立,0不成立)成立就执行循环语句块 不成立就不执行。
do while是先执行一次语句块在判断是否继续执行语句块中的语句。
#include
int main(void){
int i;
int sum=0;
while(i<=50){
sum+=i;
i++;
}
printf("0+1+.....+50=%d\n",sum);
do{
sum+=i;
i++;
}while(i<=100);
printf("0+1+.....+150=%d\n",sum);
}