然后必须每行打印80个字符。
这是在c。
中完成的我的编码非常弱,不知道从哪里开始。
感谢任何帮助
答案 0 :(得分:1)
如果要求将大写改为小写,则需要:
#include <ctype.h>
用于tolower()
函数和isalnum()
函数
............
从文件中输入字符,因为需要处理每个字符,所以需要:
#include <stdio.h>
功能:getchar()
以及EOF
的定义和功能:putc()
.............
要计算当前行上当前显示的字符数,需要:
size_t lineLen = 0;
................
知道何时转到下一个输出线将需要该数字80
#define MAX_LINE_LEN (80)
.........
如果命令行包含:
myprogram < inputFile.txt
然后不需要在程序中打开/关闭文件。
...........
当然,需要一个没有参数的main()
函数:
int main( void )
{
...
} // end function: main
.........
由于我们将一次一个地阅读大量字符,因此需要:
编辑的以下while()
语句可以处理任何输入字符。
int ch;
while( (ch = getchar()) != EOF )
{
...
}
........
由于只显示可打印的字符,因此需要一行:
if( isalnum( ch ) )
}
....
}
..........
由于仅以小写显示,因此需要一行:
ch = tolower( ch );
............
需要实际输出char,并跟踪行的长度
putc( ch );
lineLen++;
............
需要在80个字符之后输出一个新行并重置计数器
if( MAX_LINE_LEN >= lineLen )
{
lineLen = 0;
putc( '\n' );
}
............
遇到EOF
后,需要输出最终换行符才能显示所有字符
putc( '\n' );
............
这就是它的全部内容。