请教,switch case 用法

wycdbg wycdbg 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
我这个习题代码里面使用switch case 标签却编译出来全部都有问题。难道switch只能和while()一起使用?求高人回答下。

#include <stdio.h>
int hs0(int *);
void hs1(void);
void hs2(void);

int main(void)
{
int sr;
while((scanf("%d", &sr)) != EOF)
{
printf("Please choose one of the following;\n"
"1)copy files" " " "2)move files\n"
"3)remove files"" ""4)quit\n");
hs0(&sr);
}

}

int hs0(int * a)
{
if(*a > 0 && *a < 5)
{
switch(*a)
case '1':
hs1();
break;
case '2':
hs2();
break;
case '3':
printf("Hello3\n");
break;
case '4':
printf("Hello4\n");
default : break;
}
else
printf("输入错误请对照菜单重新输入\n");
}

void hs1(void)
{
printf("功能成功\n");
}

void hs2(void)
{
printf("功能成功\n");
}

-------------------Configuration: c - Win32 Debug--------------------
Compiling...
c.c
D:\学习\code\c.c(26) : error C2043: illegal break
D:\学习\code\c.c(27) : error C2046: illegal case
D:\学习\code\c.c(29) : error C2043: illegal break
D:\学习\code\c.c(30) : error C2046: illegal case
D:\学习\code\c.c(32) : error C2043: illegal break
D:\学习\code\c.c(33) : error C2046: illegal case
D:\学习\code\c.c(35) : error C2047: illegal default
D:\学习\code\c.c(35) : error C2043: illegal break
Error executing cl.exe.

c.exe - 8 error(s), 0 warning(s)
...全文
评论 2
收藏 已收藏
分享
返回顶部
wycdbg
C语言 70,039 成员 243,237 内容