C 更改字符的大小写
我想一直输入一个字符,直到输入“*”并更改该字符的大小写。我写的代码是C 更改字符的大小写,c,C,我想一直输入一个字符,直到输入“*”并更改该字符的大小写。我写的代码是 #include<stdio.h> #include<stdlib.h> #include<ctype.h> int main() { char character; char con_char; while(1) { printf("Enter a character:"); scanf("%c",&charact
#include<stdio.h>
#include<stdlib.h>
#include<ctype.h>
int main()
{
char character;
char con_char;
while(1)
{
printf("Enter a character:");
scanf("%c",&character);
printf("ASCII value of %c is %d\n", character, character);
if (character=='*')
{
printf("The program terminates\n");
exit(0);
}
else if (character>='a' && character<='z')
{
con_char = toupper(character);
printf("%c\t\t%c\n", character, con_char);
}
else if (character>='A' && character<='Z')
{
con_char = tolower(character);
printf("%c\t\t%c\n", character, con_char);
}
else
{
con_char=character;
printf("%c\t\t%c\n", character, con_char);
}
}
return 0;
}
#包括
#包括
#包括
int main()
{
字符;
char con_char;
而(1)
{
printf(“输入字符:”);
scanf(“%c”,字符(&c));
printf(“ASCII值%c是%d\n”,字符,字符);
如果(字符=='*')
{
printf(“程序终止\n”);
出口(0);
}
否则如果(character>='a'&&character='a'&&character请将scanf(“%c”,&character);
更改为scanf(“%c”,&character);
(添加空格)并阅读。感谢您的帮助…它确实有效…但我仍然无法推理出来..请解释格式说明符%d
和%s
和%f
自动过滤前导空格,但%c
和%[…]
和%n
不可以。您可以通过在%
之前添加空格来指示scanf
执行此操作。scanf
转换在无法转换的第一个字符处停止,该字符通常(但不一定)是空格或换行符,并且该字符保留在输入缓冲区中。