第一讲 C语言的基础知识.docx
- 文档编号:5886330
- 上传时间:2023-01-01
- 格式:DOCX
- 页数:11
- 大小:28.72KB
第一讲 C语言的基础知识.docx
《第一讲 C语言的基础知识.docx》由会员分享,可在线阅读,更多相关《第一讲 C语言的基础知识.docx(11页珍藏版)》请在冰豆网上搜索。
第一讲C语言的基础知识
第一章C语言的基础知识
本章考点:
考点
考核几率
分值
C语言的概述
20%
1~2
标识符、常量和变量
100%
2~7
算术运算符及算术表达式(难点)
80%
2~5
赋值运算符及赋值表达式
80%
2~5
自加自减运算、逗号表达式(难点)
100%
2~4
位运算(难点)
80%
1~2
§1.1C语言的初步认识
1.C语言的基本构成和格式
①main()
②{
③inta,b,sum;/*定义变量*/
④a=10;/*把整数10赋值给变量a*/
⑤b=20;/**/
⑥sum=a+b;/**/
⑦printf(“%d\n”,sum);/*输出计算结果*/
⑧}
2.知识点
(1)C程序由函数组成,函数是C语言程序的基本单位;
(2)main函数格式:
main()
{
函数体
}
main函数必须有且只能有一个。
其中main是函数名,小括号不能省略。
C程序总是开始于main函数,结束于main函数;
(3)变量的定义,每个变量之间必须用逗号隔开,遵循“先定义后使用”;
(4)赋值;
(5)C语言中每条语句都以分号“;”结束,分号是语句结束的标志;
(6)函数体:
定义语句和执行语句。
定义语句必须出现在执行语句之前;
(7)C语言程序书写格式自由,一般遵循一个语句一行,便于阅读。
3.往年考题分析:
(1)以下叙述中正确的是
A)C程序中的注释只能出现在程序的开始位置和语句的后面
B)C程序书写格式严格,要求一行内只能写一个语句
C)C程序书写格式自由,一个语句可以写在多行上
D)用C语言编写的程序只能放在一个程序文件中
(2)对于一个正常运行的C程序,以下叙述中正确的是
A)程序的执行总是从main函数开始,在main函数结束
B)程序的执行总是从程序的第一个函数开始,在main函数结束
C)程序的执行总是从main函数开始,在程序的最后一个函数中结束
D)程序的执行总是从程序的第一个函数开始在程序的最后一个函数中结束
(3)以下叙述中正确的是
A)C程序的基本组成单位是语句B)C程序中的每一行只能写一条语句
C)简单C语句必须以分号结束D)C语句必须在一行内写完
§1.2标识符
1.什么是标识符?
在C语言中用于标识名字的有效字符序列成为标识符。
标识符可以用作常量名,变量名,符号名,函数名,指针名和数组名等。
2.标识符的命名规则
(1)标识符只能由字母、数字和下划线组成。
注意;“-”不能作为用户标识符,注意与下划线“_”的区别;
(2)标识符不以数字开头。
(3)标识符的大小写字母是有区别。
(4)“见名知意”:
3.标识符的分类:
关键字:
关键字是具有特定的含义的、专门用来说明C语言特定成分的一类标识符。
关键字均由小写字母组成。
预定义标识符:
已被使用的标识符。
包括库函数名字和编译预处理命令名。
用户标识符:
用来给变量、函数、数组或者指针等命名。
不能与关键字相同;预定义标识符可以作为用户标识符使用。
预定义标识符、用户标识符、关键字都必须符合
(1)、
(2)、(3)点。
4.往年考题分析:
(1)以下选项中不合法的标识符是
A)printB)FORC)&aD)_00
(2)可在C程序中用作用户标识符的一组标识符是
A)andB)DateC)HiD)case
_2007y-m-dDr.TomBig1
(3)按照C语言规定的用户标识符命名规则,不能出现在标识符中的是
A)大写字母B)连接符C)数字字符D)下划线
§1.3数制转换
1.数字的四种表示形式:
二进制、八进制、十进制、十六进制。
2.进制间的转换:
例子
十进制->二进制、八进制、十六进制:
除以基数(2/8/16),反取余;
(27)10=()2=()8=()1
二进制、八进制、十六进制->十进制:
每位乘以权值,累加求和;
(11011)2=(21)10(67)8=(55)10(1A2)16=(418)10
(10101)2=1×24+0×23+1×22+0×21+1×20=(21)10
2423222120
§1.4.位运算(20/5)
1.位运算符(~、<<、>>、&、^、|)
高——————————————————————>低
~
<<
>>
&
^
|
取反
左移
右移
与
异或
或
自右向左
同级自左向右
单目运算符
双目运算符
2.位运算注意事项
(1)对象只能是整数或字符型数据。
(2)进行位运算前,一定要先将数据转换成二进制数。
(3)各个位运算符的优先级:
(~)优先级别最高,结合性自右向左;其他结合性自左向右。
注:
字符型数据参与位运算时,采用其ASCII码进行运算。
3.位运算的规则
【注意】所有的位运算均需转换成二进制后在按位进行运算。
若运算量为正数则转换成原码形式,若为负数则转换成补码形式。
1)按位取反运算(~)
按位取反运算符是一个单目运算符,0变1,1变0。
例如:
~3的值为~4。
~00000011
11111100
2)按位左移运算(<<)
表达式格式为:
a<
例如:
3<<2(即3按位左移2位)的值为12
<<0000000000000011
0000000000001100
3)按位右移运算(>>)
表达式格式为:
a>>i表示a向右移动i位,左补符号位。
>>0000000000001100
0000000000000011
【注意】在C语言中要改变变量的值就必须对变量赋值,即对变量进行各种位运算后,若未重新赋值则该变量保持原有值不变。
例如:
a=4;
a>>2;/*表达式的值为1.但a的值还是不变*/
~a;/*表达式的值为-5,但a的值还是4*/
4)按位与运算(&)
a&ba、b对应的二进制位中有一个为0,该按位与运算结果就为0,只有同时为1,则结果即为1,否则为0。
例如:
12&10的值为8。
12=0000000000001100
&10=0000000000001010
8=0000000000001000
5)按位异或运算(^)
a^ba、b对应的二进制位,相同为0,不同为1。
例如:
12^10的值为6。
12=0000000000001100
^10=0000000000001010
6=0000000000000110
按位异或运算可用于交换两个变量的值(不借助中间变量)。
例如:
a=4,b=9通过下列方式均可以交换两个变量的值。
1a=a^b;b=a^b;a=a^b;②a=a+b;b=a-b;a=a-b;③c=a;a=b;b=c;均可以使a=9,b=4
6)按位或运算(|)
只要两个相应二进制位中有一个为1,该按位或运算后结果就为1,否则为0。
例如:
12|10的值为14。
11=0000000000001100
|10=0000000000001010
14=0000000000001110
§1.5整型常量和整型变量
1.整型常量:
常量就是在程序的运行中,其值不变的量。
例如:
inta=10;10就是一个常量是不会变的。
整型常量分为十进制常量、八进制常量、十六进制常量,但记住没有二进制整型常量。
(1)十进制整型常量:
由0~9数字组成。
(2)八进制整型常量:
以数字0开头,其中的数字为0~7。
(3)十六进制整型常量:
以0x或0X开头,其中的数字可以是0~9、a~f,A~F中的数字或是字母。
2.整型变量:
Ø变量就是在程序运行中,其值可以改变的量。
Ø整型变量是用于存放整型值的变量,例如:
inta=10;中的a就是一个整型变量。
整型变包括短整型(shortint)、整型(int)、长整型(longint)和无符号整型(unsigned)。
Ø在内存中,除了带short的两种类型的变量占两个细节外,其他类型的变量都占四个字节。
Ø变量的初始化:
在定义变量的同时给变量赋值。
格式:
类型名变量名
Ø变量必须先定义后使用。
历年考题:
1.有以下程序,其中%u表示按无符号整数输出()
main()
{unsignedintx=0xFFFF; /*x的初值为十六进制数*/
printf(“%u\n”,x);
}/*注意:
x是占两个字节*/
程序运行后的输出结果是
A)-1 B)65535 C)32767 D)0xFFFF
§1.6实型常量和实型变量
实型就是小数。
1.实型常量:
(1)小数形式。
格式:
A.B;小数点的两侧A部分和B部分不可同时省略;
(2)指数形式。
格式:
AE/eB;E/e两侧A部分和B部分都不可省略。
A部分只能是实型小数或十进制整数;
B部分只能是十进制整数,可以有正负号。
口诀:
E前后必须有数,且后面只能是整数。
2.实型变量:
Ø实型变量分为单精度(float)、双精度(double)。
单精度占4个字节,双精度占8个字节。
Ø实型变量只能存放实型值,不能存放整形变量。
Ø实型变量的初始化与整形变量相似。
§1.7算术表达式
1、算术运算符:
高——————————————————————>低
*
/
%
+
-
乘
除
取余
加
减
结合方向:
同级自左向右
结合方向:
同级自左向右
双目运算符
(1)求余%运算符注意事项:
●%求余对象只能是整型;
●求余的结果也只能是整型;
●运算结果的符号与被除数相同;
(2)算术运算符两边的运算对象类型必须一致才能运算,运算结果的类型与运算对象类型一致。
(3)算术运算符类型不一致的情况:
系统会按照(低级—高级)的转换规则将两个运算对象的类型变为一致。
float→doube
↑
long
↑
unsigned
↑
char,short→int
强制类型转换:
强制类型表达式:
(类型名)(表达式)
错误的表达式:
类型名(表达式)
2、算术运算符的优先级
(*、/、%)>(+、-)结合方向:
自左向右
3、算术表达式的计算
先算运算级别高的运算符,再算级别低的运算符。
4*5+8*2%4+12/5=22
§1.8赋值表达式
1.赋值运算符和赋值表达式:
Ø赋值运算符(“=”)
Ø由赋值运算符组成的表达式称为赋值表达式;
Ø赋值表达式的一般格式为:
变量名=表达式
说明:
(1)赋值表达式左边必须是变量,不能是表达式和常量。
(2)赋值运算的作用就是将运算符右边的值赋值给左边的变量,那么在赋值以后变量将存贮右边表达式的值,而右边表达式的值不变。
(3)赋值表达式的值是赋值号左边变量被赋值后的值。
(4)赋值号左右数据类型不一致时,将赋值号右边的类型强制转化为赋值号左边的类型。
Ø赋值运算:
结合方向:
从右至左
2.复合赋值表达式:
将算术表达式和赋值表达式组合在一起组成复合赋值表达式。
(1)+=a+=6a=a+6
(2)-=a-=6a=a-6
(3)*=a*=6a=a*6
(4)/=a/=6a=a/6
Ø任意一种赋值运算符的左侧必须为变量,不能是表达式和常量;整个赋值表达式的值是最左边变量的值。
Ø当赋值运算符左右两边类型不一样,系统会自定进行类型转换。
Ø结合性:
自右向左
3.历年真题练习
§1.9自加、自减(15/15)
1、自加、自减运算符(++、--)
运算符可在变量的前面,也可以在变量的后面,形如i++、++i、i--、--i。
2、运算规则
表达式
运算法则
解析
i++
先引用,后加1;
先应用i的值作为表达式i++的值,然后执行i=i+1;
i--
先引用,后减1;
先应用i的值作为表达式i--的值,然后执行i=i-1;
++i
先加1,后引用;
先执行i=i+1;再引用i的值作为表达式++i的值;
--i
先减1,后引用;
先执行i=i-1;再引用i的值作为表达式--i的值;
3、自加、自减运算的注意事项
(1)运算对象只能为变量,不能是常量或表达式。
如(i++)++、3++都是不合法的。
(2)运算结合方向是从右到左。
(3)表达式“-x++”的分析。
§1.10逗号表达式(5/5)
1.逗号运算符(“,”)
逗号表达式格式:
表达式1,表达式2,···,表达式n
●表达式n的值为整个逗号表达式的值;
●结合性:
从左至右;
●优先级别:
在所有运算符中,逗号运算符优先级最低。
2.课本例题
§1.11字符
1.字符常量分类
(1)一般字符常量
用一对单引号括起来的单个字符,如'A'、'b'、'5'。
(2)转义字符常量
Ø一般转义字符:
在一对单引号内,以“\”开头,后跟一个普通字符。
e.g.\n
Ø八进制转义字符:
\ddd:
ddd表示最多可以有三位8进制数字构成,不需要以0开头。
Ø十六进制转义字符:
\xhh:
hh表示最多可以有二位16进制数字构成,但必须以“\x”开头(在这里,一定注意x不能是大写的X)。
2、字符变量
定义字符变量的格式为:
char变量名;
注:
字符型数据在内存中占1个字节。
‘a’字符的ASCII码值是97;
‘A’字符的ASCII码值是65;
同一字母的大小写之差是32
3、字符型数据参与运算
采用其ASCII码进行运算。
注:
字符型数据可以按“%d”和“%c”输出,注意这两者区别。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第一讲 C语言的基础知识 第一 语言 基础知识
![提示](https://static.bdocx.com/images/bang_tan.gif)