实验二

任务一

  • 问题一:随机生成五个某专业血缘的编号,范围在204900420001~204900420100
  • 问题二:功能为生成一个1~100之间的随机整数
  • 问题三:用于确保数字至少占4位宽度,不足四位时在前面补零
  • 问题四:生成的五个数字完全一样

任务二

  • 问题一:每次计价后无法清零,无法每次独立计价
  • 问题二:可停止执行coutinue之后的所有语句,跳到while循环的条件判断处

任务三

  • 代码

点击查看代码

#include 复制代码
int main(void) {
    char c;
    int i;

    for (i = 0; i < 4; i++) {
        scanf(" %c", &c);

        switch (c) {
            case 'r':
                printf("stop!\n");
                break;
            case 'g':
                printf("go go go\n");
                break;
            case 'y':
                printf("wait a minute\n");
                break;
            default:
                printf("something must be wrong...\n");
                break;
        }
    }

    return 0;
} 
  • 运行截图

任务四

  • 代码

点击查看代码

复制代码
#include<stdio.h>
int
main()
{
	double a =
		1.0, sum = 0, max, min;
	printf(
		"输入今日开销,直到输入-1终止:\n"
	);
	scanf("%lf", &a);
	max
		= a;
	min
		= a;
	if (a != -1) {
		while (a != -1)
		{
			if (a > max) {
				max= a;
			}
			if (a < min) {
				min= a;
			}
			sum+= a;
			scanf("%lf", &a);
		}
		printf("今日累计消费总额:%.1f\n", sum);
		printf("今日最高一笔开销:%.1f\n", max);
		printf("今日最低一笔开销:%.1f\n", min);
	}
	return 0;		
}

+运行截图

任务五

  • 代码

点击查看代码

复制代码
#include<stdio.h>
int main()
{
    int a, b, c;

    for (int i = 0;i < 5;i++) {

        scanf("%d%d%d", &a, &b, &c);

        if (a <= 0 || b <= 0 || c <= 0 || (a + b <= c) || (a + c <= b) || (b + c <= a))
        {
            printf("不能构成三角形\n");
        }
        else {
            if (a == b && b == c)
            {
                printf("等边三角形\n");
            }
            else if (a == b || a == c || b == c)
            {
                printf("等腰三角形\n");
            }
            else if (a * a + b * b == c * c || a * a + c * c == b * b || b * b + c * c == a * a)
            {
                printf("直角三角形\n");
            }
            else {
                printf("普通三角形\n");
            }
        }
    }
    return 0;
}
  • 运行截图

任务六

  • 代码

点击查看代码

复制代码
#include<stdio.h>
#include<stdlib.h>
#include<time.h>

int main()
{
    srand((unsigned)time(NULL));
    int lucky_day = rand() % 30 + 1;
    int guess;

    printf("猜猜2026年11月哪一天是你的lucky day\n");
    printf("开始喽,你有3次机会,猜吧(1~30):");

    for (int i = 1;i <= 3;i++)
    {
        scanf("%d", &guess);

        if (guess == lucky_day)
        {
            printf("哇,猜中了:)\n");
            return 0;
        }
        else if (guess < lucky_day)
        {
            printf("你猜的日期早了,你的lucky day还没到呢\n");
        }
        else {
            printf("你猜的日期晚了,你的lucky day在前面哦\n");
        }
        if (i < 3) {
            printf("再猜(1~30):");
        }
    }
    printf("次数用光啦。11月你的lucky day是%d号\n", lucky_day);

    return 0;

}
  • 运行截图