3.基本数据类型

基本数据类型


常量

  • 定义:程序运行时其值不能改变的量(即常数)

  • 分类:符号常量:用标识符代表常量

    ​ 定义格式:#define 符号常量 常量 例子:pi 3.14

    ​ 直接常量:

    ​ 整型常量(整常数)

    ​ 实型常量(实数或浮点数)

    ​ 字符常量

    ​ 字符串常量

# 整型常量(整常数)
三种形式:十进制整数:由数字0-9和正负号表示				
		八进制整数:由数字0开头 (0-7)
		十六进制整数:由0x开头 (0-9,A-F或a-f)
		
# 实型常量(实数或浮点数)
表示形式:十进制小数形式:0.2 (.2 , 2. 也是实型常量,2是整型常量)条件:						   1,有点;2,至少一边有数字
		指数形式:1.2E-3 表示1.2✖10的-3次方 (规定:E或e两边都要有数;				右边必须是整数)
		
# 字符常量
定义:用单引号括起来的单个普通字符或转义字符
常规字符:例如:'A','2','#'等
转义字符:由一个反斜杠“\”后跟规定字符构成

# 字符串常量
定义:用双引号括起来的字符序列
存储:每个字符串尾自动加一个'\0'作为字符串结束标志
'c' 'h' 'i' 'n' 'a' '\0'

'a'和"a"区别:'a':字符常量;"a"字符串常量;显示:'a'=a ; "a"=a\0

ASCLL就是十进制数据

a —> 97 ; A —> 65

printf("ABCD\tEF\bGH\n"); # \t八个占位 ; \b把左侧字符删掉 ; \n换行
ABCD    EGH
printf("\\123\\\n"); # 第一个\是转义字符的开始 ;\\只输出一个\
\123\
printf("\'1234\'\t5678\n");  
'1234'  5678

变量

概念:是指在程序运行期间值可以发生变化的量。
作用:变量是一个存储数据的容器,即存储单元,它的功能就是用来存放程序中需要处理的数据。
变量的基本操作:
1,赋值
2,取值
变量的命名:遵守c语言标识符的命名规则。
变量的使用原则:先定义后使用。
变量定义的语句的一般形式为:类型标识符	变量名;

# 整型变量
占节数随机器不同而不同,一般占一个机器字
short(2B)<=int<=long(4B)
可用sizeof(类型标识符)测量

# 实型变量
float:占4字节
double:占8字节

# 字符型常量
字符变量存放字符ASCII码
char与int数据间可进行算术运算
# 习题
float f=24.56
printf("%f\n",f);
%f规定六位小数 ,结果显示必须为六位
结果:24.560000

char c1='A',c2=100;
printf("%d,%c\n",c1,c2);  # 65,d
c1=c1+32;
c2=c2-32
printf("%c,%d\n",c1,c2);  # a,68

#define PRICE 12.5		宏定义
main()
{	int num=3;			变量定义
	float total;			变量定义
	char ch1,ch2='D';		变量定义
	
	total=num*PRICE;
	ch1=ch2-'A'+'a'
	printf("total=%f,ch1=%c\n",total,ch1);		输出结果
}


%d:十进制
%f:六位小数
%c:字符原型
%0:八进制
%x:十六进制
A=65
d=100

数据类型转换

强制类型转换符

形式:(类型名)表达式

(int)2.2

(int)5.5/(int)2.5

自动转换

设char w;int x;float y;double z; ,则表达式

w*x+z-y的值的类型是: double

运算符和表达式

算术运算符和算术表达式

基本算术运算符:+ - * / %

结合方向:从左向右

优先级:+ - —> * / % —> + -

说明:"-"作为单目运算符时,右结合性 2+(-3)

a/b: a,b均整数,结果也是整数 ; a,b有实型,结果也是实型

赋值运算符和其表达式

1.赋值运算符:

2.赋值表达式:变量=表达式

例如:x=5

​ x+5=x+5

4.优先级:仅高于逗号运算符

5.结合性:自右向左

说明:

赋值表达式尾部加上分号,构成赋值语句,例如:y=x+10;

6.复合赋值运算符:+=,-=,*=,/=,%=

优先级:仅高于逗号运算符

结合性:自右向左

a+=2;等效于a=a+2;

a-=2;等效于a=a-2;

a=2;等效于a=a2;

自增自减运算

运算符:自增(++)、自减(--)

作用:自增运算使单个变量的值增1,自减运算使单个变量的值减1。

用法与运算规则:

※前置运算:+ + i ,- - i

先增减、后运算

※后置运算:i + + , i - -

先运算,后增减

逗号运算符和表达式

形式:表达式1,表达式2,......表达式n

结合性:从左向右

优先级:最低

逗号表达式的值:等于表达式n的值

逗号功能:运算符或分隔符

关系运算符和表达式

关系运算符

种类:< <= == >= > !=

结合方向:自左向右

优先级别:< <= > >= 优先级6(高);== != 优先级7(底)

关系表达式的值:是逻辑值“真”或“假”,用1和0表示

逻辑运算符和表达式

逻辑运算符种类:!(非) &&(与) ||(或)

逻辑运算真值表:

注:C语言中,运算量:0表示假,非0表示真

​ 运算结果:0表示假,1表示真

与:有假为假;或:有真为真

优先级:! && ||

短路特性:

逻辑表达式求解时,并非所有的逻辑运算符都被执行,只是在必须执行下一个逻辑运算符才能求出表达式的解时,才执行该运算符

条件运算符与表达式

一般形式:expr1? expr2: expr3

执行过程:expr执行为真则执行expr2,为假则执行expr3

优先级:13

条件运算符可嵌套

结合方向:自右向左

数据输入与输出

C语言无I/O语句,I/O操作由函数实现

include <stdio.h>

数据输出:

(1)字符输出函数

格式:putchar(c)

参数:c为字符常量,变量或表达式

功能:把字符c输出到显示器上

(2)格式输出函数

格式:printf(“格式控制串”,输出表)

功能:按指定格式向显示器输出数据

输出表:要输出的数据(可以没有,多个时以 “,” 分隔)

格式控制串:包含两种信息

格式说明:%[修饰符]格式字符,用于指定输出格式

普通字符或转义序列:原样输出

格式字符

说明:格式字符要用小写

格式字符与输出项个数应相同,按先后顺序一一对应

输出转换:格式字符与输出项类型不一致,自动按指定格式输出

补充:

说明:输出右对齐,左补空格;指定小于实际,原样输出

说明:%m.nf ;m为数据总长,n为小数位,实际>n则四舍五入,实际<n则补零

说明:输出格式少于输出项,多余的输出项将不输出

数据输入

(1)字符输入函数

格式:getchar()

功能:从键盘读一字符

(2)格式输入函数

格式:scanf(“格式控制串”,地址表)

功能:按指定格式从键盘读入数据,存入地址表指定的存储单元中,并按回车键结束。

地址表:变量的地址,常用取地址运算符&

输入分隔符的指定:

一般以空格或回车键作为分隔符

其他字符做分隔符:格式串中两个格式符间字符

交换语句例子:t=a;a=b;b=t;

字符前不能有空格,否则接收到的是空格!

posted @ 2022-09-13 15:28  郑琰  阅读(158)  评论(0编辑  收藏  举报
#

# #