#include "stdio.h" #include "string.h" int main(){puts("please input a number below 99999:\n"); char a[5]; int m,i; for(i=0;i<5;i++){ a[i]=getchar(); } m=strlen(a); switch(m){ case 5:puts("5位数");break; case 4:puts("4位数");break; case 3:puts("3位数");break; case 2:puts("2位数");break; case 1:puts("1位数");break; }; for(i=4;i>=0;i--){ putchar(a[i]); return 0; }这段代码为什么switch语句输出不了
时间: 2024-03-17 12:40:58 浏览: 80
这段代码中的 switch 语句输出不了是因为 return 语句放在了 for 循环里面,导致程序在第一次循环时就结束了。将 return 语句放到 for 循环外面即可解决这个问题。修改后的代码如下:
```
#include "stdio.h"
#include "string.h"
int main(){
puts("please input a number below 99999:\n");
char a[5];
int m,i;
for(i=0;i<5;i++){
a[i]=getchar();
}
m=strlen(a);
switch(m){
case 5:puts("5位数");break;
case 4:puts("4位数");break;
case 3:puts("3位数");break;
case 2:puts("2位数");break;
case 1:puts("1位数");break;
};
for(i=4;i>=0;i--){
putchar(a[i]);
}
return 0;
}
```
阅读全文