C语言程序设计复习大纲
第一章 C语言与程序的算法
1. C 程序的基本结构
1)以 # 开始的语句称为预处理器指令。
stdio.件中包含了有关输入输出语句的函数,在使用输入输出功能前应用使用
#include<stdio.h> 。
以.h为后缀的文件被称为头文件,可以是 C 程序中现成的标准库文件,也可以是自
定义的库文件。
2)C程序有且仅有一个main() 函数;main() 函数是 C 程序处理的起点;程序的执行总是从main函数开始,在main函数结束。
在函数定义的后面有一个左大括号,即{。它表示函数的开始,后面是函数的主体。
在函数定义的结尾处有一个右大括号,即}。
大括号也可以用于将语句块括起来。
3)C 程序中的一个语句可以跨越多行,并且用分号(语句分隔符)通知编译器该语句已结束。函数主体中的每个语句都以分号结束。
4)函数是C程序的基本构成单位
5)/*...*/表示多行注释。//表示单行注释。
2. 编译和执行C程序
1)编译过程:
2)源程序:是用户创建的文件,以“.c”为文件扩展名保存。
3)目标文件:是编译器的输出结果。这类文件的常见扩展名为“.o”或“.obj”。
4)可执行文件:是连接器的输出结果。可执行文件的扩展名为“.exe”。
5)头文件:含有函数的声明和预处理语句,用于帮助访问外部定义的函数。头文件的扩展名为“.h”。
6)计算机不能直接执行用C语言编写的源程序。
7).obj和.exe的文件都是一个二进制文件。.exe可以直接运行,但.obj文件不能直接运行。
3.算法的特征:算法:解决问题的具体方法和步骤
1)有穷性——算法必须在执行有穷步之后结束,而且每一步都可在有穷时间内完成
1)确定性——每条指令无二义性。并且,相同的输入只能得到相同的输出;
2)可行性(有效性)——对需要执行的每一步操作,必须给出清楚、严格的规定。3)输入——算法有零至多个输入。
4)输出——算法有一个至多个输出
4.流程图
开始/结束
处理
输入/输出
判断/分支
连接符
流程线
第二章数据类型、运算符与表达式
1.变量的命名规则
1)组成:52个字母(A-Z, a-z),10个数字(0-9),下划线(_)
2)开头:字母或下划线
3)注意:不能是关键字,C 语言区分大小写
2.数据类型
1)基本数据类型:int,char,float,double,void
2)整型
整型:int (VC++中占4字节)
无符号整型:unsigned (VC++中占4字节)
短整型: short(VC++中占2字节)
无符号短整型: unsigned short(VC++中占2字节)
长整型: long(VC++中占4字节)
无符号长整型: unsigned long(VC++中占4字节)
3)整型常量
十进制:0~9的数字,前面可添加”+“或”-“,不能以0开始
八进制:0~7的数字,以0为前缀
十六进制:0~9的数字和A~F的字母(大小写均可),以0X或0x为前缀
数字后加L或l表示长整数
数字后加U或u表示无符号数
4)单精度浮点型:float(VC++中占4字节)字符串比较函数实现
5)双精度浮点型:double (VC++中占8字节)
6)实型常量
定点数:0~9数字和小数点组成
指数形式:形式为:aEn(a为十进制数,E大小写均可,n为十进制整数,值为a*10n
7)字符型:char(内存中以ASCII码存放,在其取值饭范围内和整数可以相互通用)如:char c='A'+10;后,c为K
常见的字符相应的ASCII码:’0’:48,’A’:65 ,‘a’:97
小字字母的ASCII码和大字字母的ASCII码相差32。
小字字母-32=对应的大字字母;大字字母+32=对应的小字字母
转义序列:’\’后的字符和’\’一起表示另外一个字符。
\n:换行,\0:空字符,\':单引号,\":双引号,\\:反斜线,
\ddd:ASCII码为ddd的一个字符(ddd为8进制数)
8)字符型常量:用单引号引起来的一个字符
3.变量定义:
允许在一个类型说明符后声明多个类型相同的变量,各变量名之间用逗号隔开;
类型说明符与变量间有一个空格
最后一个变量名后有一个分号
变量使用前必须定义
可以在定义变量的同时赋初值,也可在定义后,使用前赋初值。
4.算术运算符:熟悉常用算术运算符的使用:+,-,*,\,%,++,--
两个整数相除的结果是整数(小数部分被自动切断),如果运算量中有一个实型,结果为双精度实型。如:7/4结果是1。
%操作两边必须是整数,结果等于两数相除后的余数。如7%4结果是3
前置++:先加后用,后置++:先用后加(--也是一样)
5.赋值运算符:熟悉常用赋值运算符的使用:= ,+= ,*=, /=, %=, -=
a=b=c=5(从右向左计算)如:int x=10,y,z;执行y=z=x;后,x,y,z的值都为10。
变量+=表达式表示:变量=变量+表达式(如a+=5表示:a=a+5)
6.逗号运算符和逗号表达式
从左向右计算表达式的值为最后一个表达式的值。a=3*5,a*4,计算结果为a=15,整数个表达式的值为60。
如:int a,b,c;a=(b=c=3,c++,b+=c);则a的值是7。
7.关系运算符:熟悉常用关系运算符的使用:>,<,>=,<= ,== ,!=
计算结果是真(1)或假(0)。如int x=5,y=4;表达式x==y+1的结果1。
int y=10,z=9;执行x=y==z后,变量x的结果是0
二元操作符,从左向右计算,如a>b>c是先计算a>b的值(1或0),再用1或0和c进行比较。
8.逻辑运算符:熟悉常用关系运算符的使用:&&, ||,!
计算结果是真(1)或假(0)。
二元操作符,从左向右计算,如a>b&&a<c,如果a>b为假,不会计算a<c。因为&&为真的条件是两个操作数同为真,相似的有||,如果||左边的值为真,也不
会计算右边的结果,因为||真的条件是只要一个真就为真。
9.sizeof 运算符
使用 sizeof 运算符可以获得数据类型占用内存空间的大小。其一般形式为:
sizeof(type_name)
sizeof 运算符的结果以字节为单位显示。sizeof(int);将会返回值4
10. 三元运算符:表达式1?表达式2:表达式3
该运算表达式是先全判断表达1是否是真,如为真, 表达式的值是表达式2的
值,否则是表达式3的值。
11. 运算符优先级
运算符
描述 结合性 () 圆括号 自左向右 !, ++, --, sizeof 逻辑非,递增, 递减,求数据类型的大小 自右向左 *, /, % 乘法,除法,取余 自左向右 +, -
加法,减法 自左向右 <, <=, >, >=
小于,小于等于,大于,大于等于 自左向右 = =, !=
等于,不等于 自左向右 &&
逻辑与 自左向右 ||
逻辑或 自左向右 =,+=, *=, /=, %= ,-=
赋值运算符,复合赋值运算符 自右向左
12. 类型转换
1)自动转换:不同类型数据混合运算时,由编译器自动完成
转换规则:
2)强制转换:(类型名) 变量或数值
如:执行double a=365.7189; int b=12,c;c=(int)a+b;c 的值为377.
第三章 输入输出与顺序程序设计
1. printf 函数
1)格式:printf(“格式控制串”,参数1,数2,...);
2)格式控制串中除格式控制字符外,其余内容会原样输出。
3)常见格式控制字符:
%d :将参数按整数形式转换输出,对应参数应是int 类型
%c :输出一个字符,对应参数应该是一个字符
如: a=’A’;printf("%c,%d\n",a,a);输出:A ,65
%s :输出一个字符串,对应参数应该是一个字符串
%f :将参数按带小数点数形式输出,对应参数应是double 类型,默认情况下
精确到 6 位小数
%md:输出数据占m个位宽,数据长度将左补空格。如果实际数据长度超出m,将原样输出
%m.nf:m同上,n表示小数位数
2.scanf 函数
1)格式:scanf(“格式控制串”,参数1地址,数2地址,...);
2)格式控制串中除格式控制字符外,其余内容要求原样输入。
3)常见格式控制字符:
%d:将参数按整数形式转换输出,对应参数应是int 类型
%o:将参数按8进制形式转换输出,对应参数应是int 类型
%x:将参数按16进制形式转换输出,对应参数应是int 类型
%c :输出一个字符,对应参数应该是一个字符
%s:输出一个字符串,对应参数应该是一个字符串
%f :将参数按带小数点数形式输出,对应参数应是double 类型,默认情况下精确到 6 位小数
4)数据输入结束:空格、回车、非法输入
5)字符输入:任何输入都是字符,包括空格、回车等。
3.putchar(),向终端输出一个字符,语法:putchar(ch);
注意:只能接收一个字符
第四章选择结构程序设计
1.程序的三种基本结构:顺序结构、分支结构、循环结构
2.复合语句:用{}括起来的一个或多个C语句。
3.熟悉if,if..else,多重if..else,嵌套if..else,ase的用法
1)C语言以0表示假,非0整数值表示真。
2)为避免嵌套的if-else语句的二义性,C语言规定else总是与在其之前未配对的最近的if组成配对关系。提倡使用大括号括起来以避免看起来有二义性
3)switch括号中要求数据类型为:整型或字符表达式。case后要求为常量或常量表达式。
如果需要每个case执行完后跳出,在每个case后不要忘记写break;
第五章循环控制
1.熟悉while,do...while,for ,continue,break的用法
2.while ( 循环条件 ) {
循环操作
}
特点:先判断,再执行
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论