练习1
#include <stdio.h> #include <stdlib.h> #include <time.h> #define N 5 #define N1 374 #define N2 465 int main() { int number; int i; srand( time(0) ); // 以当前系统时间作为随机种子 for(i = 0; i < N; ++i) { number = rand()%(N2 - N1 + 1) + N1; printf("202383290376%04d\n", number); } return 0; }
观察结果生成数字为202383290376XXX格式,且随机
问题一:line17的作用是随机生成[374,464]内的整数。
问题二:程序的功能是随机生成202383290376374到202383290376464之间的整数。
练习2
#define _CRT_SECURE_NO_WARNINGS 1 #include<stdlib.h> #include<stdio.h> int main() {char sign,blank; while(scanf("%c",&sign)!=EOF) {blank=getchar(); switch (sign) { case 'y':printf("wait a minute\n");break; case 'r':printf("stop!\n");break; case 'g':printf("go go go\n");break; default:printf("something must be wrong\n");break; } } system("pause"); return 0; }
练习3
源码
#define _CRT_SECURE_NO_WARNINGS 1 #include<stdlib.h> #include<stdio.h> #include<time.h> int main() {int date,i,input; srand(time(0)); date=rand()%31; printf("猜猜2023年11月哪一天会是你的lucky day\n开始喽,你有三次机会,猜吧(1~30):");; for(i=1;scanf("%d",&input)!=EOF;) { if(input>date){printf("你猜的日期晚了,你的lucky day已经过啦\n");i++;} if(input<date){printf("你猜的日期早了,你的lucky day还没到呢\n");i++;} if(input==date){printf("你猜对了,你的lucky day就是11月%d号\n",date);break;} if(i>=4){printf("次数用完啦。偷偷告诉你:11月,你的lucky day是%d号\n",date);} } system("pause"); return 0; }
结果
练习4
#define _CRT_SECURE_NO_WARNINGS 1 #include<stdlib.h> #include<stdio.h> long long tool(int n,int a) {int i; int result=0; for(i=1;i<=n;i++) { result=result*10+a; } return result; } int main() { int n,i,a; double result=0; while(scanf("%d %d",&n,&a)!=EOF) { result=0; for(i=1;i<=n;i++) {/*printf("%d\n",tool(i,a));*/ result=result+1.0*i/tool(i,a); } printf("n=%d,a=%d,s=%lf\n",n,a,result);} system("pause"); return 0; }
练习5
#define _CRT_SECURE_NO_WARNINGS 1 #include<stdlib.h> #include<stdio.h> int main() { int a=1,b=1,c; for(a=1;a<=9;a++) {for(b=1;b<=a;b++) { c=a*b; printf("%d*%d=%d\t",a,b,c); } printf("\n"); } system("pause"); return 0; }
练习6
#define _CRT_SECURE_NO_WARNINGS 1 #include<stdlib.h> #include<stdio.h> int main() {int n,a,b,c,d,xd,e,xe,i;//a为头数,b为身子数,c为腿数,d是最大列数,xd是每行列数,e是空白数,xe是空白的循环数,i是行数 while(scanf("%d",&n)!=EOF) {d=2*n-1; xd=d; for(i=1;i<=n;i++) {e=(d-xd)/2; for(xe=1;xe<=e;xe++) {printf(" ");} for(a=1;a<=xd;a++) {printf(" O ");} printf("\n"); for(xe=1;xe<=e;xe++) {printf(" ");} for(b=1;b<=xd;b++) {printf("<H> ");} printf("\n"); for(xe=1;xe<=e;xe++) {printf(" ");} for(c=1;c<=xd;c++) {printf("I I ");} printf("\n"); for(xe=1;xe<=e;xe++) {printf(" ");} printf("\n"); xd=xd-2; } } system("pause"); return 0; }
练习7