while循环获取输入字符出错,是不是getchar有问题?
大神们,如图!想要获取输入字符的大小写对应模式及其他字符,如数字,空格,代码与视频上的代码一样,输出结果大不一样,不知道哪里出问题,求教,谢谢。#include <stdio.h>
#include <Windows.h>
#include <stdlib.h>
#define _CRT_SECURE_NO_WARNINGS
void judge(char data)
{
while (1)
{
getchar();//
if (data >= 'A'&& data <= 'Z')//输入为大写的情况
{
printf("%c\n", data += 32);
}
else if (data >= 97 && data <= 122)//输入为小写字母
{
printf("%c\n", data -= 32);
}
else if (data >= 48 && data <= 57)//数字原样输出。
{
printf("%c\n", data);
}
else if (data == 32)//空格
{
printf("this is a space key \n");
}
else
{
printf("Others\n");
}
}
}
int main()
{
char data = getchar();
judge(data);
system("pause");
}