C语言编写一个大小写字母转换的程序

如题,要求从键盘输入一个字符,若字符为大写则转换为小写输出,若字符为小写则转换为大写输出~若为其他则原样输出... 如题,要求从键盘输入一个字符,若字符为大写则转换为小写输出,若字符为小写则转换为大写输出~若为其他则原样输出 展开
 我来答
心众眠5
2018-12-13 · TA获得超过7.6万个赞
知道答主
回答量:60
采纳率:100%
帮助的人:5万
展开全部

#include <stdio.h>

#define DAXIE(x) (x>='A' && x<='Z') //判断是大写字符。

#define XIAOXIE(x) (x>='a' && x<='z') //判断是小写字符。

#define ZHUANXIAOXIE(x) (x-'A'+'a')//转为小写

#define ZHUANDAXIE(X) (x-'a'+'A')//转为大写 

int main()

{

char str[100];

int i;

gets(str);

for(i = 0; str[i]; i ++)

if(DAXIE(str[i])) str[i] = ZHUANXIAOXIE(str[i]);//如果是大写字符,转为小写。

else if(XIAOXIE(str[i])) str[i] = ZHUANDAXIE(str[i]);//如果是小写字符,转为大写。     

puts(str);//输出结果         return 0;

}

扩展资料

C语言的基本构成

1、任何一个c语言程序都必须包括以下格式:

main()
{   }

这是c语言的基本结构,任何一个程序都必须包含这个结构。括号内可以不写任何内容,那么该程序将不执行任何结果。

2、main()----在c语言中称之为“主函数”,一个c程序有且仅有一个main函数,任何一个c程序总是从main函数开始执行,main函数后面的一对圆括号不能省略。

3、被大括号{ }括起来的内容称为main函数的函数体,这部分内容就是计算机要执行的内容。

4、在{  }里面每一句话后面都有一个分号(;),在c语言中,我们把以一个分号结尾的一句话叫做一个c语言的语句,分号是语句结束的标志。

5、printf(“a=%d,b=%d,sum=%d\n”,a,b,sum); ----通过执行这条c语言系统提供给我们直接使用的屏幕输出函数,用户即可看到运行结果,本程序运行后,将在显示器上显示如下结果:

a=20,b=15,sum=35

百度网友a39fb3e
2015-12-19 · TA获得超过4466个赞
知道小有建树答主
回答量:477
采纳率:100%
帮助的人:68.4万
展开全部

C语言实现如下:

#include<stdio.h>
#include<stdlib.h>
void main()
{
char c;
scanf("%c",&c);  //输入一个字母。
if ((c>='A')&&(c<='Z')) c+=32;
//判断是否为大写字母,是则转换为小写字母。
else if((c>='a')&&(c<='z')) c-=32;
//否则判断是否为小写字母,是则转换为大写字母。
else    //否则,该字符不是字母,则输出“该字符不是字母”并结束程序。
{
printf("该字符不是字母\n");
exit(0);
}
printf("%c\n",c);  //输出转换后的字母字符。
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
fallx
2010-04-18 · TA获得超过5486个赞
知道大有可为答主
回答量:2321
采纳率:73%
帮助的人:726万
展开全部
#include<stdio.h>
void main()
{char x='a';

printf("输入x:\n");
scanf("%c",&x);
if( x>='A' && x<='Z')
{
x=x+32; /*是大写,转换为小写 ,至于为什么要+32吗,请看看
大小写字母的ASCII码差值*/
}
else
if( x>='a' && x<='z')
{
x=x-32; /*是小写,转换为大写*/
}
/*其它不用理*/
printf("%c\n",x);
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友385f5d55b
2018-05-07 · TA获得超过1361个赞
知道小有建树答主
回答量:111
采纳率:85%
帮助的人:14.1万
展开全部

调用toupper()函数

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
void toupper(char ch)
{
 if (ch >= 'a'&&ch <= 'z')
 {
  printf("%c\n", ch - 32);
 }
 else
 {
  printf("%c\n", ch + 32);
 }
}
int main()
{
    char ch;
 scanf("%c", &ch);
 toupper(ch);
 system("pause");
 return 0;
}
/*
* 将大写字母转换为小写字母
*/
#include <stdio.h>
int lower(int c)
{
 return ((c>='A')&&(c<='z'))?(c+'a'-'A'):(c);
}
main()
{
 int i;
 char a[]="ABCDEFGHIJKLMNOPQRSTUVWXYZ";
 for(i=0;i<26;i++){
  printf("%c result is %d ------ %c\n",a[i],lower(a[i]),(char)lower(a[i]));
 }
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
眭访寇旋
2019-10-28 · TA获得超过3548个赞
知道大有可为答主
回答量:3042
采纳率:25%
帮助的人:208万
展开全部
C语言实现如下:
#include<stdio.h>
#include<stdlib.h>
void main()
{
char c;
scanf("%c",&c); //输入一个字母。
if ((c>='A')&&(c<='Z')) c+=32;
//判断是否为大写字母,是则转换为小写字母。
else if((c>='a')&&(c<='z')) c-=32;
//否则判断是否为小写字母,是则转换为大写字母。
else //否则,该字符不是字母,则输出“该字符不是字母”并结束程序。
{
printf("该字符不是字母\n");
exit(0);
}
printf("%c\n",c); //输出转换后的字母字符。
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(8)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式