从标准输入读取几行输入,每行输入都要打印到标准输出上,在编写这个程序的时候要使用让这个程序能够处理的输入行的长度没有限制,这个参照上篇读取c源代码。
这里要注意的是必须定义一个标志位flag来确定每行的开始输出行号,否则就会每过一个字符输出一个数。
#include<stdio.h>
int main()
{
int ch;
int line = 0;
int flag = 1;
while((ch = getchar()) != EOF)
{
if(flag == 1)
{
line++; //行数++
printf("%d",line);
flag += 1; //标志位++
}
if(ch == '\n')
{
flag = 1;
} //遇到换行符让flag置1
putchar( ch); //打印标准输入
}
return 0 ;
}