三月十六日第二次实验
三月十六日第二次实验
实验一:
#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代码表示“取586~701中随机一个数字”。
问题回答:程序的功能是:随机取“202283300586~202283300701中随机5个数组”。
实验二:
#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();//消除回车 scanf("%c%c%c",&c1,&c2,&c3); printf("c1 = %c, c2 = %c, c3 = %c\n",c1, c2, c3); getchar();//消除回车 scanf("%lf,%lf", &x, &y);//“x”为double类型,用lf输入
printf("x = %lf, y = %lf\n", x, y);//“x”为double类型,用lf输出 return 0; }
实验图片:
实验三:
3.2
#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; }
实验图片:
3.3:
#include<stdio.h> #include<math.h> int main() { double c, f; while(scanf("%lf", &c) != EOF) { f = c*9/5+32; printf("摄氏度c = %.2f时,华氏度f = %.2f\n", c, f); printf("\n"); } return 0; }
实验图片:
实验四:
#include<stdio.h> int main() { int ch; printf("please input a symble(r,g,y):\n"); while((ch=getchar())!=EOF){ getchar(); switch(ch) { case 'r': printf("stop!\n");break; case 'g': printf("go go go\n");break; case 'y': printf("wait a mintue\n");break; default: printf("something must be wrong...\n");break; } } return 0; }
实验图片:
实验五:
#include<stdio.h> #include<stdlib.h> #include<time.h> #define day1 1 #define day30 30 int main() { int day, Day, delta, D, i, True; srand(time(0)); day = rand() % (day30 - day1 +1) + day1; printf("猜猜2023年4月哪一天会是你的lucky day\n\n"); printf("%d",day); printf("开始喽,你有三次机会,猜吧(1~30):"); for(i=0;i<3;i++) { scanf("%d",&Day); printf("\n"); delta = Day - day; if(delta>0) {printf("你猜的日期晚了,你的lucky day已经过了\n\n"); if(i==2) break; else printf("再猜(1~30):"); True = 0; continue;} else if(delta<0) {printf("你猜的日期早了,你的lucky day还没到呢\n\n"); if(i==2) break; else printf("再猜(1~30):"); True = 0; continue;} else if(delta=0) break; printf("哇,猜中了:-)\n"); True = 1; break; } printf("\n\n"); if(i == 2 && True == 0) printf("次数用完了,偷偷告诉你:4月,你的lucky day是%d号",day); else if(True == 1) printf(""); else printf(""); return 0; }
实验图片:
实验六:
#include<stdio.h> int main() { int i, j, max; j = 1; for(max=1;max<10;max++) { i = 1; while(i<=max) { printf("%dx%d = %2d", i, j, i*j); printf(" "); i++; } printf("\n"); j++; } return 0; }
实验图片:
实验七:
#include<stdio.h> int main() { int n;//定义:总行数 int N;//保存总打印行数 int max;//定义:此行总打印小人个数 int i;//循环变量:此行输出小人个数 int t;//定义:剩余打印行数 int T;//定义:下一行打印空格个数(在母循环内);定义:此行打印空格个数(在子循环内) int j;//循环变量:打印空格 printf("input n:"); scanf("%d",&n); t=n;//定义“剩余打印行数” N=n;//保存n值 for(n;n>0;n--) { max = 2*n - 1;//定义“此行打印小人个数” if(t==N)//第一行打印 { for(i=0;i<max;i++) printf(" O \t"); printf("\n");//打印第一行“头” for(i=0;i<max;i++) printf("<H>\t"); printf("\n");//打印第一行“身体” for(i=0;i<max;i++) printf("I I\t"); printf("\n");//打印第一行“腿” } else//非第一行打印 { for(j=0;j<T;j++) printf(" \t");//打印前置空格 for(i=0;i<max;i++) printf(" O \t");//打印此行“头” for(j=0;j<T;j++) printf(" \t");//打印后置空格 printf("\n"); for(j=0;j<T;j++) printf("\t");//打印前置空格 for(i=0;i<max;i++) printf("<H>\t");//打印此行“身体” for(j=0;j<T;j++) printf("\t");//打印后置空格 printf("\n"); for(j=0;j<T;j++) printf("\t");//打印前置空格 for(i=0;i<max;i++) printf("I I\t");//打印此行“脚” for(j=0;j<T;j++) printf("\t");//打印后置空格 printf("\n"); } t -= 1;//剩余打印行数 T = N - t;//定义:下一行需要打印空格的个数 printf("\n"); } return 0; }
实验图片: