问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

C语言如何用define将输入的一句话中字母大写变小写,小写变大写?

发布网友 发布时间:2022-04-29 03:01

我来回答

1个回答

热心网友 时间:2023-10-08 17:42

//代码如下
#include<stdio.h>
#define U2L_L2U(str) \
{\
int i=0;\
while(str[i]!='\0'){\
if(str[i]>='A' && str[i]<='Z')\
str[i++]+=32;\
else if(str[i]>='a' && str[i]<='z')\
str[i++]-=32;\
}\
}
//测试主函数
int main()
{
    char str[255];
scanf("%s",str);
U2L_L2U(str)
printf("str = %s\n",str);
    return 0;
}

//示例运行结果
F:\c_work>a.exe
AAbbCCdd
str = aaBBccDD

追问

好像不行啊

追答

哦哦,你的输入有空格,我是用scanf()函数输入的字符串,输入不能有空格的,遇到空格就停止了的,这是scanf()函数输入的特点,那你改成gets()函数吧,加上头文件

#include<string.h>
#include<stdio.h>
....
//测试主函数
int main()
{
    char str[255];
    //scanf("%s",str);
    gets(str);
    U2L_L2U(str)
    printf("str = %s\n",str);
    return 0;
}

热心网友 时间:2023-10-08 17:42

//代码如下
#include<stdio.h>
#define U2L_L2U(str) \
{\
int i=0;\
while(str[i]!='\0'){\
if(str[i]>='A' && str[i]<='Z')\
str[i++]+=32;\
else if(str[i]>='a' && str[i]<='z')\
str[i++]-=32;\
}\
}
//测试主函数
int main()
{
    char str[255];
scanf("%s",str);
U2L_L2U(str)
printf("str = %s\n",str);
    return 0;
}

//示例运行结果
F:\c_work>a.exe
AAbbCCdd
str = aaBBccDD

追问

好像不行啊

追答

哦哦,你的输入有空格,我是用scanf()函数输入的字符串,输入不能有空格的,遇到空格就停止了的,这是scanf()函数输入的特点,那你改成gets()函数吧,加上头文件

#include<string.h>
#include<stdio.h>
....
//测试主函数
int main()
{
    char str[255];
    //scanf("%s",str);
    gets(str);
    U2L_L2U(str)
    printf("str = %s\n",str);
    return 0;
}

热心网友 时间:2023-10-08 17:42

//代码如下
#include<stdio.h>
#define U2L_L2U(str) \
{\
int i=0;\
while(str[i]!='\0'){\
if(str[i]>='A' && str[i]<='Z')\
str[i++]+=32;\
else if(str[i]>='a' && str[i]<='z')\
str[i++]-=32;\
}\
}
//测试主函数
int main()
{
    char str[255];
scanf("%s",str);
U2L_L2U(str)
printf("str = %s\n",str);
    return 0;
}

//示例运行结果
F:\c_work>a.exe
AAbbCCdd
str = aaBBccDD

追问

好像不行啊

追答

哦哦,你的输入有空格,我是用scanf()函数输入的字符串,输入不能有空格的,遇到空格就停止了的,这是scanf()函数输入的特点,那你改成gets()函数吧,加上头文件

#include<string.h>
#include<stdio.h>
....
//测试主函数
int main()
{
    char str[255];
    //scanf("%s",str);
    gets(str);
    U2L_L2U(str)
    printf("str = %s\n",str);
    return 0;
}

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
什么车险可以分期花呗 请问“有几个虫子怕什么"改为陈述句是"有几个虫子不可怕"。为什么要加... 一只狼身边有一只羊为什么狼不吃羊? 路边有一只羊,过来一只狼,却没有吃羊,为什么? ...有没有一个厂叫【福高】厂的,是做电子产品的。。3Q 明道冒险王百度云如何下载 冒险王2cps联系谁? 350分到400分的二本大学 廊坊高考400分能上什么学校 河北2023年高考400分左右能上什么大学 速刷理财版手机刷卡器签名后显示网络繁忙是为什么? 速刷理财版为什么新换的手机就是连不上 速刷理财版pos机老是签到失败,是什么原因 速刷理财版上刷卡,为什么系统提示不在服务时间,刷卡失败啊 艾草泡脚有什么功效 ? 速刷理财通为什么一直网络繁忙 艾草泡脚有什么作用 - 百度 艾草泡脚的好处? 速刷理财版蓝牙pos机怎么不能刷自己的卡啦? 哪个代刷网可以刷快手五十个双击? win10推送服务怎么关闭 52岁的女人买什么保险好呢 52岁的没有医疗保险的,办哪种医疗保险较好? word2010怎么让一页纸排成横向,(表格需要)我一排横向,整个文章都成横向了! word2010怎么把有图和文字页面横向另外2页面纵向页面 怎样将WORD里抽某一页纸张设成横向的? 我,52岁买什么保险好 52岁买什么保险合适 52岁的人,如果购买百万医疗险,应该如何计算保费? 云顶之弈福星版本怎么下载 define 函数后面字母是大写还是小写 #define后面区分大小写吗 柠檬片加沙糖泡水的功效 C语言中宏名是否必须用大写字母表示?举个例子~ c语言中的宏有没有大小写 用C语言编程:定义一个宏,将大写字母变成小写字母。请高手赐教。 一样的华为手机,为什么微信是英文怎么也搞不成中文? c语言编程“定义一个宏,将大写字母变成小写字母” 用C语言定义一个带参数的宏,将大写字母转换成小写 华为手机,微信里都是英文,怎么登录?怎么修改为中文?- 问一问 C语言宏定义中字母区分大小写吗 华为手机微信视频只能听到声音看不到是谁来的怎么办 怎样把照片缩小到固定的宽和高,且文件大小不超过20KB c语言中是不是所有关键字都是小写的?变成大写后还是关键字么? 照片尺寸不能低于 290×400,且文件大小不能超过20KB怎么设置 怎样把照片缩小到固定的宽和高,且文件大小不超过20KB拜托了各位 谢谢 怎么才能让我的照片大小不要超过20KB? 华为手机香港拍的照片不能发给微信朋友 安装w7系统出现找不到驱动程序,没法安装怎么办?出现的提示是下图: 装win7时提示缺少驱动器的驱动程序,怎么重装系统?