实验1C语言输入输出和简单程序编写

发布时间 2023-10-01 21:47:18作者: 李雨诗

1.实验1

实验1.1 源代码

 

 1//打印一个字符小人
2
3 #include<stdio.h> 4 int main() 5 { 6 printf(" 0\n"); 7 printf("<H>\n"); 8 printf("I I\n"); 9 printf(" 0\n"); 10 printf("<H>\n"); 11 printf("I I\n"); 12 13 return 0; 14 }

 

实验1.1 运行结果

实验1.2源代码

 1 #include<stdio.h>
 2 int main()
 3 {
 4     printf(" 0     0\n");
 5     printf("<H>   <H>\n");
 6     printf("I I   I I\n");
 7     
 8     
 9     return 0;
10  } 

实验1.2运行结果

2.实验2

实验2源代码

 1 #include<stdio.h>
 2 
 3 int main()
 4 {
 5     float a, b, c;
 6     
 7     scanf("%f%f%f",&a,&b,&c);
 8     
 9     if(a+b>c&&a+c>b&&b+c>a)
10         printf("能构成三角形\n");
11     else
12         printf("不能构成三角形\n");
13       
14     return 0;
15 }

实验2 运行结果

3.实验3

实验3 源代码

 1 #include<stdio.h>
 2 int main()
 3 {
 4     char ans1,ans2;
 5      
 6     printf("每次课前认真预习、课后及时复习了没?(输入y或Y表示有,输入n或N表示没有):");
 7     
 8     ans1 = getchar();
 9     
10     getchar();
11     
12     printf("\n动手敲代码实践了没?(输入y或Y表示敲了,输入n或N表示没有敲):");
13     ans2 = getchar();
14     
15     if(ans1 == 'y' ||ans1 == 'Y'&&ans2 =='y'||ans2 == 'Y')
16         printf("\n罗马不是一天建成的,继续保持哦:)\n");
17     else
18         printf("\n罗马不是一天毁灭的,我们来建设吧\n");
19         
20         return 0;
21 }
22     

 

实验3 运行结果

 

(最后一个错了 不知道为什么 求解惑)

回答:后果:如果去掉line9 会发生只输入一个答案就运行

           原因:getchar()的作用是从标准输入中获取一个字符, 就可以当作一个缓冲区,使第二个问题顺利的运行

4.实验4

实验4 源代码

 1 #include<stdio.h>
 2 
 3 int main()
 4 {
 5     double x,y;
 6     char c1,c2,c3;
 7     int a1,a2,a3;
 8     //scanf("%d%d%d",a1,a2,a3);
 9     scanf("%d%d%d", &a1,&a2,&a3);
10     printf("a1 = %d, a2 = %d, a3 = %d\n", a1,a2,a3);
11     
12     scanf("%c%c%c", &c1,&c2,&c3);
13     printf("c1 = %c, c2 = %c, c3 = %c\n", c1,c2,c3);
14     //scanf("%f,%lf",&x,&y);
15     scanf("%lf,%lf", &x,&y);
16 //printf("x = %f,y = %lf\n",x,y); 17 printf("x = %lf,y = %lf\n",x,y); 18 return 0; 19 20 }

实验4 运行结果

 5.实验5

实验5 源代码

 1 #include<stdio.h>
 2 
 3 int main()
 4 {
 5     int year;
 6     
 7     long long seconds = 1000000000;
 8     long long years = seconds / (365*24*60*60);
 9     
10     printf("10亿秒约等于%d年\n",years);
11     return 0;
12 }

实验5 运行结果

6.实验6

实验6.1 源代码

 1 #include<stdio.h>
 2 #include<math.h>
 3 
 4 int main()
 5 {
 6     double x, ans;
 7     
 8     scanf("%lf",&x);
 9     ans = pow(x,365);
10     printf("%.2f的365次方:%.2f\n", x, ans);
11     
12     return 0;
13 }

实验6.1 运行结果

6.2 源代码

 1 #include<stdio.h>
 2 #include<math.h>
 3 
 4 int main()
 5 {
 6     double x, ans;
 7     
 8     while(scanf("%lf", &x) != EOF)
 9     {
10         ans = pow(x,365);
11         printf("%.2f的365次方:%.2f\n", x, ans);
12         printf("\n");
13         
14     }    
15 
16 
17     
18     return 0;
19 }

6.2 运行结果

-

7.实验7

实验7 源代码

 1 #include<stdio.h>
 2 #include<math.h>
 3 
 4 int main()
 5 {
 6     double x,ans;
 7     
 8     while(scanf("%lf",&x) != EOF)
 9     {    
10         ans = (x*9/5)+32;
11         printf("摄氏度c = %.2f时,华氏度f = %.2f\n", x, ans);
12         printf("\n");
13         
14     }
15     
16     return 0;
17 }

实验7 运行结果

8.实验8

实验8 源代码

 1 #include<stdio.h>
 2 #include<math.h>
 3 
 4 int main()
 5 {
 6     int a,b,c;
 7     double s,area;
 8     
 9     while(scanf("%d %d %d", &a, &b, &c) == 3)
10     {
11         s = (a+b+c+0.0)/2;
12         area = sqrt(s*(s-a)*(s-b)*(s-c));
13         printf("a = %d,b = %d,c = %d,area = %.3f\n",a,b,c,area);
14         printf("\n");
15         
16     }
17     
18     return 0;
19 }

实验8 运行结果