看看
main()
{ int a,b,c,d,e,f,g,h;
printf("Please Input Five Number:");
scanf("%ld",&a);
if(a>=0&&a<=9) printf("%d Is 1 Bit\n",a),printf("The Turn Is %d",a);
else if(a>=10&&a<=99) printf("%d Is 2 Bit\n",a),c=a/10, d=a-(c*10), printf("The Turn Is: %d,%d",d,c);
else if(a>=100&&a<=999) printf("%d Is 3 Bit\n",a),c=a/100, d=(a-(c*100))/10, e=a-((c*100)+(d*10)), printf("The Turn Is: %d,%d,%d",e,d,c);
else if(a>=1000&&a<=9999) printf("%d Is 4 Bit\n",a),c=a/1000, d=(a-(c*1000))/100, e=(a-((c*1000)+(d*100)))/10, f=a-((c*1000)+(d*100)+(e*10)),printf("The Turn Is: %d,%d,%d,%d",f,e,d,c);
/* else if(a>=10000&&a<=99999) printf("%d Is 5 Bit\n",a),c=a/10000,d=(a-(c*10000))/1000,e=(a-((c*10000)+(d*1000))/100,f=a-((c*10000)+(d*1000)+(e*100))/10,g=a-((c*10000)+(d*1000)+(e*100)+(f*10)),printf("The Turn Is : %d,%d,%d,%d,%d",g,f,e,d,c);*/
else
printf("%ld Is Over",a);
}
上面加了注释那一句运行时总提示出错,帮我改改,就是把12345,显示成54321
问题点数:0、回复次数:9Top
1 楼fanbest(座天使长)回复于 2004-09-03 22:31:10 得分 0
代码太乱,
不过有个错误显而易见.
为什么语句结束不用;而用,Top
2 楼liacw1017(梁上君子)回复于 2004-09-03 22:32:15 得分 0
#include "stdio.h"]
main()
{
long a;
long s[5];
long i,j,num;
clrscr();
printf("\nInput a number(10000--99999):");
scanf("%ld",&a);
if(a<10000||a>99999)
{
printf("\nInput error!");
getch();
exit (0);
}
for(i=0;i<5;i++)
{
s[i]=a%10;
a=a/10;
}
for(i=0;i<4;i++)
for(j=i+1;j<5;j++)
if(s[i]<s[j])
{
num=s[i];
s[i]=s[j];
s[j]=num;
}
a=0;
for(i=0;i<5;i++)
{
a+=s[i];
if(i==4)
{
printf("\nThe sorted number is:%ld",a);
getch();
exit(0);
}
a=a*10;
}
}
功能不一樣,可以參考
Top
3 楼ma100()回复于 2004-09-03 22:50:13 得分 0
不过有个错误显而易见.
为什么语句结束不用;而用,
这不是错误,在一行中可以用逗号分开语句
不管怎么说,这样写看着太乱了
错在少了一个)Top
4 楼fanbest(座天使长)回复于 2004-09-03 22:52:04 得分 0
谢谢 ma100()
我以前真的不知道.
^_^Top
5 楼meterboy()回复于 2004-09-03 22:55:59 得分 0
我改了,可还是提示错误,主要是是int型不能接受99999这个值,而我把int 型改成long int型又不行,运行的值是错误的。、Top
6 楼meterboy()回复于 2004-09-03 23:36:58 得分 0
搞定了,Top
7 楼sea373(菜鸟都不是)回复于 2004-09-03 23:59:51 得分 0
呵呵
感觉你的那个算法 还是不太好哦
这个是根据楼上 我改的 tc 2.0通过编译
#include "stdio.h"
main()
{
long a,t;
long s[5];
long i,j,num;
clrscr();
printf("\nInput a number(10000--99999):");
scanf("%ld",&a);
if(a<10000||a>99999)
{
printf("\nInput error!");
getch();
exit (0);
}
for(i=0;i<5;i++)
{
s[i]=a%10;
a=a/10;
}
for(i=0,j=5;i<2;i++,j--)
{
t=s[i];
s[i]=s[j-1];
s[j-1]=t;
}
for(i=4;i>=0;i--)
{
a+=s[i];
if(i==0)
{
printf("\nthe sorted number is:%ld",a);
getch();
exit(0);
}
a=a*10;
}
}Top
8 楼mooling()回复于 2004-09-04 10:16:42 得分 0
???Top
9 楼suifengxing()回复于 2004-09-04 14:12:27 得分 0
clrscr是什么啊?Top




