-1

编写一个程序,重复(直到文件结束)从输入流中读取一个字符。如果字符为大写,则将其更改为小写并将其写入输出流。对于所有其他字符,将字符原封不动地写入输出流。使用 getchar() 进行输入,使用 putchar() 进行输出,并使用输入重定向将输入文件连接到程序(参见快速入门的第 16 页)。C:>lowerCase < anyOldTextFile.txt 为此,您需要一个嵌套在 while 循环内的 if 语句。查看 ASCII 表可能会有所帮助。

我不是要求完成我的作业,我真的不知道如何开始这个,我只是在寻找一些提示

这是我尝试过的代码:

#include <stdio.h>
#include <stdlib.h>
int main() {
    int c, l;
    printf("Enter Letter: ");
    scanf("%c ", &l);
    c=getchar();
    while (c != EOF) {
        if(l <= 'Z') {
            putchar(l);
        } else if (l <= 'z') {
            putchar(l);
        } else {
            c = EOF;
        }
        system("Pause");
    }
} 
4

1 回答 1

2

你的程序应该有一个“main”函数,它可以做以下事情:

  1. 在一个循环中,调用该getchar()函数从标准输入流 (stdin) 中读取一个字符,并将其返回值存储到一个int名为“c”的变量中(例如)。

  2. 如果“c”的值等于EOF,则退出循环(例如使用“break”)或完全退出main(使用“return”或“exit”)。

  3. 如果“c”的值是大写字母(参见isupper()函数),则将其转换为小写字母(参见tolower())。

  4. 使用 . 将“c”的值打印到标准输出流 (stdout) putchar()

于 2013-01-29T22:49:33.967 回答