实验2_C语言分支与循环基础应用编程
实验任务1
1 #include<stdio.h> 2 #include<stdlib.h> 3 #include<time.h> 4 5 #define N 5 6 7 int main() 8 { 9 int number; 10 int i; 11 12 srand(time(0)); 13 14 for(i=0;i<N;++i){ 15 number = rand()%65 +1; 16 printf("20238331%04d\n",number); 17 } 18 system("pause"); 19 return 0; 20 }
第十五行代码的作用为生成一个1到65的随机数;
这个程序的功能是随机生成5个班级学生对应的学号;
实验任务2
1 #include<stdio.h> 2 #include<stdlib.h> 3 4 int main() 5 { 6 char input; 7 8 while(scanf("%c",&input)!=EOF) 9 { 10 switch(input) 11 { 12 case'r':printf("stop!\n");break; 13 case'g':printf("go go go\n");break; 14 case'y':printf("wait a minute\n");break; 15 default:printf("something must be wrong...\n");break; 16 } 17 getchar(); 18 } 19 20 system("pause"); 21 return 0; 22 }
实验任务3
1 #include <stdio.h> 2 #include <stdlib.h> 3 #include <time.h> 4 5 int main() 6 { 7 int l, m, n = 0; 8 srand(time(0)); 9 l = rand() % 31 + 1; 10 printf("猜猜2024年5月哪一天会是你的lucky day\n\n"); 11 printf("开始喽,你有三次机会,猜吧(1~31):"); 12 13 while (n < 3) 14 { 15 scanf("%d", &m); 16 printf("\n"); 17 18 if (m == l) 19 { 20 printf("哇,猜中了:-)\n"); 21 return 0; 22 } 23 else if (m < l) 24 { 25 printf("你猜的日期早了,你的lucky day还没到呢\n"); 26 } 27 else 28 { 29 printf("你猜的日期晚了,你的lucky day在前面哦\n"); 30 } 31 32 if (n < 2) 33 { 34 printf("\n再猜(1~31):"); 35 } 36 37 n++; 38 } 39 40 if (n == 3) 41 { 42 printf("\n\n次数用完了,偷偷告诉你,5月你的lucky day是%d号\n",l); 43 } 44 45 system("pause"); 46 return 0; 47 }
实验任务4
1 #include <stdio.h> 2 #include<stdlib.h> 3 4 int main() { 5 int n, a, i, j, m=0; 6 double s = 0.0; 7 8 while (scanf("%d%d", &n, &a) != EOF) { 9 s = 0.0; 10 for (i = 1; i <= n; i++) { 11 m=0; 12 for (j = 0; j < i; j++) { 13 m = m * 10 + 1; 14 } 15 s += (double)i / (a * m); 16 } 17 18 printf("n = %d, a = %d, s = %lf\n\n", n, a, s); 19 } 20 system("pause"); 21 return 0; 22 }
实验任务5
1 #include <stdio.h> 2 #include<stdlib.h> 3 4 int main() { 5 int i, j; 6 7 for (i = 1; i <= 9; i++) 8 { 9 for (j = 1; j <= i; j++) 10 { 11 printf("%d×%d =%2d\t", j, i, i * j); 12 } 13 printf("\n"); 14 } 15 system("pause"); 16 return 0; 17 }
实验任务6
1 #include <stdio.h> 2 #include<stdlib.h> 3 int main() { 4 int n,i,k,j; 5 printf("input n:"); 6 scanf("%d", &n); 7 8 for (i = 0; i < n; i++) 9 { 10 for (j = 0; j < i; j++) 11 { 12 printf("\t"); 13 } 14 for (k = 2 * (n - i) - 1; k > 0; k--) 15 { 16 printf(" O \t"); 17 } 18 printf("\n"); 19 20 for (j = 0; j < i; j++) 21 { 22 printf("\t"); 23 } 24 for (k = 2 * (n - i) - 1; k > 0; k--) 25 { 26 printf("<H>\t"); 27 } 28 printf("\n"); 29 30 for (j = 0; j < i; j++) 31 { 32 printf("\t"); 33 } 34 for (k = 2 * (n - i) - 1; k > 0; k--) 35 { 36 printf("I I\t"); 37 } 38 printf("\n"); 39 } 40 system("pause"); 41 return 0; 42 }
实验总结
- 和之前做百科园一样容易忽视数据精度(反思);
- 嵌套循环及水平制表使用不熟练,打印小人花了好长时间对齐
posted on 2024-04-08 21:49 SilverBullet4869 阅读(28) 评论(0) 编辑 收藏 举报