实验二
*任务一
问题1:生成一个随机编号
问题2:取1-100内的数
问题3:保证生成的数字有四位
问题4:保证真正的随机,否则rand()每次取得数字都一样
*任务二
问题1:不会重置total_price,导致累加
问题2:跳出剩下的未执行语句,但不结束while
*任务三

点击查看代码
#include <stdio.h>
int main()
{
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");
}
}
return 0;
}
*任务四
点击查看代码
#include <stdio.h>
int main()
{
float money, sum = 0, max, min;
printf("输入今日开销,直到输入-1终止:\n");
scanf("%f", &money);
max = money;
min = money;
while (money != -1)
{
sum += money;
if (money > max)
max = money;
if (money < min)
min = money;
scanf("%f", &money);
}
printf("今日累计消费总额:%.1f\n", sum);
printf("今日最高一笔开销:%.1f\n", max);
printf("今日最低一笔开销:%.1f\n", min);
return 0;
}

*任务五
点击查看代码
#include <stdio.h>
int main()
{
int a,b,c,i;
for(i=0;i<5;i++)
{
scanf("%d%d%d",&a,&b,&c);
if(a+b<=c||a+c<=b||b+c<=a)
{
printf("不能构成三角形\n");
}
else
{
if(a==b&&b==c)
{
printf("等边三角形\n");
}
else if(a==b||b==c||a==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()
{
int lucky, guess, i;
srand((unsigned)time(NULL));
lucky = rand() % 30 + 1;
printf("猜猜2026年11月哪一天是你的lucky day\n");
printf("开始喽,你有3次机会,猜吧(1~30): ");
for (i = 0; i < 3; i++)
{
scanf("%d", &guess);
if (guess == lucky)
{
printf("哇,猜中了:)\n");
return 0;
}
else if (guess < lucky)
{
printf("你猜的日期早了,你的lucky day还没到呢\n");
}
else
{
printf("你猜的日期晚了,你的lucky day在前面哦\n");
}
if (i < 2)
{
printf("再猜(1~30): ");
}
}
printf("次数用光啦。11月你的lucky day是%d号\n", lucky);
return 0;
}


浙公网安备 33010602011771号