十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
char strcase_switch(char* string)
创新互联-专业网站定制、快速模板网站建设、高性价比明溪网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式明溪网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖明溪地区。费用合理售后完善,十载实体公司更值得信赖。
{
int i;
for (i = 0; string[i] != '\0'; i++)
{
if (string[i] = 'a' string[i] = 'z')
{
string[i] = string[i] - 32;
}
if (string[i] = 'A' string[i] = 'Z')
{
string[i] = string[i] + 32;
}
}
return string[i];
}
int _tmain(int argc, _TCHAR* argv[])
{
char str[] = "abcdefGHIJK";
cout strcase_switch(str) endl;
return 0;
}
扩展资料:
char用法:
C语言中char用于定义字符类型变量或字符指针变量,例如“char a;”则定义了变量a是字符类型,“char*a;”则定义了变量a是字符指针类型。
char是C语言整型数据中比较古怪的一个,其它的如int/long/short等不指定signed/unsigned时都默认是signed,但char在标准中不指定为signed/unsigned,编译器可以实现为带符号的,也可以实现为不带符号的。
关于char还有一个特殊的语言就是char*,它在C语言中有专门的语义,既不同于signed char*,也不同于unsigned char*,专门用于指以'\0'为结束的字符串。
大小转换,用ascii码的差值进行运算。
函数实现两个主要功能:
一、识别字符串中大写字母。
二、将大写转小写,累计个数并返回。
下面是代码:
#include stdio.h
int C2LC(char str[]);
int main()
{
int n;
char str[100];
scanf("%s",str);
n=C2LC(str);
printf("大写转小写后为:\n%s\n修改的个数为:%d\n",str,n);
return 0;
}
int C2LC(char str[])
{
int n=0;
char *p=str;
while(*p!=0)
{
if(*p='A' *p='Z') *p=*p+32,n++;
p++;
}
return n;
}
晕..
这个也要100分..
楼上太强了..
#include
stdio.h
#include
ctype.h
int
main()
{
putchar(tolower(getchar()));
putchar('\n');
return
0;
}
还是简要解释下.
tolower()
函数,是ctype.h里的一个函数,作用就是,把输入的大写字母转换成小写字母输出.
最简单形式.
..
程序只能输入一个字符然后输出一个字符.如果是大写字母,就转换为小写字母输出...
因为是大写字母转化为小写字母;我们可以考虑运用ASCII码来解决这类问题。根据ASCII码,大写字母变为小写字母只需要+32即可.
例如我们定义char ch1='B';我们仅需要输出ch1+32即可;
下面写给出具体程序:
首先定义一个字符变量;然后提醒输入大写字母;在输入大写字母后;由ASCII码转化后;输出的即为小写字母。这是一种很简洁的转化方式。
当然;这种程序也有弊端;当你输入小写字母时;ASCII码就会超出范围;因为最高为127;而a的ASCII码为97;加上32后为129,显然超出范围;程序会无内容输出。
不过,解决大写字母转化小写字母倒是绰绰有余的。
扩展资料
ASCII(American Standard Code for Information Interchange,美国信息交换标准代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言。它是现今最通用的单字节编码系统,并等同于国际标准ISO/IEC 646。
请注意,ASCII是American Standard Code for Information Interchange缩写,而不是ASCⅡ(罗马数字2),有很多人在这个地方产生误解。
下有具体ASCII对照表
百度百科-ASCII
有三种方式可以解决c语言大小写字母的转换
1.使用C语言提供的函数:toupper(),tolower()
使用这两个函数需要引入头文件:#includectype.h
示例代码:
输入如下
2.自己编写转换函数:
因为大小写之间的ASCII码值的差值是固定的,因此可以使用‘a’-‘A’来获取差值。
实例代码:
输出如下:
3.异或0x20来实现转换:
0x20是16进制,表示为2进制是00100000,这样可能还是不明显,转换为10进制,其实就是32
对了,还是利用32.
异或:相同为0,不同为1. 也就是说,任何数字与0异或都是它本身。
所以将其他位都设为0,把第6位(从左向右)设置为1,也就是0x20
如果第6位是1,则异或结果为0.
如果第6位是0,则异或结果为1.
实现了加减32的操作。
示例代码:
输入如下:
希望可以帮到你。。。
用ctype.h中的函数tolower和toupper。前者以大写的字符作为参数,返回相应的小写字符;后者以小写的字符作为参数,返回相应的大写字符。
#include ctype.h
#include stdio.h
int main()
{
char c = 'A';
printf("%c", tolower(c)); //a
c = 'b';
printf("%c", toupper(c)); //B
return 0;
}
如果没有相应的大小写,函数会返回字符本身。
#include ctype.h
#include stdio.h
int main()
{
char c = '0';
printf("%c", tolower(c)); //0
printf("%c", toupper(c)); //0
return 0;
}