那么它必须每行80个字符打印到屏幕上。
在c中完成。
我的代码超级弱,不知道从哪里开始。
感谢您的帮助
给定将大写改为小写的要求,将需要:
#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 );
............
需要实际输出字符,并跟踪行
的长度putc( ch );
lineLen++;
............
需要在80个字符后输出新行并重置计数器
if( MAX_LINE_LEN >= lineLen )
{
lineLen = 0;
putc( 'n' );
}
............
遇到EOF
后,需要输出最后一个换行符,以便显示所有字符
putc( 'n' );
............