实验2
task1
问题1:
生成1到100以内的整数
问题2:
使number生成4位不够用0补充
问题3:
随机生成一个学号
task2
问题1:
total如果去掉,那么下一次循环total就是上一次循环的结果
问题2:break直接结束循环,continue是跳过本次循环继续下一次循环
问题3:
没必要,错误输入会再前面的代码中提示
task3

#include <stdio.h> int main() { char c; while((c=getchar())!=EOF) { getchar(); switch (c) { case 'r':printf("stop\n"); break; case 'y':printf("wait a minute\n"); break; case 'g':printf("go go go\n"); break; default:printf("something must be wrong\n"); break; } } return 0; }
task4

#include <stdio.h> #include <stdlib.h> int main() { double i; double sum; double max; double min; sum = 0; max = 0; min = 20000; scanf_s("%lf", &i); while (i != -1) { if (i < 0 || i>20000) { break; } sum += i; if (i > max) { max = i; } if (i < min) { min = i; } scanf_s("%lf", &i); } printf("今日累计消费总额=%lf\n", sum); printf("今日最高一笔消费=%lf\n", max); printf("今日最低一笔消费=%lf\n", min); return 0; }
task5

#include <stdio.h> #include <stdlib.h> #include <time.h> int main() { int max = 30; int min = 1; int number; int i ; int x; srand(time(0)); number = min + rand() % (max - min + 1); printf("猜猜2025年4月哪一天是你的lucky day 开始喽,你有三次机会,猜吧:"); for (i=1; i <= 3; ++i) { scanf_s("%d", &x); if (x > number) { printf("你猜的日期晚了\n"); if (i < 3) { printf("再猜:"); } } else if (x < number) { printf("你猜的日期早了\n"); if (i < 3) { printf("再猜:"); } } else { printf("哇,猜中了"); break; } } if (i = 4) { printf("次数用完了,你的lucky day是%d", number); } }
task6

#include <stdio.h> int main() { int n; int i,j; printf("input n:"); scanf_s("%d",&n); for (j = 1; j <= n; ++j) { for (i = 1; i <= j - 1; ++i) { printf(" \t"); } for (i = 1; i <= 2 * (n-j)+1; ++i) { printf(" O \t"); } printf("\n"); for (i = 1; i <= j - 1; ++i) { printf(" \t"); } for (i = 1; i <= 2 * (n-j)+1; ++i) { printf("<H>\t"); } printf("\n"); for (i = 1; i <= j - 1; ++i) { printf(" \t"); } for (i = 1; i <= 2 * (n-j)+1; ++i) { printf("I I\t"); } printf("\n"); } }
总结:本次实验收获很大,主要学习了循环的思维方式,增加了思维的严谨性
浙公网安备 33010602011771号