实验任务1
task1.c
#include<stdio.h> #include<stdlib.h> #include<time.h> #define N 5 int main() { int number; int i; srand(time(0)); for (i = 0; i < N; ++i) { number = rand() % 500 + 1; printf("20228329%04d\n", number); } return 0; }
问题1:表示number取1~500中的一个随机数
问题2:抽签。从学号是前500的学生中抽5名
实验任务2
#include<stdio.h> #include<stdlib.h> #include<time.h> #define N 3 int main() { printf("猜猜2022年11月哪一天会是你的lucky day\n"); int i, number,a=1; srand(time(0)); number = rand() % 30 + 1; printf("开始喽,你有三次机会才,猜吧(1~30): "); for (a = 1; a <= N; a++) { scanf_s("%d", &i); if (i <= 0 || i >= 31) { printf("数据输入错误,请重新输入:"); } if (i < number&&i>0) { printf("你猜的日期早了,你的lucky day还没到呢\n"); printf("再猜(1~30): "); } else if(i>number&&i<31) { printf("你猜的日期晚了,你的lucky day已经过了\n"); printf("再猜(1~30): "); } else if(i==number) { printf("哇,猜中了:-)\n"); break; } } if(a>N) printf("次数用完了,lucky day是:%d\n", number); return 0; }
task2.c
实验任务3
#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> int main() { char ans; while (scanf("%c", &ans )!= EOF) { getchar(); switch (ans) { case 'r':printf("stop!\n"); break; case'g':printf("go go go\n"); break; case'y':printf("wait aminute\n"); break; default:printf("something must be wrong\n"); break; } } return 0; }
task3.c
实验任务四
#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> int main() { int n, a, i; while (scanf("%d%d", &n, &a) != EOF) { double s = 0.0, m = 0.0; for (i = 1; i <= n; i++) { m = m * 10 + a; s = s + i / m; } printf("n=%d,a=%d,s=%lf\n", n, a, s); } return 0;
实验任务5
#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> int main() { int i, line,m,j; scanf("%d", &line); for (i = 1; i <= line; i++) { if (line > 9 || line < 1) { printf("数据输入错误,请重新输入\n"); break; } for (j = 1; j <= i; j++) { m = j * i; printf("%d*%d=%d", j, i, m); printf("\t"); } printf("\n"); } system("pause"); return 0; }
task5.c
实验任务6
1. 当输入为n时
第i行,需要打印2n+1-2i个小人
第i行,需要打印i-1个空白s
#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> int main() { int i, n,j,m,h; scanf("%d", &n); m = 2 * n + 1; for (i = 1; i <= n; i++) { m = m - 2; for (h = 1; h < i; h++) { printf("\t"); } for (j = 1; j <= m; j++) { printf(" O \t"); } printf("\n"); for (h = 1; h < i; h++) printf("\t"); for (j = 1; j <= m; j++) { printf("<H>\t"); } printf("\n"); for (h = 1; h < i; h++) printf("\t"); for (j = 1; j <= m; j++) { printf("I I\t"); } printf("\n"); } return 0; }
task6.c
实验总结
1.对循环结构while语句了解更深刻 。例如实验任务4,对于每个输入都应当重新从0。
2.要学会从运行结果中找出自己的错误点。
3.不足:对srand()函数不知道原理。
标签:include,int,number,实验,printf,main,define From: https://www.cnblogs.com/tyl0131/p/16804898.html