0

我是 C 编程的新手,我有一个问题。这是我的问题:我想使用函数' toupper ',这样当我们输入一个字母时,它会自动变成大写。我想在我们输入时将字母设为大写,而不是在输出中显示时。

所以当我们运行程序时它看起来像这样:

选择一个字母(A/B/C) : a (当我们键入a它时,它会自动变为 A。此评论下的示例。)

选择一个字母(A/B/C) : A(自动大写)

这是A (输出)

这是我当前的代码:

#include <stdio.h>
#include <conio.h>
#include <stdlib.h>

int main()
{
    char a;

    printf("(A/B/C): ");
    scanf("%c", &a);

    printf("%c", a);

}

提前谢谢:D...我真的需要你的帮助

4

2 回答 2

2

由于您已经在使用 conio.h,因此有一种方法可以使用 getch() 函数。但请注意conio.h 是非标准的 C 语言,而且相当陈旧和过时。

#include <stdio.h>
#include <ctype.h>
#include <conio.h>

int main()
{
    char ch;

    printf("(A/B/C): ");
    do
    {
      ch = getch();
      ch = toupper(ch);
      printf("%c", ch);
    } while(ch != '\n');

    getchar();
}
于 2012-09-19T14:06:35.253 回答
-1
printf("%c", islower(a) ? toupper(a) : a );

额外:stty olcuc适用于unix。

于 2012-09-19T13:56:29.677 回答