C语言串讲笔记Word文件下载.docx
- 文档编号:8285410
- 上传时间:2023-05-10
- 格式:DOCX
- 页数:77
- 大小:203.48KB
C语言串讲笔记Word文件下载.docx
《C语言串讲笔记Word文件下载.docx》由会员分享,可在线阅读,更多相关《C语言串讲笔记Word文件下载.docx(77页珍藏版)》请在冰点文库上搜索。
是描述算法过程很方便、同时脱离了对机型的要求,能在任何计算机上运行的计算机语言。
又称为“面向过程的语言”。
用高级语言编写的程序称为源程序。
高级语言程序的执行有两种:
一种是翻译一句执行一句,称为“解释执行”方式,完成翻译工作的程序就称为“解释程序”;
一种是全部翻译成二进制程序后再执行,承担翻译工作的程序就称为“编译程序”,编译后的二进制程序称为“目标程序”。
C语言的主要特点:
比其它高级语言更接近硬件,比低级语言更容易描述算法,程序易编、易读、易查错、易修改。
可以说兼有高级语言和低级语言的优点。
C语言既可以用来编写系统软件,也可以用来编写应用软件。
1.编译程序的功能是()
A.将汇编语言程序转换为目标程序
B.将汇编语言程序转换为高级语言程序
C.将高级语言程序转换为目标程序
D.将高级语言程序转换为汇编语言程序
答案:
C
第二章 C语言的基本知识
C语言的基本词法
1字符集
C语言的字符集就是ASCII字符集,主要包含下列几类:
(1)大小写英文字母A~Z、a~z(52个)
(2)数字0、1、2、…、9(10个)
(3)非字母数字的可显示字符(33个)键盘可输入的字符。
字符集的真题
1.C语言不能选用的字母是()
A.wB.πC.ID.i
B
2.转义字符
在C语言的字符集中,还有一些不可显示的字符,C语言使用所谓的“转义字符”在程序中表示这些字符。
转义字符由“反斜杠字符\”开始后跟单个字符或若干个字符组成。
\n
\t
\v
\b
\r
\f
回车换行符号
Tab符号
垂直制表符号
左退一格符号
回车符号
换页符号
\a
\"
\’
\\
\ddd
\xhh
响铃符号
双引号
单引号
反斜杠
1~3位8进制数ddd对应的符号
1~2位16进制数hh对应的符号
转义字符的有关真题
1.下列不正确的转义字符是()
A.′\\′B.′\″
C.′\086′D.′\0′
2.下列转义字符中错误的是()
A′\000′B.′\14′
C.′\x111′D.′\2′
3.保留字
auto
break
case
char
continue
const
default
do
double
else
enum
自动
中止
情况
字符
继续
常量
缺省
做
双
否则
枚举
extern
float
for
goto
int
if
long
register
return
short
signed
外部
浮点
对于
转向
整
如果
长
寄存器
返回
短
带符号
sizeof
static
struct
switch
typedef
union
unsigned
void
volatile
while
计算字节数
静态
结构
开关
类型定义
共用
无符号
空
可变的
当
说明:
1、所有的保留字均由小写字母组成的,一旦有一个字母大写,其不再是保留字原来的含义。
2、根据关键字的作用,可分其为数据类型关键字、控制语句关键字、存储类型关键字和其它关键字四类。
•保留字的有关真题
•1.下列标识符中,不是C语言保留字的是()
•charB.while
•C.minD.default
•答案:
•2.下列不属于C语言保留字的是()
•C.typedefD.look
D
•3.表示空类型的保留字是。
void(注意一定小写)
•数据类型关键字(12个):
char,double,enum,float,int,long,short,signed,struct,union,unsigned,void
•控制语句关键字(12个):
break,case,continue,default,do,else,for,goto,if,return,switch,while
•存储类型关键字(4个):
auto,extern,register,static
•其它关键字(4个):
const,sizeof,typedef,volatile
4.标识符
标识符是用户自定义的字符序列,比如符号常量名、变量名、数组名、函数名等。
C语言规定,标识符是由字母或下划线开头的字母、数字、下划线组成的字符序列。
标识符中的字母是区分大小写的。
标识符的有关真题
1.正确的C语言用户自定义标识符是()
A.printB.floatC.whenD.random
A
2.可以用作C程序标识符的一组是( )
A.printoodbaBc
B.i\amone-half3pai
C.Pxqline#His.age
D.Cppwhilepow
3.C语言标识符的第一个字符必须为下划线或者。
字母
C程序构成的特点:
(1)C程序是由若干个函数构成的。
每个C程序有且仅有一个主函数,该主函数的函数名规定为main。
(2)每个函数(包括主函数)的定义分为两个部分:
函数头和函数体。
函数头:
返回值的类型函数名(类型形式参数1,...)
函数体:
{数据定义部分
实现函数功能的语句串
}
函数名后面的一对圆括号“()”是用来写函数的参数的。
参数可以有,也可以没有,但圆括号不能省略。
(3)C程序中的每个语句以“分号”作为语句的结束,“分号”是C语句的组成部分,不可以省略。
(4)用“/*”和“*/”括住的任意字符序列,称为“注释”。
源程序编译时,注释被忽略。
(5)C程序的书写格式很灵活,在一行上可以书写多个语句,一个语句也可以写在多行上。
在程序清单的任何一处都可以插入空格符号或回车符号。
但是,为了程序清单层次分明、便于阅读,通常都采用缩格并对齐的书写方法。
(6)C程序的执行总是从主函数开始,并在主函数中结束。
主函数和其它函数的位置是任意的。
其它函数总是通过函数调用语句被执行。
(7)主函数可以调用任何其它函数;
任何其它函数都可以相互调用,但不能调用主函数。
(8)C语言编译系统区分字母大小写。
C程序构成的真题
1.构成一个C程序的是()
A.一个主函数和若干个非主函数
B.若干个主函数和若干个非主函数
C.一个主函数和最多一个非主函数
D.若干个主函数和最多一个非主函数
2.组成C语言程序的是()
A.过程B.函数C.子程序D.主程序和子程序
答案:
3.一个C程序一般由若干个函数构成,其中至少应包含一个函数。
主
4.C语言程序编译时,程序中的注释部分()
A.参加编译,并会出现在目标程序中
B.参加编译,但不会出现在目标程序中
C.不参加编译,但会出现在目标程序中
D.不参加编译,也不会出现在目标程序中
第三章 基本数据类型、运算符和表达式
C语言数据类型及分类关系图
┌带符号整型
┌带符号整型┼带符号短整型
│└带符号长整型
┌整型┤┌无符号整型
│└无符号整型┼无符号短整型
│└无符号长整型
┌基本类型┤┌单精度型
│├实型┤
││└双精度型
│└字符型
数据类型┤┌数组型
├构造类型┤
│└结构型
├指针型
└空类型(void)
C语言数据类型的真题
1.属于C语言基本数据类型的是()
A.指针型B.无符号整型
C.数组型D.结构型
整型常量
在C语言中,整型常量有三种书写形式:
(1)十进制整数:
由数字0-9和正负号表示。
如:
0、-111、+15、21等。
(2)八进制整数(在前面0)。
例如00、-0111、+015、021。
(3)十六进制整数(在前面0x)。
例如0x0、-0x111、+0xff、0x2d。
整型常量在一般微型机中占用2个字节,数值范围都是十进制的-32768+32767。
长整型常量(在整数的末尾字母“L”):
长整型常量在计算机中占用4个字节。
10和10L是不同的整型常量,虽然它们有相同的数值,但它们在内存中占用不同数量的字节。
常量的真题
1、C语言的长整型数值在计算机中占用的字节个数是()
A.1B.2C.3D.4
2、在C语言中,整型常量的书写形式包括:
八进制、十进制和进制。
十六
实型常量
实型常量只使用十进制,它的书写形式有两种:
1、十进制数形式:
(必须有小数点)如0.123,.123,123.0,0.0,123.
2、指数形式:
(e或E之前必须有数字;
指数必须为整数)如:
12.3e3,123E2,1.23e4,e-5,1.2E-3.5
1、实型常量在一般的微型机中占用4个字节数。
2、实型常量有效数字是7位。
实型常量的真题
1.C语言中,错误的int类型的常数是( )
A.1E5B.0C.037D.0xaf
2、在C语言中,一个双精度数-5.88在二进制文件里占用的字节数是。
8
字符常量
字符常量用两个单引号(’)前后括住的单个字符来表示。
例如,’a’、’1’、’%’、’A’、’\n’、’\101’。
1、C语言规定,字母是区分大小写的。
2、在内存中,每个字符常量都占用一个字节,具体存放的是该字符对应的ASCII代码值。
3、在C语言中,一个字符常量也可以看成是“整型常量”,其值就是该字符的ASCII代码值。
例如,’a’,可以看作是97。
4、如果其值在0~127之间,整型常量也可以将其看成一个字符型常量.例如97,可以当成字符常量’a’来使用。
字符常量真题
1.设charx=′a′;
则printf(″x=﹪c,y=﹪c\n″,x,97);
的输出是()
A.x=a,y=97B.x=97,y=a
C.x=97,y=97D.x=a,y=a
2.设chara=‘\70’;
则变量a中( )
A.包含1个字符B.包含2个字符C.包含3个字符D.是非法表示
字符串常量
字符串常量简称为“字符串”。
字符串就是用两个双引号("
)前后括住的一串字符。
空字符串:
没有字符的字符串称为“空字符串”。
例如,"
"
。
字符串的长度:
一个字符串中所有字符的个数称为该字符串的长度
例如,“”的长度为0;
“ab12c”的长度为5;
"
\101\n\x43ab"
的长度为5
1、空串与空格串是不同的。
空串前者不含任何字符,长度为0;
空格串是包含若干空格字符的字符串其长度为所含空格字符的个数。
2、每个字符串在内存中占用的字节数等于字符串的长度+1。
其中最后一个字节存放的字符为“空字符”,其值为0,书写时常用转义字符“\0”来表示,称为字符串结束标记。
字符串常量真题
1.下列数据中,不是C语言常量的是()
A.′\n′B.″a″C.e-2D.012
2.字符串″ABCD\t\\\123″的长度是。
7
符号常量
符号常量的定义方法如下:
#define符号常量常量
【例】#definePI3.14159
1、符号常量标识符的规则构成,建议用大写英文字母组成。
其中的常量可以是任何类型的常量。
2、符号常量的定义一般放在程序的开头,每个定义必须独占一行,其后不跟分号。
宏定义命令
宏定义命令的一般格式如下:
#define宏名一串符号
1、其中的“#”表示这是一条预处理命令。
凡是以“#”开头的均为预处理命令。
“define”为宏定义命令。
“一串符号”可以是常数、表达式、格式串等。
2、当对源程序清单进行编译之前,将把所有的“宏名”替换成对应的“一串符号”,切不可自行添加其它符号。
3、宏可以嵌套宏定义
宏定义的真题
1.下列叙述中,正确的是()
A.引用带参的宏时,实际参数的类型应与宏定义时的形式参数类型相一致
B.宏名必须用大写字母表示
C.宏替换不占用运行时间,只占编译时间
D.在程序的一行上可以出现多个有效的宏定义
2.在下列有关宏替换的叙述中,正确的说法是()
A.宏替换占用运行时间
B.宏名有类型
C.带参数的宏替换和函数等价
D.宏替换只是字符替换
3.下列程序的运行结果是()
#defineA5
#defineBA+1
main()
{inta;
a=B;
printf(″%d\n″a--);
A.6B.5C.4D.出错
变量
变量的概念
在程序运行过程中,其值可以被改变的量称为变量。
变量的四个要素
(1)变量名。
每个变量都必须有一个名字──变量名,变量命名遵循标识符命名规则。
(2)变量值。
在程序运行过程中,变量值存储在内存中。
(3)变量类型:
intcharfloat等
(4)变量的存储类型:
aotoregisterstaticexit
变量的数据类型及其定义
数据类型
数据类型符
占用字节数
数值范围
整型
2(或4)
同短整型(或长整型)
短整型
2
-32768~+32767(-215~215-1)
长整型
4
-~+
(-231~231-1)
无符号整型
unsigned[int]
同无符号短整型(或长整型)
无符号短整型
unsignedshort
0~65535(0~216-1)
无符号长整型
unsignedlong
0~(0~232-1)
单精度实型
-1038~1038(保留7位有效数字)
双精度实型
-10308~10308(保留11位有效数字)
字符型
1
-128~+127
有名常量的定义
定义方法如下:
const数据类型符变量名1=初值1,变量名2=初值1,...;
有名常量的值是通过赋初值的方式获得,不能用赋值方式获得值。
而且,获得初值后,程序中将不能改变其值。
【例】定义有名常量举例。
constcharchar_y=’Y’,char_n=’N’;
/*定义字符型有名常量char_y和char_n,其值分别为字符Y和N*/
运算符
算术运算符(+、-;
+、-、*、/、%)
(1)除运算(/)和运算对象的数据类型有关。
例如,14/5=21/2=01/2.0=0.51.0/2=0.5。
(2)模运算(%)的对象必须是整型数据,结果是整除后的余数,运算结果的符号必须与被除数相同。
例如,14%5=414%-5=4-14%5=-4-14%-5=-4。
增1、减1运算符(++--)
注意:
增1、减1运算符的运算对象是变量,不能是常量或表达式。
关系运算符(>
=、>
、<
=、<
==、!
=)和逻辑运算符(&
&
||!
)
说明:
(1)关系运算和逻辑运算的结果是整型数据0或1。
(2)运算符的优先级如下:
!
优先于双目算术运算符优先于关系运算符优先于&
优先于||
注意:
用&
对两个表达式进行计算时,若第一个表达式的值为“假”,则运算结果与第二个表达式的值无关,结果肯定为“假”,所以C语言规定此时第二个表达式将不再计算。
同样用||对两个表达式进行计算时,若第一个表达式的值为“真”,则运算结果与第二个表达式的值无关,结果肯定为“真”,所以C语言规定此时第二个表达式也不再计算。
赋值运算符(=)
算术自反赋值运算符(+=-=*=/=%=)
(1)算术自反赋值运算符和赋值运算符的优先级是相同的,只比逗号运算符高。
(2)自反赋值运算符右边的表达式是自动加括号的。
【例】“c%=a-3”不能理解为“c=c%a-3”,应理解为“c=c%(a-3)”。
逗号运算符(,)
(1)由逗号运算符组成的式子也是表达式,其值等于右边表达式的值。
(2)任何运算符都优先于号运算符。
条件运算符(?
:
)
(1)条件运算符是唯一的三目运算符。
(2)条件运算符的优先级:
优先于赋值、算术自反赋值运算符逗号运算符(排倒数第三)
长度运算符(sizeof())
【例】设变量定义如下:
intn;
表达式sizeof(n)的值是2。
表达式sizeof(long)的值是4。
位运算符(~&
|^)
位运算的对象只能是整型数据(包括字符型)。
运算结果仍是整型数据。
a
b
a&
a|b
a^b
位移位运算符(<
<
左移,>
>
右移)
运算符真题
1.下列表达式的值为0的是()
A.3﹪5B.3/5.0C.3/5D.3<
5
2.设inta=3;
则表达式a<
1&
--a>
1的运算结果和a的值分别是
()
A.0和2B.0和3C.1和2D.1和3
3.设intm1=5,m2=3;
表达式m1>
m2?
(m1=1):
(m2=-1)运算后,m1和m2
的值分别是()
A.1和-1B.1和3C.5和-1D.5和3
4.设floatm=4.0,n=4.0;
使m为10.0的表达式是()
A.m-=n*2.5B.m/=n+9C.m*=n-6D.m+=n+2
5.表达式5&
2||5|2的值是()
A.0B.1C.2D.3
6.设intx=-1;
执行表达式++x||++x||++x后,x的值是()
7.设intx;
则执行printf(″%x\n″,~x^x);
的结果是()
A.0B.1C.ffD.ffff
8.C语言中计算a3正确的表达是()
A.a^3B.pow(a,3)C.a**3D.power(a,3)
9.不用第三个变量,将变量a和b的值进行互换的操作是()
A.a+=b;
b-=a;
a-=b;
B.a+=b;
b=a-b;
C.b-=a;
D.b-=a;
a=b-a;
a+=b;
10.设inta=1,b=2,c=4;
经过表达式(c=a!
=b)&
(a==b)&
(c=b)运算后,a、b和c的值分别是()
A.1,2,0B.1,2,1
C.1,2,2D.1,2,3
11.若定义了inta,x,y;
,则下列语句中不正确的是()
A.x=3,y=5;
B.++x;
C.x=y+=x*30;
D.a=y+x=30;
12.若定义了x=100;
,则表达式x++>
100?
x+20:
x+10的值是()
A.110B.111C.120D.121
13.执行语句printf(″%x″,-1);
后输出结果是()
A.-1B.–ffffC.1D.ffff
14.设floata=2,b=4,c=3;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 串讲 笔记