问答详情
源自:-

只可以把一个大写字母换为小写、

#include<stdio.h>

main()

{

char x;

scanf("%s\n",&x);

if(x>='A'&&x<='Z')

    {

 x=x+'a'-'A';

}

else

{

  x=x;

}

printf("%s\n",x);

return 0;

}





提问者:萝卜GG 2015-10-22 09:39

个回答

  • onemoo
    2015-10-23 00:49:05

    你定义 x 为字符类型,可是你在scanf中指定的却是%s(字符串)。最后那个printf也是格式不匹配。

    还要注意: scanf的格式匹配说明字符串中不要用\n结尾。 scanf("%c", &x); 这样就好。

    else部分既然不更改x的值,那就完全不需要写else啊。

    这样看来,你这个代码就是接受输入一个字母,然后将其改为小写。你问题中“只可以把一个大写字母...”是什么意思呢? 难道你想输入的是一个字符串??


    另外,在C中最好把main函数写为 int main(void) {...}

  • qq谈兴
    2015-10-23 00:39:29

    你看看我上面的程序,

  • qq谈兴
    2015-10-23 00:38:47

    #include <stdio.h>

    int main()

    {

    char ch;

    printf("请输入一个大写字母:");

    scanf("%c",&ch);

    ch = ch + 32;

    printf("大写字母转换小写字母后为:%c\n",ch);


    }