c实验2
实验任务1
#include<stdio.h> #include<stdlib.h> #include<time.h> #define N 5 #define R1 586 #define R2 701 int main() { int number; int i; srand(time(0)); for(i=0;i<N;++i) { number=rand()%(R2-R1+1)+R1; printf("20228330%04d\n",number); } return 0; }
line18代码实现的功能是生成[R1,R2]之间的随机数。这个程序的功能是随机生成5个后三位在[586,701]的2022级大气科学类的人的学号。
实验任务2 #include<stdio.h> int main() { double x,y; char c1,c2,c3; int a1,a2,a3; scanf("%d%d%d",&a1,&a2,&a3);/*缺少&*/ printf("a1=%d,a2=%d,a3=%d\n",a1,a2,a3); getchar();/*缺少getchar();*/ scanf("%c%c%c",&c1,&c2,&c3); printf("c1=%c,c2=%c,c3=%c\n",c1,c2,c3); scanf("%lf %lf",&x,&y);/*第一个f前缺少l */ printf("x=%lf,y=%lf\n",x,y);/*第一个f前缺少l */ return 0; }
实验任务3 #include<stdio.h> #include<math.h> int main() { double x,ans; while(scanf("%lf",&x)!=EOF) { ans=pow(x,365); printf("%.2f的365次方:%.2f\n",x,ans); printf("\n"); } return 0; }
#include<stdio.h> #include<math.h> int main() { double c,f; while(scanf("%lf",&c)!=EOF) { f=1.8*c+32; printf("摄氏度c=%.2f时,华氏度f=%.2f\n",c,f); printf("\n"); } return 0; }
实验任务4 #include<stdio.h> #include<stdlib.h> int main() { char color; while(scanf("%c",&color)!=EOF) { if(color=='r') { printf("stop!\n"); getchar(); } else if(color=='g') {printf("go go go\n"); getchar(); } else if(color=='y') {printf("wait a minute\n"); getchar(); } else {printf("something must be wrong…\n"); getchar(); } } return 0; }
实验任务5 #include<stdio.h> #include<stdlib.h> #include<time.h> int main() { int lu,inp,i; srand(time(0)); lu=rand()%31; printf("猜猜2023年4月哪一天会是你的lucky day\n"); printf("开始喽,你有三次机会,猜吧(1~30):"); for(i=1;i<=3;i++) { scanf("%d",&inp); if(inp<lu) { printf("你猜的日期早了,你的lucky day还没到呢\n"); getchar(); if(i<=2) printf("再猜(1~30):"); else printf("次数用完啦。偷偷告诉你:4月,你的lucky day是%d号\n",lu); } else if(inp>lu) { printf("你猜的日期晚了,你的lucky day已经过啦\n"); getchar(); if(i<=2) printf("再猜(1~30):"); else printf("次数用完啦。偷偷告诉你:4月,你的lucky day是%d号\n",lu); } else { printf("哇,猜中了:-)"); getchar(); break; } } system("pause"); return 0; }
实验任务6 #include<stdio.h> #include<stdlib.h> int main() { int i,j; for(i=1;i<=9;i++) { for(j=1;j<=i;j++) { if(i<=4&&i*j<10&&j>1) printf("%d×%d= %d ",j,i,i*j); else printf("%d×%d=%d ",j,i,i*j); } printf("\n"); } system("pause"); return 0; }
实验任务7第i行需要打印(2n-2i+1)个小人,(i-1)个空小人,即(i-1)个\t.
#include<stdio.h> #include<stdlib.h> int main() { printf("input n:"); int i,j,k,l,m,n,p,q; scanf("%d",&n); for(i=1;i<=n;i++) { for(j=1;j<=i-1;j++) { printf(" \t"); } for(k=1;k<=2*n-2*i+1;k++) { printf(" "); printf("0\t"); } printf("\n"); for(l=1;l<=i-1;l++) { printf(" \t"); } for(m=1;m<=2*n-2*i+1;m++) { printf("<H>\t"); } printf("\n"); for(p=1;p<=i-1;p++) { printf(" \t"); } for(q=1;q<=2*n-2*i+1;q++) { printf("I I\t"); } printf("\n"); printf("\n"); } system("pause"); return 0; }
本次实验中我有一些意想不到的发现,比如c语言中上一个小黑窗没关竟然会阻止程序运行。以后为了便于使用万能的搜索引擎,我应该在图书馆网络好的地方完成实践,如果网络不好就立即换地方,不要犹豫。