这个程序为什么不能运行

来源:百度知道 编辑:UC知道 时间:2024/05/03 20:39:29
#include<stdio.h>
main()
{
long int num;
int w,q,b,s,g,place;
scanf("%ld",&num);
if(num>9999)
place=5;
else
if(num>999)
place=4;
else
if(num>99)
place=3;
else
if(num>9)
place=2;
else
place=1;
printf("%d",place);
w=(int)(num/10000);
q=(int)(num-w*10000)/1000;
b=(int)(num-w*10000-q*1000)/100;
s=(int)(num-w*10000-q*1000-b*100)/10;
g=(int)(num-w*10000-q*1000-b*100-s*10);
switch(place)
{

case5: printf("%d,%d,%d,%d,%d",g,s,b,q,w); break;
case4: printf("%d,%d,%d,%d",g,s,b,q); break;
case3: printf("%d,%d,%d",g,s,b); break;
case2: printf("%d,%d",g,s); break;
case1: printf("%d",g); break;

}
}

不是没有运行,而是一闪而过,没有停留。

在编程的末尾加 getch(); 就可以停留显示了。

同时,你的switch语句也有问题。在case和数字之间,应该有一个空格。

这样就正确了。