任意输入一个数字,先倒序输出再正序输出,我只会倒序输出,然后的正序输出该怎么办呢?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;}