www.ylrr.net > C反向输出一串数字

C反向输出一串数字

#include<stdio.h>#define MAX 3 //定义你要输入整数的个数 int main() { int i, s[MAX]; for(i = 0; i < MAX; i++) scanf("%d",&s[i]); for(i = MAX-1; i >= 0; i--) printf("%d ",s[i]); printf("\n"); }

#include<iostream>#include<string> using namespace std; void main() { int x,i; string s; cin>>s; x=s.length(); for(i=x;i>0;i--) { cout<<s[i-1]; } } 能用数组做,但会限制输入个数及结束符

晕,如果想反向输出的话,直接把字符数组从最后一位向第0开始 你要% 和/ 的话我给你吧#include#include int main(void) { int num; scanf("%d",num); while(num>0) { printf("%d",num%10); num/=10; } }

//---------------------------------------------------------------------------#include void fprt(void){ char i; if ((i=getchar())!='\n') { fprt(); putchar(i); }}int main(void){ fprt(); return 0;}//---------------------------------------------------------------------------

运行没有问题:#include<stdio.h> void main() { int a,b; printf("input a number:"); scanf("%d",&a); while(a!=0) { b=a%10; printf("%d",b); a=a/10; } }

这些奇怪的数字是地址,因为按你这个程序走,应该是顺序输出b[4],b[3],b[2],b[1],b[0],但是b[4]和b[3]在你输入567的时候是没有存入数的,所以输出不对 这样就好了:#include<stdio.h> int main() { int a,i,s; int b[5]; scanf("%d",&a); for(i=0;i<5;i++) { b[i]=a%10; a=a/10; if(a<=0) break; } printf("%d\n",i+1); s=i; for(;s>=0;s--) printf("%d",b[s]); printf("\n"); return 0; }

#include<string.h>#include<stdio.h> main () { char a[80],c; int i,b; gets(a); b=strlen(a); for(i=0;i<=b/2;i++) { c=a[i]; a[i]=a[b-1-i]; a[b-1-i]=c; } printf("%s\n",a); return 0; } 这样就可以了

#include<stdio.h> void main() { char a[]="rwtywyffgs 156236 ghhgj8"; int i=0; while(a[i]) { if(a[i]>='0'&&a[i]<='9') printf("%c",a[i]); i++; } printf("\n"); }

如果感觉回答满意请采纳#include<stdio.h>#include<stdlib.h>#include<string.h>main(){ char str[100]; scanf("%s",str); strrev(str); strupr(str); printf("%s\n",str); system("pause");}

字符串,就是字符数组,,,,,,,,循环、逐个输出,够长度就增加输出一个空隔 ~

网站地图

All rights reserved Powered by www.ylrr.net

copyright ©right 2010-2021。
www.ylrr.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com