实验1

1.实验任务1

在垂直方向上打印两个字符小人的c程序源代码task1_1.c,

 

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

 

 

 

运行结果截图

 

 

在水平方向上打印两个字符小人的c程序源代码task1_2.c

 

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

 

 

运行结果截图2.

 

 

2.实验任务2


源代码task2.c

 

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

 

 

运行测试结果截图

 

 

 


3.实验任务3
源代码task3.c

 

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

 

运行测试结果截图

 

 

. 回答问题
当把源代码line9去掉后,重新编译运行,结果是什么样的?

    只能回答一个问题


用你所学的知识尝试分析造成这一结果的原因。
    回车键也是一个有效字符,line9是用来储存回车键的,确保可以回答两个问题

 


4.实验任务4
源码task4.c(以注释形式标注出错行)

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

 

运行结果截图

 


5.实验任务5
源代码task5.c

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

 

 

运行测试结果截图

 

 


6.实验任务6
程序task6_2.c源代码

 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 }
 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         
11 
12     ans=pow(x,365);
13     printf("%.2f的365次方:%.2f\n",x,ans);
14     printf("\n");
15     }
16    
17     return 0;
18 }

 

运行测试截图

 

 

 

7.实验任务7
task7.c源代码

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

 

运行测试截图

 

8.实验任务8
task8.c源代码

 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) != EOF)
10     {
11         s=(a+b+c)/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     return 0;
18 }

 

 

 

运行测试截图

 

 

posted @ 2024-09-26 17:18  顾大智  阅读(11)  评论(0编辑  收藏  举报