C语言 大小写转换 有问题么下面程序 可以运行 但无法实现

#include "stdio.h"
main()
{
char letter = 0;
printf("请输入要转换的大写字母:");
scanf_s("%c", &letter);
if (letter >= 'A')
if (letter <= 'Z')
{
letter = letter - 'A' + 'a';
printf("转化为:%c\n", letter);
}
else
printf("您输入了一个小写字母\n");
else
printf("您输入了小于A的字符\n");
return 0;
VS2013

#include "stdio.h"
int main()
{
char letter = 0;
printf("请输入要转换的大写字母:");
scanf_s("%c", &letter,1);//这里加上1,表示输入一个字符,scanf_s在输入字符,字符串时要指定位数
if (letter >= 'A')
{////
if (letter <= 'Z')
{
letter = letter - 'A' + 'a';
printf("转化为:%c\n", letter);
}
else
printf("您输入了一个小写字母\n");
}////
else
printf("您输入了小于A的字符\n");
return 0;
}

温馨提示:内容为网友见解,仅供参考
第1个回答  2014-02-15
完全不靠谱,两个建议,一是思路要清晰,二是在任何时候都在if else后加上大括号。
char letter = ’\0';
printf("请输入要转换的大写字母:");
scanf("%c", &letter);
if (letter >= 'A' && letter <= 'Z') {
letter = letter - 'A' + 'a';
printf("转化为:%c\n", letter);
}
else if (letter >= 'a' && letter <= 'z') {
printf("您输入了一个小写字母\n");
}
else {
printf("您输入了不合适的字符\n");
}
第2个回答  2014-02-15
症状是什么?追问

输入什么都显示小于‘A'

追答#include "stdio.h"
int main()
{
char letter = 0;
printf("请输入要转换的大写字母:");
scanf_s("%c", &letter);
if (letter >= 'A')
        {    
            if (letter <= 'Z')
            {
         letter = letter - 'A' + 'a';
         printf("转化为:%c\n", letter);
            }
            else
            printf("您输入了一个小写字母\n");
        }
else
printf("您输入了小于A的字符\n");
return 0;
}

试试

C语言 大小写转换 有问题么下面程序 可以运行 但无法实现
include "stdio.h"int main(){char letter = 0;printf("请输入要转换的大写字母:");scanf_s("%c", &letter,1);\/\/这里加上1,表示输入一个字符,scanf_s在输入字符,字符串时要指定位数if (letter >= 'A'){\/\/\/if (letter <= 'Z'){letter = letter - 'A' + 'a';printf("转化...

C语言中的大小写字母转换问题?
while(n!='#'); 这里这个分号,导致如果第一个字符不是#,你这就死循环了 而且程序只读取了一个字符,scanf不在循环体里 并且字符串如果有空格,scanf也起不了作用

C语言,关于大小写字母的转换问题
如果没有加的话你的程序只能输入一个字符除非你输入的第一个字符就是回车键程序才会结束!如果你是先输入一个字符再输入一个回车键的话那么c就永远不会等于'\\n'了就是死循环了!下图就是只输入一个回车键的情况!你应该是想输入多个字符吧!你可以像下面的网友那么改不改也可以的!你正常的输入应该...

简单c语言问题——大小写字母转换
上面这句话,是把"this is my program"常量的地址赋值给了指针string,因此string成了常量指针,没法再给string指向的内存空间赋上新的值,所以*(string+i) = *(string+i) - 32会报错。可以把char *string = "this is my program";改为char string[] = "this is my program";这时string成为...

关于C语言中大小写字母转换的问题!急呐!!各位大虾帮帮忙
while(scanf("%c",&c1)== 1 && c1 != '|')\/*改为用scanf函数读取输入,因为getchar会读取换行符并保存,如你输入“A 回车“它就读取A + ‘\\n’所以没有正确的输出*\/ { if(isupper(c1 )){ c2=fun(c1);printf("\\n\\nThe letter \\'%c\\'change to \\'%c\\'\\n",c1,c2);} else...

C语言 字母大小写转换 怎么实现
y'+32; \/* 'y'这个字符再加 32('a'和'A'之差)都已经超出 ascii 基础 0~127 的范围了 *\/\/* 下面是按你的逻辑,把重新写了写的,当然还有逻辑错误, * 主要就是区间问题,这个拿个 ascii 表查一下数一下就 oh yeah 了。 *\/y=x;if (y<='a'&&y>='Z') z = y-('a'-'...

c语言的大小写转换问题
你把最后一个 getchar() 函数写成 getch() 了,改过后语法是没问题了 但是你的程序有点不对

...互相转换的程序,但不知道为什么不能运行 ,以下是代码:
1、字符型常量可以加减,并且是它的ASCII码的运算。从c1:A转为c2:a ,可以用c1直接加32.2、字符弄常量赋值给整型常量也是用变量名即可。如上是 a1=c1就行了,不要加' '号 3、使用字符型常量时可用其特色的getchar(输入)、putchar(输出)。更简洁美观。如以下参考:include<stdio.h> void ...

c语言编写一个大小写转换的程序,编译,else那行显示expected expression...
include <stdio.h> include <ctype.h> int main(int argc, constchar * argv[]){ char alphabet;printf("Enter an alphabet");putchar('\\n');alphabet=getchar();if (islower(alphabet))\/\/;\/\/多了这个分号 putchar(toupper(alphabet));else putchar(tolower(alphabet));} ...

才是刚学习c语言的,老师说让做个大小写转换的程序。请大家看一下我出 ...
z'){ c2=c1+'A'-'a';} else if(c1>='A'&&c1<='Z'){ c2=c1+'a'-'A';} else printf("wrong\\n");printf("%c\\n",c2);} 说你个不好习惯 首先引用系统头文件应该用<>,虽然“”也可以。另外写程序要常用TAB键 你这样看着好累 另外 没发现你哪里错了 或者说 就是这样的 ...

相似回答
大家正在搜