实验2
实验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:在N1到N2间生成一个随机数赋值给random_no
问题2:在1到N3间生成一个随机数赋值给random_no
问题3:生成班级里一个学生的学号
任务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/2/a; p2 = sqrt(fabs(delta))/2/a; 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("x2 = %.2g - %.2gi\n",p1,p2); } } return 0; }
任务3:
#include <stdio.h> int main() { char ch; while(scanf("%c",&ch) != EOF) { getchar(); if(ch == 'r') printf("stop!\n"); else if(ch == 'g') printf("go go go\n"); else if(ch == 'y') printf("wait a minute\n"); else printf("something must be wrong...\n"); } }
任务4:
#include <stdio.h> int main() { double expense,total = 0.0,maxExpense = 0.0,minExpense = 20000.0; printf("输入今日开销,直到输入-1终止:\n"); while(1){ scanf("%lf",&expense); if(expense == -1){ break; } if(expense > maxExpense){ maxExpense = expense; } if(expense < minExpense){ minExpense = expense; } total +=expense; } printf("今日累计消费总额:%.1lf\n",total); printf("今日最高一笔开销:%.1lf\n",maxExpense); printf("今日最低一笔开销:%.1lf\n",minExpense); return 0; }
任务5:
#include <stdio.h> int main() { int a,b,c; while(scanf("%d%d%d",&a,&b,&c) != EOF) { if((a + b <= c)||(a + c <=b)||(b + c <=a)) 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 if(a==b&&b==c) printf("等边三角形\n"); else if(((a==b)&&(b!=c))||((a==c)&&(c!=b))||((b==c)&&(c!=a))) printf("等腰三角形\n"); else printf("普通三角形\n"); } }
任务6:
#include <stdio.h> #include <stdlib.h> #include <time.h> int main(){ int day,luckyday,times = 3; srand(time(NULL)); luckyday = rand() % 30 + 1; printf("猜猜2024年11月哪一天会是你的 lucky day \n"); printf("开始喽,你有三次机会,猜吧(1~30):"); while(times>0){ scanf("%d",&day) ; if(day==luckyday){ printf("哇,猜中了:)\n"); return 0; } else if(day<luckyday){ printf("你猜的日期早了,你的 lucky day 还没到呢\n"); printf("再猜(1~30):"); } else{ printf("你猜的日子晚了,你的 lucky day 还在前面哦\n"); printf("再猜(1~30):"); } times --; } if(times==0){ printf("次数用光啦。偷偷告诉你,11月你的lucky day是%d号",luckyday); } }