实验2
task.1
代码
#include<stdio.h> #include<stdlib.h> #include<time.h> #define N 5 #define N1 397 #define N2 476 #define N3 21 int main(){ int cnt; int random_major,random_no; srand(time(NULL)); cnt=0; while(cnt<N){ random_major=rand()%2; if(random_major){ random_no=rand()%(N2-N1+1)+N1; printf("20248329%04d\n",random_no); } else{ random_no=rand()%N3+1; printf("20248395%04d\n",random_no); } cnt++; } return 0; }
图片
问题1:将random_no取397~476
问题2:将random_no取0~21
问题3:在学号83290397~83290476与83290000~83290021抽取5位
task.2
代码
#include<stdio.h> #include<math.h> int main(){ double a,b,c; double delta,p1,p2; while(scanf("%lf%lf%lf",&a,&b,&c)!=EOF){ if(a==0){ printf("a=0,invalid input\n"); continue; } delta=b*b-4*a*c; p1=-b/a/2; p2=sqrt(fabs(delta))/a/2; if(delta==0){ printf("x1=x2=%.2g\n",p1); } else if(delta>0){ printf("x1=%.2g,x2=%.2g\n",p1+p2,p1-p2); } else{ printf("x1=%.2g+%.2gi",p1,p2); printf("x1=%.2g-%.2gi",p1,p2); } } return 0; }
图片
task.3
代码
#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> int main() { char x; while (scanf("%c", &x) != EOF) { if (x == 'r') printf("stop!\n"); else if (x == 'g') printf("go go go\n"); else if (x == 'y') printf("wait a minute\n"); else printf("something must be wrong...\n"); getchar(); } return 0; }
图片
task.4
代码
#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> int main() { printf("输入今日开销,直到输入-1终止:\n"); double x,max,min,s; scanf("%lf", &x); s = 0; max = x; min = x; while (x!=-1) { s = s + x; if (max < x) max = x; if (min > x) min = x; scanf("%lf", &x); } printf("今日累计消费总额:%.1f\n今日最高一笔开销:%.1f\n今日最低一笔开销:%.1f\n", s, max, min); return 0; }
图片
task.5
代码
#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> int main() { int a, b, c; while (scanf("%d%d%d", &a, &b, &c) != EOF) { if (a + b > c && a - b < c) { if (a == b && b == c) printf("等边三角形\n"); else if (a == b || b == c || a == c) printf("等腰三角形\n"); else if (a * a + b * b == c * c || a * a + c * c == b * b || b * b + c * c == a * a) printf("直角三角形\n"); else printf("普通三角形\n"); } else printf("不能构成三角形\n"); } return 0; }
图片
task.6
代码
#include<stdio.h> #include<stdlib.h> #include<time.h> int main() { int x, s, n=0; printf("猜猜2024年11月那一天会是你的lucky day\n开始喽,你有三次机会,猜吧(1~30):"); srand(time(NULL)); x = rand() % 30 + 1; while (n <2) { scanf("%d", &s); n++; if (s > x) printf("\n你猜的日期晚了,你的lucky day在前面哦\n再猜(1~30):"); else if (s < x) printf("\n你猜的日期早了,你的lucky day还没到呢\n再猜(1~30):"); else { printf("哇,猜中了:)"); continue; } } scanf("%d", &s); if (s > x) printf("\n你猜的日期晚了,你的lucky day在前面哦\n"); else if (s < x) printf("\n你猜的日期早了,你的lucky day还没到呢\n"); else printf("哇,猜中了:)"); printf("\n次数用光啦。偷偷告诉你,11月你的lucky day是%d号", x); return 0; }
图片