标题:将输入字符倒序输出的程序,不能倒序,而且输出总多带个c,大家运行以下看看 ...
取消只看楼主
showtime110
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2005-2-18
 问题点数:0 回复次数:1 
将输入字符倒序输出的程序,不能倒序,而且输出总多带个c,大家运行以下看看问题在

#include <stdio.h> int getline(char s[],int len) { int i=0,c; while((c=getchar())!='\n'&&c!=EOF&&--len>0) s[i++]=c; if(c=='\n') s[i++]='c'; s[i]='\0'; return i; }

reverse(char *p,int n) { char *q,temp; q=p+n-1; while(q<=p) { *p=temp; temp=*q; *q=*p; p++; q--; } } main() { char b[1000]; int q=1000,c,i; c=getline(b,q); reverse(b,c); for(i=0;i<c;i++) printf("%c",b[i]); }

搜索更多相关主题的帖子: 倒序 字符 输出 运行 
2005-03-10 20:35
showtime110
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2005-2-18
得分:0 
以下是引用magic475在2005-3-10 22:19:25的发言:

建议作者把关于C语言的函数部分好好看一下,函数的变量与状态是保存于栈空间中,用过就自动删除。 下面是个错误的例子,你可以试着运行一下: #include <stdio.h>

int max(int a,int b) { scanf("%d,%d",&a,&b); if(a>=b) return a; else return b; }

void main() { int a,b,c;

c=max(a,b); printf("%d,%d,%d\n",a,b,c); }

那我的程序里哪个变量是被函数用过删掉的而我又用了一次的 能帮我指出来一下吗 我看不出来,刚学c没多久,太差了我

2005-03-10 23:40



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




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

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