c语言大写字母变成小写write4.5是不是常量?

下面介绍C语言常量常量是在程序执行过程中,其值不发生改变的量,分为直接常量和符号常量两种。直接常量直接常量又分为整型常量,实型常量,字符型常量和字符串常量。1. 整型常量整型常量即整数,包括正整数、负整数和零。C语言中,整型常量可以用十进制、八进制和十六进制表示。八进制表示:由数字0~9,正、负符号组成,如369,-663等;十进制表示:以o为前缀,其后由数字0~7组成,如0163,036等;八进制数一般是无符号数。如0192,-011都是不合法的八进制常量。十六进制表示:以0x或0X为前缀,其后由数字0~9和字母A–Z(字母大小写均可)组成,如0x12cd,0X6Fa等。十六进制数一般是无符号数。注意:(1)在一个整型常量后加一个字母u或U,认为是unsigned int 型,如246U.(2)在一个整型常量后加一个字母l或L,认为是long int 型,如12L。2.实型常量实型常量即实数,又称为浮点数。C语言中,实数只能用十进制数表示,实数的表示方法有两种:小数形式和指数形式。(1)小数形式:由整数部分、小数点和小数点部分组成,当整数部分或小数部分为0时可以省略不写,但是小数点不可以省略。如12.345,3.,-.123等均为正确的实数。(2)指数形式:由尾数部分,字母E或e和指数部分组成,格式为:±尾数E指数。如1.23E-2、3.14E+3等,它们表示的数值分别为0.0123、3140.00.注意:(1)以小数形式表示实数时,必须有小数点,并且小数点的前、后至一边要有数字。(2)以指数形式表示实数时,字母E或e的前后必须有数字,并且指数指数部分只能是整数。如12.-E3、1.5E、E6都是不正确的实数。在C语言中,实型常量默认为是double型的实数,如果在数的后面加字母f或F(如 1.65f、654.87F),则认为是float型的实数。3.字符型常量字符常量指单个字符,用一对双引号及其括号所括起的字符表示。如’a’、‘B’、‘=’、‘&’、‘?’等都是合法的字符常量。在C语言中,字符常量有以下特点:(1)字符常量只能用括号括起来,不能用双引号或其它括号。(2)字符常量只能是单个字符,不能是字符串。(3)字符可以是ASCII字符集中的任意字符。按ASCII码的大小,不同的字符之间存在着次序,以字符的ASCII码值按升序连续排列。如小写字母的ASCII码大于大写字母的ASCII码,大写字母的ASCII码大于数字的ASCII码。使用字符常量时,每个字符在内存中占用一个字节,用于存储他的ASCII码值。所以C语言中的字符常量具有数值特征,可以像整数一样参与运算,此时相当于对字符的ASCII码值进行运算。如4和‘4’是不同的,‘4’+1的值是53,因为‘4’的ASCII码值是52,字符‘a’的ASCII码是97,则’a’+1=98,对应于字符‘b’。这是因为字母’a’~‘z’的ASCII码按升序连续排列,字符‘a’的ASCII码值加1,就是字符’b’的ASCII码值。另外,对于控制符(如回车,换行等)与不可见字符,在C语言中通过转义字符来表示。转义字符是用’\‘开头后面加上一个字符或用八进制、十六进制表示的ASII码值组成。‘'的作用是改变其后面的字符或ASCII码值的原有意义,转义为另外的的含义。常见的转义字符如表:转义字符|转义功能
ASCII码值\0
空字符
0\a
响铃
7\b
退格
8\t
水平制表符|9\n
回车换行
10\v
竖向跳格
11\f
换页
12\r
回车
13\"
双引号
34\’
单引号
39 \?
问号
63\
反斜线
92\ddd
1~3位八进制所代表的字符|\xhh
1~2位十六进制所代表的字符|说明:转义字符形式上由多个字符组成,但它是一个字符常量,只代表一个字符。转义字符的使用方法与一般字符常量的用法相同。#include<stdio.h>
int main()
{
char b,c,d,e;
b='\43';
c='\103';
d='\x2a';
e='\x41';
printf("b=%c,c=%c,d=%c,e=%c\n",b,c,d,e);
printf("\"good\40morning!\b\"!\n");
printf("\123456");
return 0;
}
4.字符串常量字符串常量是由一对双引号”“括起来的零个或多个字符序列,如:“Hello world”。字符串中可以使用空格字符、转义字符和其他字符,也可以使用汉字等汉字符号。如:”china"、”你好Visual C"、”\t Visual C“等。字符串中还可以使用空字符,如:”“表示空串,即不包含任何字符。字符串常量在内存中占用一段连续的存储单元,系统自动在字符串的尾部加上’\0’作为字符串的结束标志,因此,n个字符组成的字符串,在内存中占用n+1个字节空间。可以使用sizeof运算符来计算字符串占用的内存空间大小。如字符串常量”Hello World“占用12个字节的内存空间:字符串的长度等于该字符串中所包含的有效字符个数,如" Hello World"的长度为10。在字符串中如遇到‘\0’则认为该字符串结束。如”Hello\0World"的长度为5。如果字符串中有转义字符,则转义字符可以作为一个字符,如:“Hello World\t"的长度为11。也可以使用strlen()函数来计算字符串长度。需要注意的是:字符常量和字符串常量在内存中的存储情况是不同的,如‘6’在内存中占1个字节,存储的是ASCII码,而”6“在内存中占2个字节,一个字节存储‘6’,另一个字节存储‘\0’。可以把一个字符常量赋予一个字符变量,但不能把一个字符串常量赋予给一个字符常量,在C语言中,由于没有提供字符串类型的变量,字符串一般用字符数组来解决。关于数组我在后面会介绍。符号常量在C语言中,可以用一个标识符来表示一个常量,称之为符号常量。符号常量在使用前必须先定义,一般形式为:#define 标识符 常量值其中#define是一条编译预处理命令,称为宏定义命令,其功能是把该标识符定义为其后的常量值,该标识符称为符号常量。一个#define命令只能定义一个符号常量,若要定义多个符号常量,需要使用多个#define命令。来看个例子:#include<stdio.h>
#define PRICE 20
int main()
{
int num,total;
num=10;
total=num*PRICE;
printf("总价格为:%d\n",total);
return 0;
}
程序中PRICE为符号常量,其值为20。当商品单价发生改变时,只要修改PRICE的值即可。符号常量的使用,可以为编写程序提供很多好处:增加程序的可读性:通过标识符就知道该常量的意思,即见名知义。提高程序的可维护性:通过符号常量使得修改常量很方便,只需要在常量的定义处修改即可。简化程序的代码:通过符号常量可以简化复杂表达式的重复输入。方便数组的定义:可以将整型符号常量作为数组的长度。

我要回帖

更多关于 c语言大写字母变成小写 的文章

 

随机推荐