发布网友 发布时间:2022-04-26 13:41
共4个回答
热心网友 时间:2022-06-28 17:31
#include<stdio.h>
int main(){
char a;
scanf("%c",&a);
switch(a){
case 'a':printf("输出数据 %c ",a);break;
case 'b':printf("输出数据 %c ",a);break;
case 'c':printf("输出数据 %c ",a);break;
default:putchar('\a');
}
return 0;}
这是我试过的,可以啊!
你可以复制我的试试看!
看看是不是软件问题吧!
热心网友 时间:2022-06-28 17:31
case 后面必须是整数 或者 ASCII 码表里面的字符。
字母可以写成 case 'A': case 'a': 这样。
热心网友 时间:2022-06-28 17:32
default
拼写错误
你的while(1)是个无限循环语句,当执行到switch后,如果没有满足case的情况,根本不会执行到default语句,也就是switch不起作用了,b未赋任何值,也就不会输出任何字符,再次循环到程序的起始位置,执行再输入;如果满足case情况,仍可以输出。
热心网友 时间:2022-06-28 17:33
java的switch中case的标号只能是int及范围小于int的整数,java7中String也可以。
c的switch中case的标号只能是整数,但是不*是什么整数。
这些都行:size_t、char、int、int32_t、long、unsigned long long…
%d什么的那是scanf和printf的格式符号,跟switch没关系