




已阅读5页,还剩10页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第 1 页 共 15 页 C C 语言程序设计复习模拟试题语言程序设计复习模拟试题 一 选择题一 选择题 以下叙述正确的是 C A 在 C 程序中 main 函数必须位于程序的最前面 B C 程序的每行只能写一条语句 C C 语言使用库函数实现输入输出操作 D 注释中的拼写错误会影响编译结果 2 以下说法中正确的是 B A C 语言程序总是从第一个的函数开始执行 B C 语言程序总是从 main 函数开始执行 C 在 C 语言程序中 要调用的函数必须在 main 函数中定义 D C 语言程序中的 main 函数必须放在程序的开始部分 3 下列选项中说法正确的是 A A 函数由声明部分和执行部分两部分组成 B 语言中 main 函数一定在程序的开始部分 C C 语言程序总是从第一个定义的函数开始执行 D C 程序的每行中只能写一条语句 4 设有说明 int a float b char c double d 则表达式 1 3 a 2 b c d int 2 6 值的类型为 A A double B char C float D int 5 C 语言的标识符只能由字母 数字和下划线三种字符组成 且第一个字符 C A 必须为字母 B 必须为下划线 C 必须为字母或下划线 D 可以是字母 数字和下划线中任一种字符 6 以下不正确的 C 语言标识符是 D A ABC B abc C a bc D void 7 下列运算符中优先级最高的是 B A x w y z y z 的值 是 B A 4 B 3 C 2 D 1 13 有以下程序 程序运行后的输出结果是 D main int i 1 j 2 k 3 if i 1 A 1 2 3 B 2 3 4 C 2 2 3 D 2 3 3 14 下面程序的输出结果是 B main int x 2 y 1 z 2 if x y if y 0 z 0 else z 1 x printf d n z A 3 B 2 C 1 D 0 15 执行下列语句后 a 的值为 B main int a 5 printf d n a 3 5 a 4 a 5 A 65 B 20 C 15 D 10 16 下列程序段中 有错误的行是 C 列定行号 int x 0 y 10 2 switch x 3 case 3 4 case 1 y y 2 break 5 case y 1 x 5 6 default printf d d x y A 4 B 3 C 5 D 无错误 17 若 i 为整型变量 则以下循环执行次数是 B 系名 姓名 学号 考试日期 班级 装订线下 上装订线 第 2 页 共 15 页 include stdio h void main int i for i 2 i 0 printf d i A 无限次 B 0 次 C 1 次 D 2 次 18 若有以下定义 double a 10 则 a 数组元素下标的上 下限分别为 B A 1 10 B 0 9 C 0 10 D 1 9 19 若已定义的函数有返回值 则以关于该函数调用的叙述中错误的是 D A 调用可以作为独立的语句存在 B 调用可以作为一个函数的实参 C 调用可以出现在表达式中 D 调用可以作为一个函数的形参 20 定义如下变量和数组 int i int x 3 3 1 2 3 4 5 6 7 8 9 则下面语句 for i 0 i 3 i printf d x i 2 i 输出结果是 C A 1 5 9 B 1 4 7 C 3 5 7 D 3 6 9 21 以下不能正确定义二维数组的选项是 D A int a 2 2 1 2 B int a 2 1 2 3 4 C int a 2 2 1 2 3 D int a 2 1 2 3 4 22 若有以下定义 int a 5 10 20 30 40 50 p a 则执行 p 后 p 的值是 B A 10 B 11 C 20 D 21 23 函数的嵌套调用是指 D A 直接调用本函数 B 在定义函数时 又定义另一个函数 C 间接调用本函数 D 被调用函数又调用另一个函数 24 下列说法正确的是 D A 被调用函数必须先调用 后声明 B 用户自定义函数的类型若未指出 则系统默认为 void C 全局变量不能与局部变量同名 D 实参可以是任意表达式 25 以下描述正确的是 B A continue 语句的作用 是结束整个循环语句的执行 B 只能在循环体内和 switch 语句体内使用 break 语句 C 在循环体内使用 break 语句或 continue 语句的作用相同 D 多层循环嵌套中不可以使用 break 语句 26 若有说明语句 int a 3 4 则对数组元素的正确引用格式是 C A a 2 4 B a 1 3 C a 1 1 0 D a 2 1 27 若有说明 int a 3 4 0 则下面正确的叙述是 D A 只有元素 a 0 0 可得到初值 0 B 此数组说明语句不正确 C 数组 a 中各元素都可得到初值 但其值不一定为 0 D 数组 a 中每个元素均可得到初值 0 28 定义数组 a 和 b 的语句是 char a ABCDEF char b A B C D E F 则以下叙述正确的是 D A a 和 b 数组完全相同 B a 与 b 数组元素个数相同 C a 和 b 中都存放字符串 D a 数组比 b 数组元素个数多 29 语句 int ptr 的含义是 C A ptr 是指向一维数组的指针变量 B ptr 是指向 int 型数据的指针变量 C ptr 是指向函数的指针 该函数返回一个 int 型数据 D ptr 是一个函数名 该函数返回值是指向 int 型数据的指针 30 若有定义 int p 4 则标识符 p 是 B A 一个指向整型变量的指针 B 一个指针数组名 C 一个指针 它指向一个含有四个整型元素的一维数组 D 无效的数组名 31 在 C 语言中 B A 函数定义可以嵌套 但函数调用不可以嵌套 B 函数定义不可以嵌套 但函数调用可以嵌套 C 函数定义和调用都可以嵌套 D 函数定义和条用都不能嵌套 32 下面程序的输出结果是 D include void main int i j x 0 第 3 页 共 15 页 for i 0 i 2 i x for j 0 j 2 j if j 2 continue x x printf d n x A 4 B 6 C 8 D 12 33 执行下列语句后 m 的值为 A int m 1 x 2 y 3 z 4 m m x m x m m y m y m m z m z A 1 B 4 C 2 D 3 34 下列程序段是实现给数组所有元素赋值操作 应在下划线上填入的是 B int a 10 for i 0 i 9 i scanf d A a B for a 1 b 1 a 20 break if b 3 1 b 3 continue b 5 printf d d a b A 8 20 B 8 22 C 7 20 D 7 22 37 设 int a 5 10 15 20 25 30 int p p a 2 则表达式 p 的值为 D A 20 B 15 C 16 D 21 38 设 w 1 x 2 y 3 z 4 a 5 b 6 则执行以下语句 a b 的值分别为 C a w x A 0 和 0 B 5 和 0 C 0 和 6 D 5 和 6 39 下列语句的输出为 D int x 1 printf d u o x x x A 1 1 1 B 1 32767 177777 C 1 32768 177777 D 1 65535 177777 40 下列函数调用语句中的实参个数为 A fun a b x y fun x x z A 2 B 3 C 4 D 5 41 设有数组定义 char array china 则数组 array 所占的内存空间 为 C A 4 个字节 B 5 个字节 C 6 个字节 D 7 个字节 42 以下程序段的运行结果是 B char c 5 a b 0 c 0 printf s c A a b B ab C ab c D a b 43 若 C 程序中出现死循则违背了算法的 C A 有效性 B 确定性 C 有穷性 D 有一个或多个输出 44 设 int a 20 则执行表达式 a a a 后 a 的值是 A A 0 B 1 C 20 D 40 45 int x y z m 5 n 5 则执行下面语句后的 z 值是 D x m n m n y m z n A 5 B 10 C 6 D 7 46 执行下列程序段后 i 的正确结果是 D int i 10 switch i case 9 i 1 第 4 页 共 15 页 case 10 i case 11 i default i i printf d i A 10 B 11 C 12 D 24 47 若有定义 int a 10 则以下表达式中不能代表数组元素 a 1 的地址 的是 A A scanf d d 不可以用 A 作为输入的分 隔符 A B 空格 C 回车 D TAB 键 52 下面关于运算符优先顺序的描述中正确的是 C A 关系运算符 算术运算符 赋值运算符 逻辑与运算符 B 逻辑 运算符 关系运算符 算术运算符 赋值运算符 C 赋值运算符 逻辑与运算符 关系运算符 算术运算符 D 算术运算符 关系运算符 赋值运算符 逻辑与运算符 53 为了判断两个字符串s1 和 s2 是否相等 应当使用 D A if s1 s2 B if s1 s2 C if strcpy s1 s2 D if strcmp s1 s2 0 54 以下对二维数组进行正确初始化的是 B A int a 2 3 1 2 3 4 5 6 B int a 3 1 2 3 4 5 6 C int a 2 1 2 3 4 5 6 D int a 2 1 2 3 4 55 若用数组名作为函数调用时的实参 则实际上传递给形参的是 A A 数组 的首地址 B 数组的第一个元素值 C 数组中全部元素的值 D 数组元素的个数 56 以下错误的描述是 D A 不同的函数中可以使用相同的变量名 B 形式参数是局部变量 C 一个函数内部定义的变量只能在本函数范围内有效 D 在一个函数内部的复合语句中定义的变量可以在本函数范围内有 效 57 下列程序的运行结果是 B main int i 10 int p i 8 printf d p A 10 B 8 C 程序错误 不能运行 D 结果不确定 58 C 语言中 double 类型的数据占字节数为 D A 1 B 2 C 4 D 8 59 可在 C 程序中用作用户标识符的一组标识符是 A A as b3 123 If B For abc case C 2c DO SIG D void define WORD 60 以下字符中 不正确的 C 语言转义字符是 B A B 018 C Xaa D t 61 C 语言中 数据在内存中都以 D 形式存放 A 原码 B 反码 C ASCll 码 D 补码 62 下列运算符中 优先级最高的是 C C A else return b main int x 3 y 8 z 6 r r fun x y z printf d n r 程序运行后的输出结果是 A 3 B 6 C 8 D 14 73 若有说明 int n 17 p 则以下非法的赋值语句是 D A p q B p q C n q D p n 74 以下程序的功能是 按顺序读入 10 名学生 4 门课程的成绩 计算出每位 学生的平均分并输出 程序如下 main int n k float score sum ave sum 0 0 for n 1 n 10 n for k 1 k 4 k scanf f sum score ave sum 4 0 printf NO d f n n ave 上述程序运行后结果不正确 调试中发现有一条语句出现在程序中的位置 不正确 这条语句是 A A A sum 0 0 B sum score C ave sun 4 0 D printf NO d f n n ave 75 数组定义为 char a 10 a b c 该数组包括的元素个数是 D A 3 B 9 C 4 D 10 76 下面程序的输出结果是 B main int x 2 y 1 z 2 if x y if y a p printf d p 程序运行后的输出结果是 D A 0 1 2 3 4 5 6 7 8 9 B 2 3 4 5 6 7 8 9 10 1 C 0 1 2 3 4 5 6 7 8 9 D 9 8 7 6 5 4 3 2 1 0 78 执行循环语句 for x y 0 y 250 x 4 x y 50 其循环体执行的次数为 A A 5 B 4 C 3 D 2 79 如 int x 14 下列求商 y 需小数结果 的表达式哪一个不对 D A y x 5 0 B y x 5 C y 1 x 5 D y x 5 1 0 80 设有以下程序段 B int x 0 s 0 while x 0 s x printf d s 则 A 运行程序段后输出 0 B 运行程序段后输出 1 C 程序段中的控制表达式是非法 D 程序无法运行 81 有以下程序 程序运行后的输出结果是 C include stdio h void main int i 0 j 2 m 3 n n i 2 printf d d d d n i j m n A 2 2 4 1 B 2 2 3 1 C 1 2 4 1 D 2 1 3 1 82 下面程序的输出结果是 C include void main int i x 1 y 0 a 0 b 0 switch x case 1 b case 2 a b break case 3 a b printf d d n a b A 2 1 B 2 2 C 1 2 D 4 2 二 程序分析及填空 1 C 语言的基本数据类型中 有两种实数类型变量 一种是 float 型 另 一种是 double 型 2 若程序中有语句 scanf a d b d 在执行程序时 要 输入 3 和 5 两个数 应该键入 a 3 b 5 3 包含数学类库函数的头文件名称是 math h 4 字符串 ab 034 x79 的长度为 5 5 数组元素作函数参数进行的是 单向值 传递 数组名作函数参数进 行的是 地址 传递 6 设有函数调用语句 f x1 x1 x2 f1 x1 x2 则函数 f 实参的 数目有 3 个 7 在数组 int score 10 1 2 3 4 5 6 中 元素定义的个数有 10 个 其中 score 8 的值为 0 8 C 语言源程序文件的后缀是 c 经过编译后 生成文件的后缀 是 obj 经过连接后 生成文件的后缀是 exe 结构化程序由 顺序 选择 循环 三种基本结 构组成 9 C 语言提供的三中逻辑运算符是 if m 5 printf d n m 第 7 页 共 15 页 else printf d n m 14 以下程序运行后的输出结果是 17 include void main int x 15 while x 10 if x 3 x break else continue printf d n x 15 下面程序的运行结果是 3 5 include stdio h void swap int a int b int t t a a b b t void main int x 3 y 5 p swap p q printf d d n p q 16 在执行以下程序时 如果从键盘上输入 AdEf 则输出为 aDeF include stdio h void main char ch while ch getchar n if ch A printf c ch printf n 17 设有以下宏定义 则执行赋值语句 a PP 20 a 为 int 型变量 后 a 的值是 10000 define PR 100 define PP PR 400 18 下列程序段的输出结果为 10 1 int x 10 y 1 y y x printf d d y x y 19 有以下程序 include stdio h void main int a 4 4 1 2 3 4 5 6 7 8 3 9 10 2 4 2 9 6 int i s 0 for i 0 i 4 i s a i i printf d n s 程序运行后的输出结果是 23 程序的功能为 求 4 4 矩阵主对角线元素值之和 20 有以下程序 include void main int p 2 t 1 while p 5 t t p printf d d n p t 该程序运行后变量 p 和 t 中的值分别为 6 120 21 有以下程序 include void main int a b c 221 a c 100 3 b a 该程序运行后的输出结果是 2 1 22 以下程序的输出结果为 1 6 include main int a 1 2 3 4 5 6 p a 第 8 页 共 15 页 p 3 2 printf d d p p 3 23 以下程序的输出结果为 40 70 include stdio h int x1 40 x2 70 void main int x3 50 x4 60 int sub int x3 int x4 printf d d n x1 x2 void sub int x int y x1 x x2 y 24 下面 C 程序的输出是 4 main int m 6 if m 0 f n 10 void main f 12 27 以下程序的输出结果是 5 2 include stdio h void main int y for y 6 y 0 y if y 3 0 printf d y continue 28 在数组 int score 10 1 2 3 6 中 score 7 的值为 0 29 程序运行后的输出结果是 5 include stdio h void main int a 1 b 2 printf d a b a b 30 以下程序运行后的输出结果是 3 5 7 include void main int i x 3 3 1 2 3 4 5 6 7 8 9 for i 0 i 3 i printf d x i 2 i 31 以下程序运行后的输出结果是 0 include main int a 5 b 7 c printf d n c a b 32 以下程序运行后的输出结果是 k 0 m 5 include stdio h main int i j k 0 m 0 for i 0 i 2 i for j 0 j 3 j k k j m i j printf k d m d n k m 33 以下程序运行后的输出结果是 13 12 include stdio h swap int p1 int p2 int p p p1 p1 p2 p2 p 第 9 页 共 15 页 main int a 12 b 13 int pointer 1 pointer 2 pointer 1 pointer 2 if a b swap pointer 1 pointer 2 printf n d d n a b 34 以下程序运行后的输出结果是 3 4 5 include stdio h main int i p a 7 1 2 3 4 5 6 7 p a 2 for i 0 i 3 i p printf d p 35 以下程序运行后的输出结果是 2 4 6 8 10 main int n for n 1 n A k ch j 0 printf s ch 37 以下程序运行后的输出结果是 5 9 include void swap int a int b int t t a a b b t void main int x 5 y 9 p a c 100 3 b 1 三 补全程序题 1 输入三个整数 x y z 把这三个数由小到大输出 main int x y z t scanf d d d if x y t x x y y t 交换 x y 的值 if x z t x x z z t 交换 x z 的值 if y z t y y z z t 交换 z y 的值 printf small to big d d d n x y z 2 求圆的面积和周长 请补全下面程序 define PI 3 14159 void main float r s y r 表示半径 s 表示面积 y 表示周长 scanf f 第 10 页 共 15 页 s PI r r y 2 PI r printf s f y f s y 3 函数 a1 的功能是求一维数组中所有元素的平均值并返回给主调函数 请补全下面程序 float a1 float b 10 sum 0 0 aver int i for i 0 i 10 i scanf f for i 0 i 10 i sum b i aver sum 10 return aver 4 从键盘上输入 10 个数 输出最大 最小元素的值以及它们的下标 include void main int i j k max min a 5 for i 0 i 5 i scanf d return t 或 returnt t void main int i n int s 0 scanf d printf Enter integer a and b scanf d d if a b printf a b n else printf a b n 9 输出半径从 1 到 10 的圆面积 当面积大于 100 时停止 define PI 3 14159 main int r float area for r 1 r100 break printf r d area 2f n r area 10 以下程序以每行输出 8 个数据的形式输出 a 数组 include void main int a 50 i for i 0 i 50 i scanf d for i 0 i 0 int i for i 0 i 10 i scanf f for i 0 i 10 i sum b i aver sum 10 return aver 同 3 题 15 把 100 200 之间的能被 3 和 7 整除的数输出 请补全下面程序 viod main int n for n 100 n 200 n if n 3 0 第 12 页 共 15 页 Printf 5d n 16 下面程序的功能是输出 1000 以内的个位数为 6 且能被 3 整除的所有 数 main int i j for i 0 i 1000 或 i 99 i j i 10 6 if j 3 0j 3 0 countinue printf d j 17 有以下程序段 s 1 0 for k 1 k n k s s 1 0 k k 1 printf f n s 填空完成下述程序 使之与上述程序的功能完全相同 s 0 0 d 1 0 k 0 do s s d k d 1 0 k k 1 while k n printf f n s 18 输入一个 3 位正整数 反序输出 include void main int x x1 x2 x3 y printf please input x scanf 3d int f 20 1 1 1 1 for i 1 i 20 i i 0 i 20 或或 i 2i 2 f i f i 2 f i 1 for i 1 i 20 i i 0 i 20 if i 4 0 i 5 0 printf n printf n printf 12d f i 3 void main int x y z 5 y 5 z 5 int aver float x 7 AVER x y z 3 aver x y z 3 0 printf AVER d n aver 最后一空按此该法没错误 4 下面程序希望实现的功能是 定义两个字符数组 STR1 STR2 在键盘上 输入 STR2 的值 然后将 STR2 连接到 STR1 后面 最后打印两个数组 划 线部分存在错误 请将改正后的结果填入右侧对应的横线 include string h string h 加双引号 或尖括号 main char str1 100 abc str2 第 13 页 共 15 页 scanf s str2 前不需要str1 i 0 i 不需要 for j 0 str2 j 0 j str1 i str2 j strcat str1 str2 或 str1 strlen str1 j str2 j 或 str1 3 j str2 j 数组下标不合要求功能 printf c str1 s puts str2 5 请将改正后的结果填入右侧对应的横线 include stdio h define PI 3 14159 void main long int d 无错误 float x double scanf d n d ld int i for i 1 i n i power m return power void main int m 5 n 4 printf d n f m n 2 编程实现 1 2 3 4 5 这 5 个数的乘积 并输出结果 void main int i sum n 5 sum 1 i 1 while i n sum sum i i printf d d n sum 3 有一分段函数 x 1 x0 编写一程序 输入一个 x 的值 输出对应的 y 值 Void main int x y scanf d if x 0 y x 1 else if x 0 y x else y x 1 printf x d y d n x y 4 编写程序求出 100 到 200 之间的所有素数 include void main unsigned i j count flag count 0 for i 100 i 200 i flag 0 for j 2 j sqrt i j if i j 0 flag 1 break if flag 0 printf 4d i count if count 8 0 printf n 5 从键盘上输入 10 个数 输出最大 最小元素的值及它们的下标 include void main int i j k max min a 10 for i 0 i 10 i scanf d for i 0 i 1000 i j i 10 6 if j 3 0 continue printf d j 9 从键盘输入 3 名学生的 5 门课的成绩 分别统计出每个学生的平均分 要求 用数组实现 void main int i j float score 3 5 ave 3 0 0 0 for i 0 i 3 i for j 0 j 5 j scanf f score i j ave i score i j
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 农业机耕服务合同5篇
- 内部安全培训记录样本课件
- 装修公司营销推广方案(3篇)
- 化学实验室安全培训课件
- 创新岗位安全培训心得课件
- 化学品存放安全培训课件
- 第三单元课外古诗词诵读《赠从弟(其二)》(公开课一等奖创新教学设计)统编版语文八年级上册
- 创伤患者的分诊课件
- 创伤性湿肺课件
- 统编版语文三年级上册第三单元习作续写故事 +公开课一等奖创新教学设计
- 检验员技能测试题及答案
- 化学原电池教学课件
- 2025四川省水电投资经营集团有限公司所属电力公司员工招聘6人考试参考试题及答案解析
- 新疆劳动就业白皮书课件
- 视觉障碍老人护理指南
- 宠物医院建设方案(3篇)
- 2025年中学生法治素养竞赛题库及答案
- 《“高效办成一件事”2025年度第二批重点事项清单》知识解读
- 2025年飞行器设计与工程师考试试卷及答案
- 2025年三级律师试题题库及答案
- 智能化系统施工方案及技术措施
评论
0/150
提交评论