首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

C语言大小写转换,该怎么解决

2012-05-13 
C语言大小写转换int change_style(char* s){int ifor(i0s[i]!\0i++){if(s[i]a && s[i]z)s[

C语言大小写转换
int change_style(char* s)
{
int i;
for(i=0;s[i]!='\0';i++)
{
if(s[i]>='a' && s[i]<='z')
s[i]=s[i]-32;
else if(s[i]>='A' && s[i]<='Z')
s[i]=s[i]+32;
else
{}
}
}

老师布置的题目,将大写字母转换成小写,小写转换成大写,
自己写的这段代码用gcc编译显示段错误,不知道为什么,
求高手帮助!

[解决办法]
什么错误
[解决办法]
怎么调用的?

传入char *str = "aBcD"? 。。。
[解决办法]
用数组。。

char s[] = "abcd...";
[解决办法]
char *s = "srdAEDFTDhuhu"; 改为:char s[50]="srdAEDFTDhuhu";//出现这个问题的原因是你用指针指向了一个字符串,编译器会把这个字符串表示为常量,不允许你修改。
还有就是你的那个else还带个空括号的就不要带了,没有意思。
[解决办法]
首先字符串定义就不对啊,可以用字符数组 char s[15]={"srdAEDFTDhuhu"},
第二 fun(s) 啥意思 
第三 main函数里没调用子函数啊,你写子函数干嘛的,
[解决办法]

探讨

char *s = "srdAEDFTDhuhu"; 改为:char s[50]="srdAEDFTDhuhu";//出现这个问题的原因是你用指针指向了一个字符串,编译器会把这个字符串表示为常量,不允许你修改。
还有就是你的那个else还带个空括号的就不要带了,没有意思。

热点排行