实验二

实验一:

源代码:

 1 #include<stdio.h>
 2 #include<stdlib.h>
 3 #include<time.h>
 4 #define N 5
 5 #define N1 397
 6 #define N2 476
 7 #define N3 21
 8 int main(){
 9     int cnt;
10     int random_major,random_no;
11     srand(time(NULL));
12     cnt=0;
13     while(cnt<N){
14         random_major=rand()%2;
15         if(random_major){
16             random_no=rand()%(N2-N1+1)+N1;
17             printf("20248329%04d\n",random_no);
18         }
19         else{
20             random_no=rand()%N3+1;
21             printf("20248395%04d\n",random_no);
22         }
23         cnt++;
24     }
25     return 0;
26 }

运行结果:

问题:line21代码功能为生成一个随机数,范围在397----476

line25再次随机生成一个数,范围在1---21

功能是随机生成数字并且组成一个学号并打印出来

实验二:

源代码:

 1 #include<stdio.h>
 2 #include<math.h>
 3 int main(){
 4     double a, b, c;
 5     double delta,p1,p2;
 6     while(scanf("%lf%lf%lf",&a,&b,&c)!=EOF){
 7         if(a==0){printf("a=0,invalid,input\n");
 8         continue;
 9         }
10         delta=b*b-4*a*c;
11         p1=-b/2/a;
12         p2=sqrt(fabs(delta))/2/a;
13         if(delta==0)
14         printf("x1=x2=%.2g\n",p1);
15         else if(delta>0)
16         printf("x1=%.2g,x2=%.2g\n",p1+p2,p1-p2);
17         else{
18             printf("x1=%.2g+%.2gi.",p1,p2);
19             printf("x1=%.2g-%,2gi\n",p1,p2);
20         }
21     }
22     return 0;
23 }

运行结果:

                   

实验三:

源代码:

 1 #include<stdio.h>
 2 int main(){
 3     char cnt;
 4     while(1){
 5     (scanf(" %c",&cnt));
 6     if(cnt=='r'){
 7         printf("stop!\n");
 8     }else if(cnt=='y'){
 9         printf("wait a minute\n");
10     }else if(cnt=='g'){
11         printf("go go go\n");
12     }else{
13         printf("something must be wrong...\n");
14     } 
15     while(getchar()!='\n');
16     }
17     return 0;
18 }

 

运行结果:

实验四:

源代码:

 1 #include<stdio.h>
 2 int main()
 3 {
 4     printf("输入今日的开销,直到输入-1为止:\n");
 5     double a,b=0.0,c=100000000000.0,d=0.0;
 6     int input=1;
 7     while(1){
 8         scanf("%lf",&a);
 9         if(a==-1){
10         break;    
11         }
12         if (input){
13             b=c=a;
14             input=0;
15         }else
16             if(a>b)
17             b=a;
18             if(a<c)
19             c=a;
20     d+=a;
21     }
22     printf("今日最高的一笔花销为:%.1lf\n",b);
23     printf("今日的最高一笔花销为:%.1lf\n",c);
24     printf("今日累计消费:%.lf\n",d);
25     return 0;
26 }

 

运行结果;

 实验五

源代码:

 1 #include <stdio.h>
 2 #include<math.h>
 3 int main(){
 4     double a,b,c;
 5     while(1){
 6         scanf("%lf%lf%lf",&a,&b,&c);
 7     if (a+b>c&&a+c>b&&b+c>a){
 8         if(a==b&&b==c){
 9             printf("这是一个等边三角形\n");
10         }else if(a==b||a==c||b==c){
11             printf("这是一个等腰三角形\n");
12         }else if(a*a+b*b==c*c||a*a+c*c==b*b||b*b+c*c==a*a)
13         printf("这是一个直角三角形\n");
14         else
15             printf("这是一个普通三角形\n");
16     } else
17         printf("这不是一个三角形\n");
18     }
19     return 0;
20 }

 

 

运算结果:

 

实验六

源代码:

 1 #include<stdio.h>
 2 int main(){
 3     int a,b,i=1;
 4     srand(time(NULL));
 5     a=rand()%30+1;
 6     printf("猜猜2024年11月哪一天会是你的lucky day\n");
 7     printf("开始喽,你有三次机会,猜吧(1~30):");
 8     while(i<=3){
 9         scanf("%d",&b);
10         if(b==a){
11             printf("哇,猜中了:)");
12             break;
13         }
14         else if(b<a)
15         printf("你猜的日期早了,你的lucky day还没到呢\n");
16         else
17         printf("你猜的日期晚了,你的lucky day在前面呢\n");
18         i++;
19         if(i<=3)
20         printf("再猜(1~30):");
21         else
22         printf("你的次数用光啦,偷偷告诉你,11月你的lucky day是%d号\n",a); 
23     }
24     return 0;
25 }

 

运算结果:

 

posted on 2024-10-11 16:12  安宁的空白  阅读(10)  评论(0编辑  收藏  举报