《程序设计语言(C)复习题》由会员分享,可在线阅读,更多相关《程序设计语言(C)复习题(28页珍藏版)》请在金锄头文库上搜索。
1、程序设计语言(C)复习第 1 页 共 29 页第一章第一章 C C 语言概述语言概述一知识点一知识点 1C 语言的特点:语言简洁、紧凑,使用方便、灵活; 运算符丰富; 数据结构丰富; 具有结构化控制语句; 语法限制不太严格,程序设计自由度大; 可以进行位操作,能实现汇编语言的大部分功能,能直接对硬件进行操作; 生成的目标代码质量高,程序执行效率高; 程序的移植性好。 2C 程序的组成: C 程序是由函数构成的; 一个函数包括函数的首部(即函数的第一行)和函数体(即花括号部分) ; 函数体一般包括声明部分和执行部分; 一个 C 程序总是从 main 函数开始执行,从 main 函数结束; C 程
2、序书写格式自由,一行内可以写几个语句,一个语句可以分写在多行上; 每个语句和数据定义的最后必须有一个分号; C 语言本身没有输入输出语句,是通过函数实现输入输出的; 可以用/*/对 C 程序的任何部分作注释。 3C 语言程序的运行:源程序文件的扩展名为.c,目标程序文件的扩展名为.obj,可执行 程序文件的扩展名为.exe。二练习二练习 填空题填空题: 1在 TURBO C 环境中用 RUN 命令运行一个 C 程序时,所运行的程序的后缀是 。 2C 语言源程序文件的后缀是 ,经过编译后,生成文件的后缀是 ,经过连接 后,生成文件的后缀是 。 3结构化程序由 、 、 三种基本结构组成。选择题选择
3、题: 1组成 C 语言程序的是( ) 。 A子程序 B过程 C函数 D主程序和子程序 2以下叙述中正确的是( ) 。 A在 C 程序中无论是整数还是实数,只要在允许的范围内都能准确无误的表示。 BC 程序由主函数组成。 CC 程序由函数组成。 DC 程序由函数和过程组成。程序设计题程序设计题: 1编写一个 C 程序,输入 a、b、c 三个数,输出其中最大者。程序设计语言(C)复习第 2 页 共 29 页第二章第二章 算法算法一知识点一知识点 1算法:为解决一个问题而采取的方法和步骤。 2算法的分类:数值算法、非数值算法。 3算法的特点:有穷性、确定性、有零个或多个输入、有一个或多个输出、有效性
4、。 4算法描述方法:自然语言、流程图、改进流程图、NS 流程图、伪代码、计算机语言。二练习二练习 用 NS 图表示下列问题: 1有两个瓶子 A 和 B,分别盛放醋和酱油,要求将它们互换。 2依次将 10 个数输入,要求将其中最大的数打印出来。 3有 3 个数 a、b、c,要求按从大到小的顺序把它们打印出来。 4求 1+2+3+100。 5判断一个数 n 能否同时被 3 和 5 除。 6将 100200 之间的素数打印出来。 7求两个整数 m 和 n 的最大公约数。 8求方程 ax2+bx+c=0 的根;分别考虑有两个不等的实根和有两个相等的实根的情况。第三章第三章 数据类型、运算符与表达式数据
5、类型、运算符与表达式一知识点一知识点 1C 的数据类型:基本、构造、指针和空类型, char、int、short、long、unsigned、float、double、enum、struct、union、typedef 。 2常量与变量的概念,注意符号常量的定义与使用; 3整型、实型、字符型常量的表示,注意整型常量的十进制、八进制、十六进制的书写。4变量的定义,C 的标识符包括关键字、预定义标识符、用户定义标识符;用户定义标识 符的可用字符为字母、数字、下划线,第一个字符为字母或下划线。 5常见数据类型的取值范围,int 为-32768+32767,unsigned int 为 065535。
6、 6转义字符:n、t、b、r、f、 、” 、ddd、xhh 7不同数值型数据的混合运算,低级类型转换为高级类型运算 8C 的运算符:注意结合方向和运算的优先级 9算术运算符:+、-、*、/、%、+、-,注意自加、减运算符分前缀和后缀两种方式。 其中前缀方式为先自加、减,后引用;后缀方式为先引用,后自加、减;运算符%要求运 算量为整数,运算结果也为整数。注意除运算时,若运算量为整型时,其运算结果也是整 型的规则。程序设计语言(C)复习第 3 页 共 29 页10赋值类运算符:=、+=、-=、*=、/=、%=,注意含义和数据类型的转换。 11逗号运算符的使用,注意逗号运算符的运算规则。二练习二练习
7、 填空题填空题: 1若 k 为整型变量且赋值 11。请写出运算 k+后表达式的值 和变量的值 。 2若 x 为 double 型变量,运算 x=3.2,+x 后表达式的值 和变量的值 。 3函数体由符号 开始,用符号 结束。函数体的前面是 部分,其后是 部 分。 4C 语言中的标识符可分为 、 和预定义标识符三类。 5在 C 语言程序中,用关键字 定义基本整型变量,用关键字 定义单精度实 型变量,用关键字 定义双精度实型变量。 6把 a1、a2 定义成单精度实型变量,并赋初值 1 的定义语句是 。 7C 程序中定义的变量,代表内存中的一个 。 8表达式 3.5+1/2 的计算结果是 。9写出数
8、学表达式三个等价的 C 语言表达式 、 、 dcba 。 10通常一个字节包含 个二进制位。 11当计算机用两个字节存放一个整数时,能存放的最大(十进制)整数是 、最小 (十进制)整数是 。 12在 C 语言中整数可用 进制数、 进制数和 进制数三种数制表示。 13C 语言中,int 型数据占 个字节,long 型数据占 个字节,unsigned int 型数 据占 个字节,short 型数据占 个字节, float 型数据占 个字节,double 型数 据占 个字节,char 型数据占 个字节。选择题选择题: 1以下选项中正确的整型常量是( ) 。 A12. B-20 C1,000 D4 5
9、 6 2以下选项中正确的实型常量是( ) 。 A0 B3. 1415 C0.329102 D.871 3以下选项中不合法的用户标识符是( ) 。 A_123 Bprintf CA$ DDim 4C 语言中运算对象必须是整型的运算符是( ) 。 A% B/ C! D* 5可在 C 程序中用作用户标识符的一组标识符是( ) 。 Avoid Bas_b3 CFor D2cdefine _123 -abc DOWORD If case SIG程序设计语言(C)复习第 4 页 共 29 页6若变量已正确定义并赋值,符合 C 语言语法的表达式是( ) 。 Aa=a+7; Ba=7+b+c,a+ Cint(
10、12.3%4) Da=a+7=c+b 7不合法的八进制数是( ) 。 A0 B028 C077 D01 8不合法的十六进制数是( ) 。 Aoxff B0Xabc C0x11 D0x19程序设计题程序设计题: 略第四章第四章 顺序程序设计顺序程序设计一知识点一知识点 1C 语句的类型:控制语句、函数调用语句、表达式语句、空语句、复合语句。 2输入输出的概念:输入输出是相对主机而言,C 语言是由函数来实现输入输出的。 3字符数据的输入/输出:getchar() 、putchar() 4格式输入/输出:scanf() 、printf() 5printf 的格式符:d、i,o,x、X,u,c,s,f
11、,e、E,g、G;l,m,n,-。 6scanf 的格式符:d、i,o,x、X,u,c,s,f,e、E,g、G;l,m,*; else printf(“%dn” ,a10 | a+be !a(d=c+b) 9当 a=1、b=2、c=3 时,执行以下 if 语句后,a= 、b= 、c= 。 if(ac) ;b=a;a=c;c=b; 10当 a=1、b=2、c=3 时,执行以下 if 语句后,a= 、b= 、c= 。 if(ac)b=a;a=c;c=b; 11当 a=1、b=2、c=3 时,执行以下 if 语句后,a= 、b= 、c= 。 if(ac)b=a,a=c;c=b; 12将以下两条 if
12、 语句合并为一条 if 语句: 。 if(ab) scanf(“%d” , Bint *p4; Cint (p4); Dint (p) 13以下程序的运行结果是( )fun( int *p1,int *p2) if(*p1*p2) printf(“%dn”,*p1);else printf(“%dn”,*p2); main( ) int a=3,b=7; fun( A7 B3 C10 D4第十一章第十一章 结构体与共用体结构体与共用体一知识点一知识点 1结构体的概念与定义 2结构体变量的定义 3结构体变量的引用 4结构体数组 5共用体的概念与定义 6枚举类型 7用户自定义类型二练习二练习 填空
13、题填空题: 1为了建立如图所示的存储结构(即每个结点含两个域,data 是数据域,next 是指向结 点的指针域) ,请填空。struct link char data;node; 2访问结构体数组元素 ak的成员 b,写作 。 以下程序的运行结果是 。struct s int num;char name20;int age;main( ) struct s stud3=101,”Li”,18,102,”Wang”,19,103,”Zhang”,21;fun(stud+2);fun(struct s *p)datanext程序设计语言(C)复习第 25 页 共 29 页 printf(“%sn”,(*p).name); .以下程序的运行结果是_。main( ) struct EXAMPLEstruct int x;int y;in;int a;int b;e;e.a=1;e.b=2;e.in.x=e.a*e.b;e.in.y=e.a+e.b;printf(“%d,%d”,e.in.x,e.in.y);选择题选择题: 1根据以下定义,能输出字母 M 的语句是( ) 。 Aprintf(“%cn” ,class3.name) ; Bprintf(“%cn” ,cl