switch如何使用

时间:2013.09.08 发布人:g7sale2jb

switch如何使用

已解决问题

谷歌g7sale2jb用户在2013.09.08提交了关于“科鲁兹switch如何使用”的提问,欢迎大家涌跃发表自己的观点。目前共有1个回答,最后更新于2024-05-14T15:13:27。#include"stdio.h"
voidmain()
{
inta,t;
scanf("%d",&a);
if(a>100000)printf("it'sbad\n");
elseif(a<100000&&a>=10000)t=5;
elseif(a<10000&&a>=1000)t=4;
elseif(a<1000&&a>100)t=3;
elseif(a<100&&a>10)t=2;
elseif(a<10&&a>=0)t=1;
printf("%d",t);
}
上面是一个IF语句可是当超过5位数时,输出的是it'sbad,但是下一行还有数字输出,并不是我想要的效果.还有上面如何用switch语句去实现?希望大家能够帮助她。

详细问题描述及疑问:#include"stdio.h"
voidmain()
{
inta,t;
scanf("%d",&a);
if(a>100000)printf("it'sbad\n");
elseif(a<100000&&a>=10000)t=5;
elseif(a<10000&&a>=1000)t=4;
elseif(a<1000&&a>100)t=3;
elseif(a<100&&a>10)t=2;
elseif(a<10&&a>=0)t=1;
printf("%d",t);
}
上面是一个IF语句可是当超过5位数时,输出的是it'sbad,但是下一行还有数字输出,并不是我想要的效果.还有上面如何用switch语句去实现?期待您的答案,感谢你,我会记得你对我的好的 !

希望以下的回答,能够帮助你。

第1个回答

用户名:gu来自iypwe5126  

因为你的printf("%d",t);是独立的一句,并没有受到ifelse语句的控制,要达到预期的效果,则要把printf("%d",t);加入到每句elseif的后面,如if(a>100000)printf("it'sbad\n");是不能偷懒的。

而且这段程序用switch来实现是很复杂的内,因为switch语句中case后接的是整容型常评量表达式,不能用判断句的