标题:[求助]出现死循环了
只看楼主
jmasm
Rank: 1
等 级:新手上路
威 望:1
帖 子:368
专家分:0
注 册:2006-9-24
 问题点数:0 回复次数:2 
[求助]出现死循环了

/*编写一个程序,把它的输入复制到输出,并在此过程中将相连
的多个空格用一个空格代替.
*/

#include <stdio.h>
#include <conio.h>

main()
{
int c,i;
clrscr();
while((c=getchar())!=EOF)
{
for(i=0;c==' ';i++) /*这儿出现死循环了*/
;
if (i!=0)
putchar(' ');
putchar(c);
}
getch();
}


用getchar和putchar如何完成上面的任务,我写错了

搜索更多相关主题的帖子: include 如何 
2006-09-27 12:33
jmasm
Rank: 1
等 级:新手上路
威 望:1
帖 子:368
专家分:0
注 册:2006-9-24
得分:0 

想到方法了

呵呵,解决问题了
/*编写一个程序,把它的输入复制到输出,并在此过程中将相连
的多个空格用一个空格代替.
*/

#include <stdio.h>
#include <conio.h>
#define OUT 0
#define IN 1

main()
{
int c,i,state=IN;
clrscr();
while((c=getchar())!=EOF)
{
if (c==' ')
state=OUT;
else
{
if (state!=IN)
putchar(' ');
state=IN;
}


if (state)
putchar(c);

}
}

测试数据输入
wo ai ni
输出:
wo ai ni
输入:
wo ai ni
输出:
wo ai ni

[此贴子已经被作者于2006-9-27 20:26:43编辑过]

2006-09-27 14:58
jmasm
Rank: 1
等 级:新手上路
威 望:1
帖 子:368
专家分:0
注 册:2006-9-24
得分:0 
2006-09-27 15:08



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




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

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