/*
时间:2017/8/2
地点:工程北629
功能:将输入复制到输出,多个空格合并成一个空格
思想:将空格设置成标志位,判断是否在空格中,决定是否输出
说明:参考课本《The C Programming Language》以及相关答案。
*/
#include<stdio.h>
int main(void) //方法一
{
int c;
int inspace; //设置inspace标志位,检查是否在空格里
inspace = 0;
while((c = getchar()) != EOF)
{
if(c == ' ')
{
if(inspace == 0)
{
inspace = 1; //下一次继续出现空格时,程序不输出任何值
putchar(c);
}
}
if(c != ' ')
{
inspace = 0; //若接收的c不是空格时,将inspace置为0
putchar(c);
}
}
return 0;
}
/*
int main() //方法二
{
int c, pc; //c = character, pc = previous character
pc = EOF;
while ((c = getchar()) != EOF) {
if (c == ' ')
if (pc != ' ') //or if (pc != c)
练习1-9 编写一个将输入复制到输出的程序,并将其中多个连续的空格用一个空格代替。
最新推荐文章于 2022-02-05 12:38:12 发布
这是一个C语言程序,其功能是将输入复制到输出,同时将多个连续的空格合并成一个空格。程序通过设置标志位来判断是否在空格中,从而决定是否输出空格。提供了三种不同的实现方法,并展示了在Vc++6.0中的运行结果,包括空格和制表符的处理情况。
摘要由CSDN通过智能技术生成