Part1: 验证性内容
从键盘上输入3个数,让它们代表3条线段的长度,编写一个c程序判断这3条线段组成的三角形属于什么类型(一般三角形、等腰三角形、等边三角形或不构成三角形)。#includeint main() {double a,b,c;scanf("%lf %lf %lf", &a, &b, &c);if(a+b>c && a+c>b && b+c>a) {if(a==b && a==c)printf("构成等边三角形\n");else if(a==b || a==c || b==c)printf("构成等腰三角形\n");elseprintf("构成一般三角形\n");}elseprintf("不能构成三角形\n");return 0;}
while改写
#includeint main(){double a,b ,c;while(scanf("%lf %lf %lf",&a,&b,&c)){if(a+b>c && a+c>b && b+c>a){ if(a==b && a==c) printf("构成等边三角形\n"); else if(a==b || a==c || b==c) printf("构成等腰三角形\n"); else printf("构成一般三角形\n"); }elseprintf("不能构成三角形\n");printf("\n输入三角形三边:\n");}return 0;}
用scanf()函数输入一个百分制成绩(整型量),要求输出成绩等级A,B,C,D,E。
#includeint main() {int score; char grade; while(1) {printf("输入学生成绩: ");if(scanf("%d",&score) == 0)break;if(score<0 || score > 100) {printf("输入成绩有误!\n\n");continue; }else if(score>=90 && score<=100)grade = 'A';else if(score>=80 && score<=89)grade = 'B';else if(score>=70 && score<=79)grade = 'C';else if(score>=60 && score <=69)grade = 'D';elsegrade = 'E';printf("等级为: %c\n\n", grade);}return 0;}
switch改写
#includeint main(){ int score; char grade; while(1){ printf("输入学生成绩:"); if(scanf("%d",&score)==0) break; if(score<0 || score>100){ printf("输入成绩有误!\n\n"); continue; } switch(score/10){ case 10: case 9: grade='A';break; case 8: grade='B';break; case 7: grade='C';break; case 6: grade='D';break; default: grade='E'; } printf("等级为:%c\n\n",grade); } return 0;}
break和continue
break:导致程序终止包含它的循环,并进行程序的下一阶段(整个循环后面的语句),即,不是跳到下一个循环周期而是退出循环。如果break语句包含在嵌套循环里,它只跳出最里面的
continue:循环语句里有此语句时,程序运行到此语句时,不在执行循环体里continue后面的语句而是跳到下一个循环入口处执行下一个循环。
内层循环中如出现continue,则继续执行下一次循环,不影响外层循环。break跳出循环,不再执行循环内的任何语句,不影响外层循环。
Part 2.补足程序,使得程序运行
#includeint main(){ int max,min,n,number; n=1; printf("请输入第%d个数字:",n); scanf("%d",&number); max=number; min=number; for(n=2;n<=5;++n) { printf("请输入第%d个数字:",n); scanf("%d",&number); if(number>max) max=number; if(number
Part3:编程练习
编程输出101~200之间所有素数,并输出这一区间内素数个数#include#include int main(){ int m,n,i; for(n=101;n<=200;++n) { m=sqrt(n); for(i=2;i<=m;++i) if(n%i==0)break; if(i>m) printf("%d\t",n); } return 0;}
星星
#includeint main() { int a,b; for(a=0;a<=4;a++) { for(b=4-a;b>=0;b--) printf(" "); for(b=1;b<=a*2+1;b++) printf("*"); printf("\n"); } return 0; }