重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
有三种方法:
创新互联公司专注于企业营销型网站、网站重做改版、牟定网站定制设计、自适应品牌网站建设、H5开发、商城系统网站开发、集团公司官网建设、外贸营销网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为牟定等各大城市提供网站开发制作服务。
1,用小写字母减去32,eg: ch-32
2,用小写字母和32做异或运算 ch^32
3,利用库函数toupper(ch)
这三种方法都可以把小写字母转化成大写字母,根据情况使用,可以简化程序
C语言中,字符的存储都是使用ascii值来存储的。
根据ASCII码表,我们可以看出:大、小写字母都是按顺序进行存储的,大写字母的ASCII值区间为:65~90,对应的字母为:'A'-'Z';小写字母的ASCII值区间为:97~122,对应的字母为:'a'-'z',因此,将小写字母转化为大写字母,可以直接将该变量减32即可得到对应的大写字母,如:
char ch='a';
printf("upper case '%c'='%c'\n", ch, ch-32 );
如果记不清,大小字母谁大谁小,则可以采用如下方法进行转换:
char ch='x';
printf("upper case '%c'='%c'\n", ch, ch-'a'+'A' ); //减a得到偏移值,加A得到相应的大写字母
#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
用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;
}
你的程序里面获取循环的位置不对,也就是获取的字符串长度的n应该放在函数里面。
讲n=strlen(s)放到函数里面,就可以了。
1、
char ch= 'a';
ch-= 32;
2、
strupr
原型:extern char *strupr(char *s);
用法:#include string.h
功能:将字符串s转换为大写形式
说明:只转换s中出现的小写字母,不改变其它字符。返回指向s的指针。
举例:
// strupr.c
#include syslib.h
#include string.h
main()
{
char *s="Copywrite 1999-2000 GGV Technologies";
clrscr();
printf("%s",strupr(s));
getchar();
return 0;
}
相关函数:strlwr