#include
int main () {
int n;
printf("读入一个整数 ");
scanf("%d", &n);
switch(n) {
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;
default: printf("北京欢迎你\n");
}
return 0;
}
((int)(fs/10))
//显示类型转换
把float转换为int类型
case
8:
n8=++n8;
//如果((int)(fs/10))等于8
那么n8=++n8
就是n8要+1
break;
//退出switch语句
你的switch貌似写错了哦
下面的case
2个同理
default
:n1=++n1
//如果上面的条件都不满足
则执行
default
:n1=++n1
语句
很明显,case表达式是错误的,错误提示也是这个意思(英文的而已)。在c语言中,case所带的表达式必须为常量表达式,如:case
2:pro[t]='q'、case
'a':pro[t]='q'
或者
case
"ttg":pro[t]='q'这种类型,而你的写的是逻辑表达式,所以提示错误。解决办法:你只要改成
case
"ttg":
;case
"ctg":
pro[t]='q';break;就可以了。纯手打。。。
B中switch后括号表达式出错在与switch();后面的分号
C中case后面只能为整型数据,或者能够转换成整型的char等;试想能够用等于比较两个浮点数吗?
#include stdio.h
void main()
{
int n;
switch(n)
{
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;
default:printf("北京欢迎你\n");
}
}