XXXX学院《C语言程序设计》期末考试过关复习提纲.doc.pdf

上传人:tbuqq 文档编号:5616467 上传时间:2020-07-02 格式:PDF 页数:21 大小:49.22KB
返回 下载 相关 举报
XXXX学院《C语言程序设计》期末考试过关复习提纲.doc.pdf_第1页
第1页 / 共21页
XXXX学院《C语言程序设计》期末考试过关复习提纲.doc.pdf_第2页
第2页 / 共21页
XXXX学院《C语言程序设计》期末考试过关复习提纲.doc.pdf_第3页
第3页 / 共21页
XXXX学院《C语言程序设计》期末考试过关复习提纲.doc.pdf_第4页
第4页 / 共21页
XXXX学院《C语言程序设计》期末考试过关复习提纲.doc.pdf_第5页
第5页 / 共21页
点击查看更多>>
资源描述

《XXXX学院《C语言程序设计》期末考试过关复习提纲.doc.pdf》由会员分享,可在线阅读,更多相关《XXXX学院《C语言程序设计》期末考试过关复习提纲.doc.pdf(21页珍藏版)》请在三一文库上搜索。

1、C语言程序设计复习提纲 一、单项选择题和填空题的知识点 1、 函数是C程序的主要组成部分, 函数是C程序的基本单位。 一个C语言程序是由一个或 多个函数组成的,其中必须包含一个main函数CH.只能有一个main函数)。 2、 程序总是从main函数开始执行的。C语言本身不提供输入输出语句。 3、 识别不同的常量。 (1)整型常量,如100, 0, -12 (2)实型常最,有两种表示形式。 第一,十进制小数形式,如12.45 -56.79o 第二,指数形式,即科学计数法。如12.34e-4,其中,字母e前而的部分称为尾数,可以用实 型数据表示,后而的部分称为指数,只能用整型数据表示,而字母e既

2、可以是小写的e, 也可 以是大写的E。 (3)字符常最,有两种形式:普通字符和转义字符。普通字符如X,注意字符常量中只能 包含一个字符。转义字符是以字符开头,如n,注意它表示的是一个字符。 (4)字符串常量 , 如”Nanjing ”。 (5)符号常量 , 是用#dcfinc指令定义的。U#define PI 3.1416。一旦定义以后 , 凡是使用PI 的地方,实际上使用的3.1416。 4、 合法标识符和非法标识符的识别。 5、 数据类型占川的内存字节数 int (基本整型) 4 unsigned int (无符号基本幣型) 4 short (短整型) 2 unsigned short (

3、无符号短整型) 2 long (长整型) 4 unsigned long (无符号长整型) 4 signed char (有符号字符型) 1 unsigned char (无符号字符型) 1 float 4 double 8 long double 16 6、 运算符要求参加运算的运算对象(即操作数)为整数,结果也是整数。如8%3的结果 为2。 7、 除以外的运算符的操作数都可以是任何算术类型。 8、 口增、口减运算符的使用。参见P53的内容和例子。(单选) 9、 不同类型数据间的混合运算。参见P54的内容和例了。 10、 赋值过程中的类型转换。参见P62的内容和例子。(单选) 11、o格式符

4、的使用:以八进制整数形式输出数据。x符的使用:以十六进制整数形式输出数 据。具体内容参见P73的内容和例了。 12、 在程序中实现两个变量的值交换的算法。 13、a 26、 结构体变量所占?内存长度是各成员所占?内存长度之和,而共用体变量所占的内存 长度等于最长的成员的长度。 27、 根据数据的组织形式,数据文件可分为ASCII文件和二进制文件。 28、 用fopen函数打开数据文件。 29、 使用文件的方式:见P335的表10.1。 三、名词解释 1、程序:程序就是一组计算机能识别和执行的指令,每一条指令使计算机执行特定的操 作。 2、 高级语言:高级语言是接近于人类习惯使用的自然语言和数学

5、语言,乂能够被计算机识 别和运行的计算机语言。高级语言不依赖于具体的机器,但其不能被计算机肓接识别,而必 须已经“翻译”。 3、 常最:常最是指在程序的运行过程中其值不能被改变的最。 4、 标识符:在计算机高级语言中, 用來对变量、 符号常量、 函数、数组、类空等命名的有效 字符序列统称为标识符。 5、C算术表达式:用算术运算符和括号将运算对象( 即操作数 ) 连接起来,符合C语言语 法 规则的式子称为C算术表达式。 6、 输出: 输出是指从计算机向输出设备输出数据。 7、 输入:输入是指从输入设备向计算机输入数据。 8、 关系运算:所谓关系运算就是比较运算, 将两个数值进行比较, 判断具比较

6、的结果是否符 合给定的条件。 9、 关系表达式:用关系运算符将两个数值或数值表达式连接起来的式了称为关系表达式。 10、 逻辑表达式:用逻辑运算符将关系表达式或其他逻辑表达式连接起来的式子称为逻辑 表 达式。 11、 数组:数组是一组有序数据的集合。在数组中,各个数据的排列是有一定规律的,下 标 代表了数据在数组中的序号。 12、 函数:函数就是功能,每一个函数用來实现一个特定的功能,函数的名字应反映其代 表 的功能。 13、 形式参数:在定义函数时函数名示面括号屮的变暈称为形式参数,也称为虚拟参数。 14、 实际参数:在主调函数中调用一个函数时,函数名后面括号中的参数称为实际参数, 简 称实

7、参。实际参数可以是常量、变量或表达式。 15、 值传递:值传递是单向传递,数据只能由实参传给形参,而不能由形参传给实参。 16、 局部变量:在一个函数内部定义的变量只在该函数范围内有效,在复合语句中定义的 变 量也只在该复合语句范围内有效,这些只能在局部范围内有效,超出其所在范围就无效 的变 量称为局部变量。 17、 全局变量:在函数Z外定义的变虽称为外部变虽,外部变虽是全局变虽。全局变量可 以 为文件屮的其他函数所共用,其有效范用为从定义该变最的位置开始到源文件结束。 18、 数据的存储类别:数据的存储类别是指数据在内存中存储的方式,有静态存储和动态 存 储Z分。 19、 自动变量:对于在函

8、数屮定义的动态局部变量,当该函数被调用时,系统会给它们分 配 存储空间,在函数调用结束时就H动释放存储空I可,这样的局部变量称为白动变量。 白动变量用关键字auto作存储类別的声明。 20、 静态局部变量:対于函数中定义的静态局部变量,当该函数的调用结束后,系统并不 释 放它们的存储空间,在卜 ?一次调川该函数时,这些变量屮己经有值了,就是上一次函 数调川结束时的值。静态局部变量用关键字sic进行声明。 21、 寄存器变量:为了提高代码的执行效率,C语言允许将局部变量的值存放在CPU小的 寄 存器屮, 需耍便用吋直接从寄存器中取出,而不必再到内存中存取。这种变虽称为寄存器变 量。寄存器变量用关

9、键字register进行声明。 22、 变量的作川域:如果一个变量在某个文件或函数范围内是有效的,就称该范围为该变 量 的作用域。 23、 指针:一个变量的地址称为该变量的“指针”。 24、 指针变最:如果一个变最专门用于存放另一个变量的地址(即指针),则该变量就是 “指 针变量”。 24、 结构体类型:在C语言屮允许用户自己建立由若干个不同类型数据组成的组合型的数 据结构称为结构体。用户使用结构体自定义的数据类型称为结构体类型。 25、 数据流:输入输出是数据传送的过程,数据如流水一样从一处流向另一处,因此常将 输 入输出形象地称为流。 四、简答题 1、高级语言经历了哪些发展阶段? 答:高级

10、语言经历了非结构化语言、结构化语言和面向对象语言三个不同的发展阶段。非结 构化语言没有严格的规范要求,程序中可以随意的跳转。在结构化语言中,程序必须由顺序 结构、分支结构和循环结构的棊木结构构成,在程序中不能随意的跳转。面向对彖语言支持 面向对象程序设计方法,适合于处理规模较大的复杂问题。 2、 一个函数包括哪儿个部分?试分别简述之。 答:一个函数包括函数首部和函数体两个部分。函数首部包括函数名、 函数类型、 函数属性、 函数参数名和参数类型。函数体包扌舌声明部分和执行部分,其屮声明部分包括函数内部局 部 变量的声明和所调用的函数的声明,执行部分为若干个语旬组成的语句组。 3、 简述标识符的组

11、成规则。 答:C语言规定标识符只能由字母、 数字和下划线三类字符组成, 且笫一个字符必须是字母或 下划线。 4、C语言中基本数据类型冇哪些? 答:C语言中的基木数据类型包括整型类型和实型类型两人类。其屮,整型类型又分为基木 整型(int)、短整型(short)、长整空(long)和字符型(char);实型类型乂分为单楮度实 型(float)和双精度实型(double) 5、 什么是顺序结构? 答:在顺序结构屮,程序中的各个语句是按照口上而下的顺序执行的,执行完上一个语句就 自动执行下一个语句,是无条件的,不必作任何判断。 6、 简述关系运算符及其优先次序。 答:C语言提供了六种关系运算符,分别

12、为、v 二、二、二二、!=。其中,前四种 运算符的优先级相同且为高优先级,后两种运算符的优先级相同且为低优先级。 7、C语言屮逻辑值的表示方法。 答:C语言编译系统在表示逻辑运算结果吋,以数值1代表“真”,以数值0代表“假”; 但 在判断一个量是否为“真”时,以0代表“假”,以非0代表“真”。 8、 什么是逻辑运算符的短路问题? 答:在逻辑表达式的求解屮,并不是所有的逻辑运算符都被执行,只是在必须执行卜个逻辑 运算符才能求出表达式的值时,该运算符才被执行。 9、while循环和do-while循环的区别 ? 答:while循环是先判断循环条件,后执行循环体; 而do-while循环是先执行循环

13、体, 后判 断 循坏条件。 因此,while循坏的循环体有对能不执行,即while循坏的循坏体最少被执行0 次, 而do-while循环的循环体至少被执行一次。 10、for语句的执行过程? 答:for语句的一般形式为:for(表达式1;表达式2;表达式3), fo语句的貝体执行过程 为: (1)求解表达式1; (2)求解表达式2,如果表达式2的值为真,则执行循环体;如果为假,则结束循环的执行, 转(5)执行。 (3)执行循环体; (4)求解表达式3,转(2)继续执行。 (5)循坏结束,执行for语句的后一个语句。 11、break语句和continue语句的区别 ? 答:continue语句

14、是结束本次循环的执行,直接进入下一次循环的执行,而不是终止整个循环 的执行。而break语句是结束整个循环的执行,不在判断执行循环的条件是否成立,即肓接 从循环体内跳转到循环体外。 12、 定义一个函数应包括哪些内容? 答:定义函数应包括以下内容: (1)指定函数的名字,以便通过该函数名调川该函数。 (2)指定函数的类型,即函数返回值的类型。 (3)指定函数的参数名和类型,以便在调用函数时通过它们传递数据。对无参函数不盂 要 这项。 (4)指定函数应当完成的操作。 13、 函数嵌套调用和递归调用的区别? 答:函数的嵌套调用是指一个函数A在其执行过程,调用了另一个函数B,依次类推,在函 数B的执

15、行过程中,又调用了另一个函数Co KlJ函数的递归调用其实是一种特殊的嵌套调 用,即在函数的嵌套调用的过程中,出现了函数A直接或间接地调用其本身(即函数A)。 14、 静态存储方式和动态存储方式的区别? 答:静态存储方式是指在程序运行期间由系统分配固定的存储空间的方式,而动态存储方式 则是在程序运行期间根据需耍进行动态的分配存储空间的方式。在静态存储方式小,数据存 储在静态存储区中,在整个程序的执行过程中均冇效;而在动态存储方式中,数据存储在动 态存储区中,只在整个程序的执行过程中的某一个时间段有效。 15、C语言中冇哪些存储类别? 答 :C语言中有四种不同的存储类别, 分别为自动的(auto

16、).静态的(static).寄存器的 (register)s 外部的(extern)=A else if(stri=) space+; else if(stri=0 for(int i= 100;i float Max=0,Min=0; int main() int length(char string); char string30J; intlen; printfCPlcasc enter a string: 11); gets(string); len=length(string); printf( nthe length of string is %d.n ,len); return

17、0; int length(char stringJ) int lcn=0; while(stringlen !=0) len+; return len; 补充: 1、求100之内的所有索数。 用函数实现判断一个数是否是素数。 #include #include int main() int isSuShu(int number); int i; printf( H100 之内的素数有: “) ; printf( ” t “,2); for(i=3;i int main() const lcn=10; int arrayAlen= 1,2,3,4,5,6,7,8,9,10; int i,j,t

18、emp; printfC?数组A中原来的值n“); for(i=0;i int main() const lcn=10; int arrayAlen= 1,2,3,4,5,6,7,8,9,10; int arrayBlenJ; int i; printfC嗷组A屮的值n”); for(i=0;i const len=10; int arraylen=1,2,3,4,5,6,7,8,9,10); int i,x; printfC 1 请输入要查找的数据x: ”); scanf(“%d“, i=0; while(i int main() int a,b,c,temp; printf( H 请输入要

19、排序的三个数a、b和c:“); scanf(H%d %d %d”, printf( M n 排序前的三个数为n”,a,b,c); if(a int main() const len=3(); char arraylenl; int i,c; printf( ”请输入一个字符串: ”); gets(array); i=0; while(c=array i) !=0) if(c= ,A, char anaylen; int i,c; printfC*请输入一个字符串: ”); gets(array); i=(); whilc(c=array i) !=0) if(c= ,a, char array

20、lenl; int i,c; printf( nW 输入一个字符串: ”) ; gets(array); i=0; while(c=array i) !=0) if(c= ,a, else if(c=A , char arraylen; int i,c,temp; printfC*请输入一行电文: ”); gets(array); printf(“密码为 :%sn“,array); i=0; whilc(c=arrayi) != ,0,) if(c= ,a, char sllen,s2len; int i,c,temp; printfC 1 请输入一个字符串 : ”); gets(s2); i=(); while(c=s2i)!=W) sli=s2i; 复制s2中的字符到si中i+; sli=s2i; 复制s2屮的字符串结束标志0到si中 printf( H 字符串s2中的内容为 :n”,s2); printf(”字符串si中的内容为 :n”,sl); rctum 0;

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1