标题:[求助]
只看楼主
无尘剑
Rank: 1
等 级:新手上路
帖 子:49
专家分:0
注 册:2005-5-18
 问题点数:0 回复次数:7 
[求助]
哪位高手帮我分析一下 ,下面的程序哪里出错?非常感谢!
   输入一个字符串,按逆序输出。
   #include<stdio.h>
   #include<string.h>
   #include<conio.h>
   main()
   {
    char a,b[79];
    int i,j,n;
    printf("请输入要输入字符的个数:\n");
    scanf("%d",&n);
    printf("请输入字符串:\n");
    gets(b);
    for(i=0;i<(n/2);i++)
    {
        a=b[n-i-1];
        b[n-1-i]=b[i];
        b[i]=a;
     }
    puts(b);
    getch();
  }
搜索更多相关主题的帖子: 分析 include 字符串 
2005-05-18 17:37
lwei
Rank: 5Rank: 5
等 级:职业侠客
威 望:3
帖 子:197
专家分:369
注 册:2005-5-4
得分:0 
程序的逻辑应该没有问题, 关键在于scanf这个函数, 是有很多副作用的.
如果你把这个去掉, 改为用strlen求输入串的长度, 应该没有问题

2005-05-18 18:47
无尘剑
Rank: 1
等 级:新手上路
帖 子:49
专家分:0
注 册:2005-5-18
得分:0 
谢了

我只是个菜菜鸟,望各位多多指教!!!!!!!!!!
2005-05-18 18:59
musicml
Rank: 1
等 级:新手上路
帖 子:273
专家分:0
注 册:2005-4-2
得分:0 
//输入一个字符串,按逆序输出。 #include<stdio.h> #include<string.h> #include<conio.h> int main() { char a,b[79]; int i,j,n; printf("请输入要输入字符的个数:\n"); scanf("%d",&n); fflush(stdin); printf("请输入字符串:\n"); gets(b); for(i=0;i<(n/2);i++) { a=b[n-i-1]; b[n-1-i]=b[i]; b[i]=a; } puts(b); getch(); return 0; }

Every thing is possible.
2005-05-19 01:31
无尘剑
Rank: 1
等 级:新手上路
帖 子:49
专家分:0
注 册:2005-5-18
得分:0 
请问以下 fflush(stdin);这有什么功能?

我只是个菜菜鸟,望各位多多指教!!!!!!!!!!
2005-05-19 14:03
musicml
Rank: 1
等 级:新手上路
帖 子:273
专家分:0
注 册:2005-4-2
得分:0 
清流函数
把内存缓冲区的还未读取的字符清空!!!

Every thing is possible.
2005-05-19 15:08
无尘剑
Rank: 1
等 级:新手上路
帖 子:49
专家分:0
注 册:2005-5-18
得分:0 
这在VC上不能运行啊,一运行就提示error : 'srdin' : undeclared identifier

我只是个菜菜鸟,望各位多多指教!!!!!!!!!!
2005-05-20 19:41
lycnsc
Rank: 1
等 级:新手上路
帖 子:243
专家分:0
注 册:2005-3-27
得分:0 
晕!这程序不长也不难,既然你能写出来,那你细心一点、耐心一点也应该能找出毛病来!
2005-05-20 19:50



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-18623-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.055168 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved