修改为如下,测试结果没有错。
void fun(char str[])
{
for(int i=3i>=0i--)
{
str[i*2]=str[i] // 这里把原字符所在位置往后移动了2倍
if( 0 != i ) //当等于0时特殊处理,即字符串第一个字符保持原位不变
{
str[i*2-1]=' ' //这里把字符前面加了空格
}
}
str[7]='\0' //字符串是以'\0' ,结束,不加此句,将造成不可预知错误。
}
最后生成的结果是:
please input 4 digits:
9527
the result is:
9@5@ 2@ 7'\0'
def change(str1):new_str = str()for i in range(len(str1)):if(65 <= ord(str1[i]) <= 90):a = str1[i].lower()print(a,end='')elif(97 <= ord(str1[i]) <= 122):a = str1[i].upper()print(a,end='')else:a = str1[i]print(a,end='')return new_strstr2 = str(input("要转换的字符串:"))print(change(str2))欢迎分享,转载请注明来源:内存溢出
评论列表(0条)