|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
如代码所示,我的想法是让输入的字符逆序输出,但是编译运行以后输入的字符输入以后直接就没有输出了,还请各位帮忙诊断一下问题所在。
- #include <stdio.h>
- #include <string.h>
- main()
- {
- char a[100];
- scanf("%[^\n]",&a);//除了换行符全部接收
- char b[100] ;
- int c=strlen(a);
- int i;
- int j=0;
- for(i=c;i>=0;i--)
- {
- b[j++]=a[i];
-
- }
- b[j]='\0';
- printf("%c",b[j]);
- return 0;
-
- }
复制代码
- #include <stdio.h>
- #include <string.h>
- #include <stdlib.h>
- int main()
- {
- char a[100];
- scanf("%[^\n]",&a);//除了换行符全部接收
- char b[100] ;
- int c=strlen(a);
- int i;
- int j=0;
- for(i=c-1;i>=0;i--)
- {
- b[j++]=a[i];
-
- }
- b[j]='\0';
- for(j=0;j<c;j++)
- printf("%c",b[j]);
- system("pause");
- return 0;
- }
复制代码改成这样就行了,
首先a[c],没有赋值,你得改成i=c-1,然后输出的时候你少了个for循环,导致输出的是你刚刚赋值的b[j]='\0'
|
|