数字排序怎么办?
任意输入一个数字,先倒序输出再正序输出,我只会倒序输出,然后的正序输出该怎么办呢?
main()
{
long x;
int y;
scanf("%ld",&x);
do
{
y=x%10;
x=x/10;
printf("%d",y);
}while(x>0);
getch();
}
加群49956042,C交流群..
任意输入一个数字,先倒序输出再正序输出,我只会倒序输出,然后的正序输出该怎么办呢?
main()
{
long x;
int y;
scanf("%ld",&x);
do
{
y=x%10;
x=x/10;
printf("%d",y);
}while(x>0);
getch();
}
加群49956042,C交流群..
这样就可以啦
#include<iostream>
using namespace std;
void main()
{
long x;
int y,i,n;
int a[20];
cin>>x;
for(i=0;x!=0;i++)
{y=x%10;
a[i]=y;
x=x/10;
}
n=i;
for(i=0;i<n;i++)
cout<<a[i];
cout<<endl;
for(i=n-1;i>=0;i--)
cout<<a[i];
}
把数字转换成字符串,这样就好处理多了,试试下面的这个:
char s1[10];
std::string s;
int k1=0,i=0,j=0;
scanf("%d",&k1);
sprintf(s1,"%d",k1);
s=s1;
printf("s===%s\n",s.c_str()); // 顺序输出
for(i=s.size()-1;i>=0;i--)
{
s1[j++]=s[i];
}
s=s1;
printf("s===%s\n",s.c_str()); // 倒序输出
谢谢了,寒天雪地。你发的正确的.
能不能解释一下是什么意思啊?
这几句搞不懂...
i=k;
while(i)
{t=t*10+i%10;
i=i/10;
}