C语言大小写字符转换
发布网友
发布时间:2022-04-22 10:01
我来回答
共3个回答
热心网友
时间:2023-09-23 13:39
#include<stdio.h>
int main()
{ int i;
char s[200];
gets(s);
for(i=0; s[i]; i++)
if(s[i]>='A'&&s[i]<='Z')s[i]+=32;
printf("%s\n",s);
return 0;
}
热心网友
时间:2023-09-23 13:40
#include<stdio.h>
#include<string.h>
void main(){
char str[1000],i;
printf("请输入一个字符串:");
scanf("%s",&str);
/**大写字母转小写字母,原理是:
1.先将每个字符转换成对应的ASCII码
2.然后判断是否是大写字母。大写字母的ACSII码是:65到90之间
3.然后再将对应的ASCII码加上32,就得到小写字母的ASCII码
4.最后再将转换后的字符串输出
*/
for(i=0;i<strlen(str);i++){
if((int)str[i]>=65&&(int)str[i]<=90){ //判断字符串的ASCII码是否在65到90之间
str[i]=(char)((int)str[i]+32); /**如果ASCII码在65到90之间,
则将这个字符串的ASCII码加上32,
然后强转成char类型*/
}
}
printf("%s\n",str); //输出转换后的字符串
}
热心网友
时间:2023-09-23 13:40
先判定是否是大写字母('A'到'Z'范围内),然后依次增加0x20就行了