c -读取未知大小/长度的文件,去掉非字母字符,并将大写改为小写



那么它必须每行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' );

............

相关内容

  • 没有找到相关文章

最新更新