实验任务1
1_1
1 #include<stdio.h> 2 int main() 3 { 4 printf(" O\n"); 5 printf("<H>\n"); 6 printf("I I\n"); 7 8 printf(" O\n"); 9 printf("<H>\n"); 10 printf("I I\n"); 11 12 return 0; 13 }
1_2
1 #include<stdio.h> 2 int main() 3 { 4 printf(" O O\n"); 5 printf("<H> <H>\n"); 6 printf("I I I I\n"); 7 8 return 0; 9 }
实验任务2
1 #include<stdio.h> 2 int main() 3 { 4 float a,,b,c; 5 while(scanf("%f%f%f",&a,&b,&c) != EOF) 6 { 7 if(a+b>c && a+c>b && b+c>a) 8 printf("能构成三角形\n"); 9 else 10 printf("不能构成三角形\n"); 11 } 12 13 return 0; 14 }
实验任务3
1 #include <stdio.h> 2 int main() 3 { 4 char ans1, ans2; 5 printf("每次课前认真预习、课后及时复习了没? (输入y或Y表示有,输入n或N表示没有) :"); 6 ans1 = getchar(); 7 getchar(); 8 printf("\n动手敲代码实践了没? (输入y或Y表示敲了,输入n或N表示木有敲) : "); 9 ans2 = getchar(); 10 if ((ans1=='y' || ans1=='Y')&&(ans2=='y' || ans2=='Y')) 11 printf("\n罗马不是一天建成的, 继续保持哦:)\n"); 12 else 13 printf("\n罗马不是一天毁灭的, 我们来建设吧\n"); 14 return 0; 15 }
如果去掉第七行代码程序会在第二次敲击y或n时直接结束,getchar()会在用户输入字符后结束执行框,因此需要第七行代码用做缓冲。
实验任务4
1 #include<stdio.h> 2 #include<stdlib.h> 3 4 int main(){ 5 double x,y; 6 char c1,c2,c3; 7 int a1,a2,a3; 8 9 //scanf("%d%d%d",a1,a2,a3); 10 scanf("%d%d%d",&a1,&a2,&a3); 11 printf("a1=%d,a2=%d,a3=%d\n",a1,a2,a3); 12 13 scanf("%c%c%c",&c1,&c2,&c3); 14 printf("c1=%c,c2=%c,c3=%c\n",c1,c2,c3); 15 16 // scanf("%f,%lf",&x,&y); 17 scanf("%lf%lf",&x,&y); 18 printf("x=%f,y=%lf\n",x,y); 19 20 system("pause"); 21 return 0; 22 }
实验任务5
1 #include<stdio.h> 2 #include<stdlib.h> 3 4 5 int main(){ 6 int year; 7 year=1e9/(60*60*24*365)+0.5; 8 9 printf("10亿秒约等于%d年\n",year); 10 11 system("pause"); 12 return 0; 13 }
实验任务6
1 #include<stdio.h> 2 #include<stdlib.h> 3 #include<math.h> 4 5 6 int main(){ 7 double x,ans; 8 9 while(scanf("%lf",&x)!=EOF) 10 { 11 ans = pow(x,365); 12 printf("%.2f的365次方: %.2f\n",x,ans); 13 printf("\n"); 14 } 15 16 system("pause"); 17 return 0; 18 }
实验任务7
1 #include<stdio.h> 2 #include<stdlib.h> 3 #include<math.h> 4 5 6 int main(){ 7 double C,F; 8 9 while(scanf("%lf",&C)!=EOF) 10 { 11 F = 9.0/5*C+32; 12 printf("摄氏度C=%.2f时,华氏度F=%.2f\n",C,F); 13 printf("\n"); 14 } 15 16 system("pause"); 17 return 0; 18 }
实验任务8
1 #include<stdio.h> 2 #include<stdlib.h> 3 #include<math.h> 4 5 6 int main(){ 7 double area,s; 8 int a,b,c; 9 10 while(scanf("%d%d%d",&a,&b,&c)!=EOF) 11 { 12 s = (a+b+c)/2.0; 13 area = s*(s-a)*(s-b)*(s-c); 14 area = sqrt(area); 15 printf("a = %d,b = %d,c = %d,area = %.3f",a,b,c,area); 16 printf("\n"); 17 } 18 19 system("pause"); 20 return 0; 21 }
实验总结
- getchar()在用户输入字符后小黑窗会关闭;
- scanf和printf在使用时要注意格式,务必小心以防精度丢失;
- scanf在键盘输入时,对于char数据类型空格也会被认为时字符识别。