首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

最后一个显示如何是乱码

2012-02-23 
最后一个显示怎么是乱码?#includestdio.h#includestdlib.h#includestring.hintmain(){charb[10],a[1

最后一个显示怎么是乱码?
#include   <stdio.h>
#include   <stdlib.h>
#include   <string.h>
int   main()
{
        char   b[10],a[10];
        int   i,j,n;
        printf   ( "请输入你要的号码: ");  
        gets(a);
        n=strlen(a);
        printf   ( "你输入了%d个号码\n它们是%s\n ",n,a);
        for   (i=(n-1);i> =0;i--)
                  for   (j=0;j <=(n-1);j++)          
                          b[j]=a[i];
        printf   ( "它们的到序是:%s ",b);
        system   ( "PAUSE ");
        return   0;
}
指教一下!最后一个输出是乱码是怎么回事啊!

[解决办法]
忘记结尾符号了
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
char b[10],a[10];
int i,j,n;
printf ( "请输入你要的号码: ");
gets(a);
n=strlen(a);
printf ( "你输入了%d个号码\n它们是%s\n ",n,a);
for (i=(n-1);i> =0;i--)//何必那么复杂?
b[n-1-i]=a[i];
b[n] = '\0 ';
printf ( "它们的到序是:%s ",b);
system ( "PAUSE ");
return 0;
}

[解决办法]
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
char b[10],a[10];
int i,j=0,n;
printf ( "请输入你要的号码: ");
gets(a);
n=strlen(a);
printf ( "你输入了%d个号码\n它们是%s\n ",n,a);
for (i=(n-1);i> =0;i--)
b[j++]=a[i];
b[j] = '\0 ';
printf ( "它们的到序是:%s ",b);
system ( "PAUSE ");
return 0;
}

热点排行