C语言要求输入数字对应星期超过7报错用switch语句
时间: 2024-12-14 11:23:04 浏览: 15
在C语言中,如果你想使用`switch`语句来处理用户输入的星期数,并且限制输入范围在1到7(因为标准的星期从周日开始计数,0代表周日),当用户输入的数字大于7时会报错,你可以这样做:
```c
#include <stdio.h>
int main() {
int day;
printf("请输入一个星期数(1-7):");
scanf("%d", &day);
// 确保输入在合法范围内
if (day < 1 || day > 7) {
printf("错误:输入的数字超出范围(1-7)。\n");
return 1; // 返回非零值表示出错
}
switch (day) {
case 1:
printf("这是星期一。\n");
break;
case 2:
printf("这是星期二。\n");
break;
case 3:
printf("这是星期三。\n");
break;
case 4:
printf("这是星期四。\n");
break;
case 5:
printf("这是星期五。\n");
break;
case 6:
printf("这是星期六。\n");
break;
case 7:
printf("这是星期天。\n");
break;
default:
// 如果输入的是8或其他非法值,这个情况会被匹配
printf("错误:输入的不是一个有效的星期数。\n");
break;
}
return 0; // 成功返回0
}
```
在这个程序中,如果用户输入了一个不在1到7之间的数字,`if`条件会触发,然后打印错误消息并返回非零值表示错误。
阅读全文