c语言 逆序数,求解答。。错在哪里??
发布网友
发布时间:2022-05-24 13:52
我来回答
共1个回答
热心网友
时间:2023-10-16 02:17
#include"stdio.h"#include"math.h"void
main(){int
a,b,c,d,n=0,m=1,r=1,x=1,y=1,z=0,e;printf("请输入原数:\n");scanf("%d",&a);
x=a;//调到这里while(x!=0){//x=a;会导致死循环,因为这样x永远不为零;b=x%10;c=c*10+b;//这个语句多余x=x/10;n++;}m=n;x=a;while(m!=0){d=x%10;e=e*10+d;m=m-1;/*while(r<=m)//这个循环可以去掉{*/y=x;while(y!=0){//y=x;又造成一个死循环b=y%10;c=c*10+b;//这个语句多余y=y/10;if(b>d){printf("%d>%d\n",b,d);z++;}//这里我加了显示逆序对数,方便检查
}/*r++;//多余
}*/x=x/10;}printf("逆序数为%d",z);}