C语言 第四章 分支结构练习
一、输入语文,数学成绩,根据平均分分3档
#include "stdio.h" void main() { //接受用户输入 float chinese,math,avg; printf("请输入语文成绩:"); scanf("%f",&chinese); printf("请输入数学成绩:"); scanf("%f",&math); //判断输入是否正确 if((chinese>=0&&chinese<=100)&&(math>=0&&math<=100)) { //求平均分 avg=(chinese+math)/2; //根据平均分分档 if(avg>=0&&avg<=59){ printf("C"); } else if(avg>=60 && avg<=84) { printf("B"); } else { printf("A"); } } else { printf("输入错误"); } }
二、使用switch实现算术运算
/* Note:Your choice is C IDE */ #include "stdio.h" void main() { //输入部分 int d1,d2; char o; printf("d1="); scanf("%d",&d1); fflush(stdin); printf("运算符(+ - * /):"); scanf("%c",&o); fflush(stdin); printf("d2="); scanf("%d",&d2); switch(o) { case '+': printf("%d%c%d=%d",d1,o,d2,d1+d2); break; case '-': printf("%d%c%d=%d",d1,o,d2,d1-d2); break; case '*': printf("%d%c%d=%d",d1,o,d2,d1*d2); break; case '/': if(d2!=0) { printf("%d%c%d=%d",d1,o,d2,d1/d2); } else { printf("除数不能为零"); } break; default: printf("系统不支持该运算符。"); } }
三、使用多重if实现算术运算
/* Note:Your choice is C IDE */ #include "stdio.h" void main() { //输入部分 int d1,d2; char o; printf("d1="); scanf("%d",&d1); fflush(stdin); printf("运算符(+ - * /):"); scanf("%c",&o); fflush(stdin); printf("d2="); scanf("%d",&d2); if(o=='+') { printf("%d%c%d=%d",d1,o,d2,d1+d2); } else if(o=='-') { printf("%d%c%d=%d",d1,o,d2,d1-d2); } else if(o=='*') { printf("%d%c%d=%d",d1,o,d2,d1*d2); } else if(o=='/') { if(d2!=0) { printf("%d%c%d=%d",d1,o,d2,d1/d2); } else { printf("除数不能为零"); } } else { printf("系统不支持该运算符。"); } }
四、for循环
/* Note:Your choice is C IDE */ #include "stdio.h" void main() { //1+2+3+4....+58=? int i,sum=0; for(i=1;i<=58;i++) { sum=sum+i; printf("\n%d",i); } printf("总和=%d",sum); }
五、while循环
/* Note:Your choice is C IDE */ #include "stdio.h" void main() { int i=1; while(i<=100) { printf("%d \n",i); i++; } }
/* Note:Your choice is C IDE */ #include "stdio.h" void main() { int i=1; while(1) //默认条件为真 { printf("%d \n",i); i++; if(i==100) { break; //结束循环 } } }
六、do while循环
/* Note:Your choice is C IDE */ #include "stdio.h" void main() { int i=0; do { i++; printf("%d\n",i); }while(i<58); }
七、密码示例
/* Note:Your choice is C IDE */ #include "stdio.h" void main() { int mm,e=0; //输入次数 do{ printf("还有%d次机会",3-e); printf("请输入密码:"); scanf("%d",&mm); e++; }while(mm!=9527&&e<3); if(e<=3&&mm==9527) { printf("密码正确,欢迎进入系统。"); } else { printf("卡已被锁,明天带身份证来。"); } }
八、多重if实现计算月份天数
/* Note:Your choice is C IDE */ #include "stdio.h" void main() { //1 3 5 7 8 10 12 ->31 //4 6 9 11 ->30 //13 输入错误 int month,year; printf("请输入年:"); scanf("%d",&year); printf("请输入月:"); scanf("%d",&month); if(month==1||month==3||month==5||month==7||month==8||month==10||month==12) { printf("这个月有31天"); } else if(month==4||month==6||month==9||month==11) { printf("这个月有30天"); } else if(month==2) { //①、非整百年能被4整除的为闰年。(如2004年就是闰年,2100年不是闰年) //②、能被400整除的是闰年。(如2000年是闰年,1900年不是闰年) //如果年被4整除且不被100整除,或400整除 if(year%4==0&&year%100!=0||year%400==0) { printf("闰年29天"); } else { printf("平年28天"); } } else { printf("输入有误"); } }
九、switch实现计算月份天数
/* Note:Your choice is C IDE */ #include "stdio.h" void main() { int month,year; printf("请输入年:"); scanf("%d",&year); printf("请输入月:"); scanf("%d",&month); switch(month) { case 1: case 3: case 5: case 7: case 8: case 10: case 12: printf("31天"); break; case 4: case 6: case 9: case 11: printf("30天"); break; case 2: if(year%4==0&&year%100!=0||year%400==0) { printf("29"); } else { printf("28"); } break; default: printf("输入错误"); } }
十、计算闰年
/* Note:Your choice is C IDE */ #include "stdio.h" void main() { //被4整除且不被100整除,或被400整除 int year; scanf("%d",&year); if((year%4==0&&year%100!=0)||(year%400==0)) { printf("闰年"); }else { printf("平年"); } }
十一、判断素数
/* Note:Your choice is C IDE */ #include "stdio.h" void main() { int i,j,flag=1; //就是素数 树旗,假定默认就是 scanf("%d",&j); for(i=2;i<j/2;i++) { if(j%i==0) { flag=0; break; } } if(flag==1) { printf("素数\n"); } else { printf("非素数\n"); } }
十二、100内所有素数
/* Note:Your choice is C IDE */ #include "stdio.h" void main() { int i,j,flag=1; //就是素数 树旗 for(j=2;j<=100;j++) { flag=1; for(i=2;i<j;i++) { if(j%i==0) { flag=0; break; } } printf("%d",j); if(flag==1) { printf("素数\n"); } else { printf("非素数\n"); } } }
十三、switch实现输入数字与符号运算结果
/* Note:Your choice is C IDE */ #include "stdio.h" void main() { int n1,n2; char op; scanf("%d",&n1); fflush(stdin); scanf("%c",&op); fflush(stdin); scanf("%d",&n2); switch(op) { case '+': printf("%d+%d=%d",n1,n2,n1+n2); break; case '-': printf("%d-%d=%d",n1,n2,n1-n2); break; case '*': printf("%dx%d=%d",n1,n2,n1*n2); break; case '/': if(n2==0) { printf("除数不能为零"); } else { printf("%d/%d=%d",n1,n2,n1/n2); } break; default: printf("符号错误"); } }
十四、多重if实现输入数字与符号运算结果
/* Note:Your choice is C IDE */ #include "stdio.h" void main() { int n1,n2; char op; scanf("%d",&n1); fflush(stdin); scanf("%c",&op); fflush(stdin); scanf("%d",&n2); if(op=='+') { printf("%d+%d=%d",n1,n2,n1+n2); } else if(op=='-') { printf("%d-%d=%d",n1,n2,n1-n2); } else if(op=='x') { printf("%dx%d=%d",n1,n2,n1*n2); } else if(op=='/') { if(n2==0) { printf("除数不能为零"); } else { printf("%d/%d=%d",n1,n2,n1/n2); } } else { printf("符号错误"); } }
本文来自博客园,作者:小珍珠在河里敲代码,转载请注明原文链接:https://www.cnblogs.com/Jansens520/p/6538188.html