C语言程序设计习题集.doc

上传人:wux****ua 文档编号:8968655 上传时间:2020-04-02 格式:DOC 页数:201 大小:684.50KB
返回 下载 相关 举报
C语言程序设计习题集.doc_第1页
第1页 / 共201页
C语言程序设计习题集.doc_第2页
第2页 / 共201页
C语言程序设计习题集.doc_第3页
第3页 / 共201页
点击查看更多>>
资源描述
目录 第一章 C 语言基础知识 1 第二章 C 语言程序设计的初步知识 3 第三章 顺序结构程序设计 12 第四章 选择结构程序设计 19 第五章 循环结构程序设计 33 第六章 数组 46 第七章 函数 56 第八章 指针 71 第九章 结构体与共用体 92 第十章 文件 100 附录 1 预处理命令 104 附录 2 位运算 108 模拟试题一 112 模拟试题二 117 模拟试题三 122 模拟试题四 128 模拟试题五 133 第一章 答案 139 第二章 答案 139 第三章 答案 141 第四章 答案 142 第五章 答案 146 第六章 答案 154 第七章 答案 160 第八章 答案 166 第九章 答案 175 第十章 答案 177 附录 1 答案 182 附录 2 答案 183 模拟试题一答案 185 模拟试题二答案 188 模拟试题三答案 191 模拟试题四答案 194 模拟试题五答案 196 第一章 C 语言基础知识 一 选择题 1 C 语言规定 必须用 作为主函数名 0 级 A Function B include C main D stdio 2 一个 C 程序可以包含任意多个不同名的函数 但有且仅有一个 一个 C 程序总是从 开始执行 0 级 A 过程 B 主函数 C 函数 D include 3 是 C 程序的基本构成单位 0 级 A 函数 B 函数和过程 C 超文本过程 D 子程序 4 下列说法正确的是 0 级 A 一个函数的函数体必须要有变量定义和执行部分 二者缺一不可 B 一个函数的函数体必须要有执行部分 可以没有变量定义 C 一个函数的函数体可以没有变量定义和执行部分 函数可以是空函数 D 以上都不对 5 下列说法正确的是 0 级 A main 函数必须放在 C 程序的开头 B main 函数必须放在 C 程序的最后 C main 函数可以放在 C 程序的中间部分 但在执行 C 程序时是从程序开头 执行的 D main 函数可以放在 C 程序的中间部分 但在执行 C 程序时是从 main 函数 开始的 6 下列说法正确的是 0 级 A 在执行 C 程序时不是从 mian 函数开始的 B C 程序书写格式严格限制 一行内必须写一个语句 C C 程序书写格式自由 一个语句可以分写在多行上 D C 程序书写格式严格限制 一行内必须写一个语句 并要有行号 7 在 C 语言中 每个语句和数据定义是用 结束 0 级 A 句号 B 逗号 C 分号 D 括号 8 下列字符串是标识符的是 0 级 A HJ B 9 student C long D LINE 1 9 以下说法正确的是 0 级 A C 语言程序总是从第一个定义的函数开始执行 B 在 C 语言程序中 要调用的函数必须在 main 函数中定义 C C 语言程序总是从 main 函数开始执行 D C 语言程序中的 main 函数必须放在程序的开始部分 10 不是 C 语言提供的合法关键字 0 级 A switch B print C case D default 11 C 语言提供的合法关键字是 0 级 A breack B print C funiton D end 12 C 语言提供的合法关键字是 0 级 A continue B procedure C begin D append 13 C 语言规定 在一个源程序中 main 函数的位置 02 03 第一学期试 题 A 必须在最开始 B 必须在系统调用的库函数的后面 C 可以在任意位置 D 必须在源文件的最后 14 一个 C 语言程序是由 02 03 第一学期试题 A 一个主程序和若干个子程序组成 B 函数组成 并且每一个 C 程序必须且只能由一个主函数 C 若干过程组成 D 若干子程序组成 二 填空题 1 一个 C 程序至少包含一个 即 0 级 2 一个函数由两部分组成 它们是 和 0 级 3 函数体的范围是 0 级 4 函数体一般包括 和 0 级 5 C 语言是通过 来进行输入输出的 0 级 6 在 C 语言中 凡在一个标识符后面紧跟着一对圆括弧 就表明它是一个 0 级 7 主函数名后面的一对圆括号中间可以为空 但一对圆括号不能 0 级 第二章 C 语言程序设计的初步知识 一 选择题 1 在 C 语言中 下列类型属于构造类型的是 0 级 A 整型 B 字符型 C 实型 D 数组类型 2 在 C 语言中 下列类型属于构造类型的是 0 级 A 空类型 B 字符型 C 实型 D 共用体类型 3 在 C 语言中 下列类型属于构造类型的是 0 级 A 整型 B 指针类型 C 实型 D 结构体类型 4 在 C 语言中 下列类型属于基本类型的是 0 级 A 整型 实型 字符型 B 空类型 枚举型 C 结构体类型 实型 D 数组类型 实型 5 下列类型属于基本类型的是 0 级 A 结构体类型和整型 B 结构体类型 数组 指针 空类型 C 实型 D 空类型和枚举类型 6 下列字符串属于标识符的是 0 级 A INT B 5 student C 2ong D DF 7 下列字符串属于标识符的是 0 级 A WL B 3 3333 C int D LINE 3 8 下列字符串不属于标识符的是 0 级 A sum B average C day night D M D JOHN 9 下列字符串不属于标识符的是 0 级 A total B lutos 1 2 3 C night D 123 10 下列字符串不属于标识符的是 0 级 A above B all C end D dfg 11 C 语言中不能用来表示整常数的进制是 0 级 A 十进制 B 十六进制 C 八进制 D 二进制 12 C 语言中能用来表示整常数的进制是 0 级 A 十进制 八进制 十六进制 B 十二进制 十进制 C 六进制 八进制 D 二进制 十进制 13 在 C 语言中 回车换行符是 0 级 A n B t C v D b 14 在 C 语言中 退格符是 0 级 A n B t C v D b 15 在 C 语言中 反斜杠符是 0 级 A n B t C v D 16 在 ASCII 码表中可以看到每个小写字母的 ASCII 码比它相应的大写字母的 ASCII 码 0 级 A 大 32 B 大 64 C 小 32 D 小 64 17 设 d 为字符变量 下列表达式不正确的是 0 级 A d 97 B d a C d a D d g 18 设 d 为字符变量 下列表达式正确的是 0 级 A d 678 B d a C d d D d gjkl 19 10 a 1 5 567 345 b 的结果是 型数据 0 级 A long B double C int D unsigned float 20 语句 int i 3 k i i i 执行过后 k 的值为 i 的值为 0 级 A 9 6 B 12 5 C 18 6 D 15 5 21 如果 i 3 则 k i i i 执行过后 k 的值为 i 的值为 1 级 A 12 6 B 12 5 C 18 6 D 15 5 22 如果 i 3 则 k i i i 执行过后 k 的值为 i 的值为 1 级 A 15 6 B 12 5 C 18 6 D 15 5 23 如果 i 3 则 k i i i 执行过后 k 的值为 i 的值为 1 级 A 9 6 B 12 5 C 18 6 D 15 5 24 如果 int i 3 则 printf d i 的结果为 i 的值为 1 级 A 3 4 B 4 4 C 4 3 D 3 3 25 如果 int i 3 int j 4 则 k i j 执行之后 k i 和 j 的值分别为 1 级 A 7 3 4 B 8 3 5 C 7 4 4 D 8 4 5 26 已知在 ASCII 字符集中 数字 0 的序号为 48 下面程序的输出结果为 1 级 main char x y x 0 y 9 printf d d n x y A 因输出格式不合法 输出错误信息 B 48 57 C 0 9 D 48 58 27 已知在 ASCII 字符集中 字母 A 的序号为 65 下面程序的输出结果为 1 级 main char c A int i 10 c c 10 i c i printf c d n c i A 75 7 B 75 5 C K 5 D 因存在非图形字符 无法直接显示出来 28 已知在 ASCII 集中 字母 A 的序号为 65 下面程序的输出结果为 1 级 main char c1 B c2 Y printf d d n c1 c2 A 输出格式不合法 输出错误信息 B 67 88 C 66 89 D C X 29 C 语言中最简单的数据类型包括 1 级 A 整型 实型 逻辑型 B 整型 实型 字符型 C 整型 字符型 逻辑型 D 整型 实型 逻辑型 字符型 30 C 语言中 运算对象必须是整型数的运算符是 1 级 A B C 和 D 31 下列常数中 合法的 C 常量是 1 级 A 0 B 105 C AB D 3 5 32 下列常数中 合法的 C 常量是 1 级 A x y B 105 C Be D 7ff 33 下列常数中 合法的 C 常量是 1 级 A n B e 310 C DEF D 1234 34 下列常数中 不合法的 C 常量是 1 级 A 0 x2al B lg3 C D CHINA 35 下列常数中 不合法的 C 常量是 1 级 A 0 x3bl B 123e 2 3 C D 6e 7 36 下列符号中 可以作为变量名的是 1 级 A a B 12345e C a3B D 5e 0 37 下列符号中 可以作为变量名的是 1 级 A c B X C DAY D next day 38 下面程序的输出结果是 1 级 main int x x 3 4 5 6 printf d x x 3 4 5 6 printf d x x 3 4 6 5 printf d x x 7 6 5 2 printf d x A 11 1 0 1 B 11 3 2 1 C 12 3 2 1 D 11 1 2 1 39 下面程序的输出结果是 1 级 mian int x 2 y 0 z x 3 2 printf d x x y z 4 printf d x A 8 40 B 10 40 C 10 4 D 8 4 40 下面程序的输出结果是 1 级 main int x 2 y 0 z x 3 2 printf d x x y z 4 printf d x A 7 28 B 无法计算 C 7 4 D 8 4 41 下面程序的输出结果是 1 级 main int x 4 y 0 z x 3 2 printf d x x y z 4 printf d x A 14 40 B 20 0 C 20 4 D 14 4 42 下面程序的输出结果是 1 级 main int i j i 16 j i i printf d j i 15 printf d d i i A 32 16 15 B 33 15 15 C 34 15 16 D 34 16 15 43 在 C 语言中 以下合法的字符常量是 1 级 A 084 B x43 C 0 D 0 44 若已定义 X 和 Y 为 double 类型 则表达式 x 1 y x 3 2 的值为 1 级 A 1 B 2 C 2 0 D 2 5 45 下列程序的执行结果是 1 级 include define sum 10 20 main int b 0 c 0 b 5 c sum b printf d c A 100 B 110 C 70 D 150 46 下列程序的执行结果是 1 级 include define sum 10 20 mian int a 0 b 0 c 0 a sum b 5 c sum b printf d c A 100 B 110 C 70 D 150 47 表达式 int 2 1416 的值为 1 级 A 2 B 2 1 C 0 D 3 48 表达式 double 20 3 的值为 1 级 A 6 B 6 0 C 2 D 3 49 在下面几组数据类型中 全是基本数据类型是哪一组 02 03 第一学 期试题 A 整型 实型 字符型 B 整型 数组 指针 C 数组 结构体 共用体 D 指针 逻辑型 空类型 50 以下说法正确的是 02 03 第一学期试题 A 在 C 程序中 每行只能写一条语句 B 在 C 程序中 无论是整数还是实数 其存放形式都一致 C 在 C 程序中 是只能用于整数运算的运算符 D 在 C 程序中 变量可以不必先定义就可使用 51 假设所有变量均为整型 则表达式 a 5 b 2 a a b 的值是 02 03 第一学期试题 A 8 B 7 C 6 D 5 52 若有以下定义 则正确的赋值语句为 02 03 第一学期试题 int a b float x A a 1 b 2 B b C a b 5 D b int x 53 C 语言规定标识符由 等字符组成 01 02 第二学期试题 字母 数字 下划线 中划线 字母 数字 字母 数字 逗号 字母 下划线 中划线 54 若有如下定义 int a 2 b 3 float x 3 5 y 2 5 则表达式 float a b 2 int x int y 的值是 01 02 第二学期试题 A 2 500000 B 3 500000 C 4 500000 D 5 000000 55 以下表达式 2 a i f 其中 i 为整型变量 f 为 float 型变量 则表达式的最终 数据类型为 01 02 第二学期试题 A int B float C char D double 56 若有 int a b 2 则 a b 100 1 5 100 则 a 的值是 01 02 第二学期试题 A 100 B 100 5 C 200 5 D 300 5 57 有如下语句 printf s 5 3s n COMPUTER COMPUTER 执行语句后的最终结果为 01 02 第二学期试题 A COMPUTER CMP B COMPUTER CMP C COMPU CMP D COMPU CMP 58 已知 ch 是字符型变量 下面不正确的赋值语句 是 03 试题 A ch 0 B ch a b C ch 7 9 D ch 7 9 59 若 x 和 y 都为 float 型变量 且 x 3 6 y 5 8 执行下列语句后输出结果为 03 试题 printf f x y A 3 600000 B 5 800000 C 3 600000 5 800000 D 输出符号不够 输出不正确值 60 设变量 a 是整型 变量 f 是实型 变量 I 是双精度型 则表达式 10 a I f 值的数据类型 往届试题 A int B float C double D 不确定 61 已知字母 A 的 ASCII 码为十进制 65 下面程序段的运行结果为 往届试题 char ch1 ch2 ch1 A 5 3 ch2 A 6 3 printf d c n ch1 ch2 A 67 D B B C C C D D 不确定值 62 以下不正确的 C 语言标识符是 04 05 第二学期试题 A ABC B abc C a bc D ab c 63 设 x y 均为 float 型变量 则以下不合法的赋值语句是 04 05 第 二学期试题 A x B y x 2 10 C x y 8 D x y 0 64 若有说明语句 char c 64 则变量 C 包含 往届试题 A 1 个字符 B 2 个字符 C 3 个字符 D 说明不合法 C 值不确定 65 表达式 18 4 sqrt 4 0 8 值的数据类型为 往届试题 A int B float C double D 不确定 66 设整型变量 a 值为 9 则下列表达式中使 b 的值不为 4 的表达式 往届试题 A b a 2 B b a 2 C b 8 3 a 5 D b a 5 4 2 67 设有以下定义 则能使值为 3 的表达式是 往届试题 int k 7 x 12 A x k 5 B x k k 5 C x k D x k k 5 68 以下选项中是 C 语言的数据类型的是 往届试题 A 复数型 B 逻辑型 C 双精度型 D 集合型 二 填空题 1 C 语言的数据类型有四大类 分别是 0 级 2 C 语言数据类型中构造类型包括三种 他们是 0 级 3 C 语言基本数据类型包括 0 级 4 在 C 语言中 程序运行期间 其值不能被改变的量叫 0 级 5 在 C 语言中 常量有不同的类型 包括 和 等 0 级 6 符号常量是指 0 级 7 整型常量和实型常量也称为 它们有正负之分 0 级 8 在 C 语言中 在习惯上符号常量名用 变量用 大写或小写 0 级 9 在 C 语言中 变量是 0 级 10 变量也有不同类型 如 和 等 0 级 11 C 语言在定义变量的同时说明变量的 系统在编译时就能根据变量定 义及其 为它分配相应数量的存储空间 0 级 12 在 C 语言中 用来标识变量名 符号常量名 函数名 数组名 类型名 文件名的有效字符序列称为 0 级 13 在 C 语言中 标识符只能由 和 三种字符组成 且第一个 字符必须 或 0 级 14 在 C 语言中 要求对所有甬道的变量 遵循先定义后 的原则 0 级 15 可以用来表示 C 的整常数的进制是 0 级 16 整型变量可分为 四种 分别用 0 级 17 在一个整常量后面加一个字母 和 则认为是 long int 型常量 0 级 18 在 C 语言中 实数有两种表现形式 是 和 0 级 19 实型变量分为 和 即 float 和 double 型 0 级 20 C 的字符常量是用 括起来的一个字符 0 级 21 在一个变量定义语句中可以同时定义多个变量 变量之间用 隔开 0 级 22 C 语言中规定 在变量定义的同时也可以给变量赋初值 叫做 0 级 23 下面的程序 mian printf abc tde rfg n 空白处分别为两个和一个空格 printf h ti b bjk 空白处为三个空格 运行结果是 1 级 24 int 型的取值范围是 0 级 25 在 C 语言中 字符型数据和整型数据之间可以通用 一个字符数据既能 输出 也可以 输出 0 级 26 下面的程序 main char c1 c2 c1 a c2 b c1 c1 32 c2 c2 32 printf c c c1 c2 运行结果为 0 级 27 在 ASC 代码表中可以看到每一个小写字母比相应的大写字母的 ASC 代 码大 0 级 28 C 的字符串常量是用 括起来的字符序列 0 级 29 在 C 语言中 系统在每一个字符串的结尾自动加一个 字符串结束标志符 即 以便系统据此数据判断字符串是否结束 0 级 30 表达式 10 a 1 5 0 5 b 的结果 1 级 31 表达式 10 a 1 5 567 345 b 的结果是 型数据 1 级 32 在 TURBO 中 单精度实数的取值范围在 之间 1 级 33 在 C 语言中 加减乘除这些运算符需要两个运算对象 称为 运算符 34 在 C 语言中 算术运算符的结合性是 1 级 35 下面的程序 mian float x int i x 3 6 i int x printf x f i d x i 运行结果为 1 级 36 如果 int i 3 则 printf d i 执行后输出是 i 的结果是 1 级 37 在 C 语言中 表达式的类型有 1 级 38 逗号表达式的形式如下 表达式 1 表达式 2 则逗号表达式的结果是 的值 1 级 39 表达式 x a 3 6 3 和表达式 x a 3 6 a 分别是 表达式和 表达式 两个表达式执行完的结果是 和 执行后 X 的值分别是 1 级 40 main int i j m n i 8 j 10 m i n j printf d d d d i j m n 运行后 i j m n 的值是 1 级 41 在 C 语言中的运算符优先级最小的是 运算符 1 级 42 在 C 语言中 可以利用 将一个表达式的值转换成指定的类型 第三章 顺序结构程序设计 一 选择题 1 C 语言中调用 printf 进行输出时需要注意 在格式控制串中 格式说明与输出项的 个数必须相同 如果格式说明的个数小于输出项的个数 多余的输出项将 如果格式说明的个数多于输出项的个数 则对于多余的格式将输出不定值 或 0 0 级 A 不予输出 B 输出空格 C 照样输出 D 输出不定值或 0 2 在 scanf 函数的格式控制中 格式说明的类型与输入的类型应该一一对应匹配 如果类型不匹配 系统 0 级 A 不予接收 B 并不给出出错信息 但不可能得出正确信息数据 C 能接受正确输入 D 给出出错信息 不予接收输入 3 下列说法正确的是 0 级 A 输入项可以是一个实型常量 如 scanf f 4 8 B 只有格式控制 没有输入项也能进行正确输入 如 scanf a d b d C 当输入一个实型数据时 格式控制部分应规定小数点后的位数 如 scanf 5 3f float x printf input a x 输入语句 输出语句 输入形式 input a x 3 2 1 输出形式 a x 5 10 A scanf d f printf na x 4 2f a x B scanf d f printf na x 4 2f a x C scanf d f printf na x 6 1f a x D scanf d 3 1f printf na x 4 2f a x 5 以下程序的输出结果是 1 级 main int i 010 j 10 k 0 x10 printf d d d n i j k A 8 10 16 B 8 10 10 C 10 10 10 D 10 10 16 6 以下程序的输出结果是 1 级 main int i 011 j 11 k 0 x11 printf d d d n i j k A 9 11 17 B 9 11 11 C 11 11 11 D 11 11 16 7 以下程序的输出结果是 1 级 include main printf d n NULL A 不确定的值 因变量无定义 B 0 C 1 D 1 8 以下程序的输出结果是 1 级 main char c1 6 c2 0 printf c c d d n c1 c2 c1 c2 c1 c2 A 因输出格式不合法 输出出错信息 B 6 0 6 102 C 6 0 7 6 D 6 0 5 7 9 设有如下定义 int x 10 y 3 z 则语句 printf d n z x y x y 的输出结果是 1 级 A 3 B 0 C 4 D 1 10 设有如下定义 int x 10 y 5 z 则语句 printf d n z x y x y 的输出结果是 1 级 A 1 B 0 C 4 D 3 11 以下程序的输出结果是 1 级 main int x 10 y 10 printf d d n x y A 10 10 B 9 9 C 9 10 D 10 9 12 写出下面程序的输出结果 1 级 main int x x 3 4 5 6 printf d x x 3 4 5 6 printf d x x 3 4 6 5 printf d x x 7 6 5 2 printf d x A 11 1 0 1 B 11 3 2 1 C 12 3 2 1 D 11 1 2 1 13 写出下面程序的输出结果 1 级 main int x y z x y 1 z x 1 printf d d t x z z x y printf d d x z A 2 0 3 0 B 2 1 3 0 C 2 0 2 1 D 2 1 0 1 14 写出下面程序的输出结果 1 级 main int i j i 20 j i i printf d j i 13 printf d d i i A 42 14 13 B 41 14 14 C 42 13 13 D 42 13 14 15 若有定义 int x y char a b c 并有以下输入数据 此处 代表换行符 1 2 A B C 则能给 x 赋整数 1 给 y 赋整数 2 给 a 赋字符 A 给 b 赋字符 B 给 c 赋字符 C 的 正确程序段是 1 级 A scanf x dy d a getchar b getchar c getchar B scanf d d a getchar b getchar c getchar C scanf d d c c c c c c D scanf d d c c c 16 若已知 a 10 b 20 则表达式 a b 的值为 1 级 A 10 B 20 C 1 D 0 17 printf 函数中用到格式符 4s 其中数字 4 表示输出的字符串站用 4 列 如 果字符串长度大于 4 则按原字符长从左向右全部输出 如果字符串长度小于 4 则 输出方式为 1 级 A 从左起输出该字符串 右补空格 B 按原字符长从左向右全部输出 C 右对齐输出该字符 左补空格 D 输出错误信息 18 以下 C 程序 正确的运行结果是 1 级 main long y 34567 printf y 8ld n y printf y 08ld n y printf y 08ld n y printf y 8ld n y A y 34567 B y 34567 y 34567 y 34567 y 0034567 y 0034567 y 34567 y 34567 C y 34567 D y 34567 y 34567 y 0034567 y 0034567 y 00034567 y 34567 y 34567 19 程序的基本编译单位是 01 02 第二学期试题 A 函数 B 文件 C 源文件 D 子程序 20 设有如下定义和执行语句 其输出结果为 03 试题 int a 3 b 3 a b 1 printf d d a b A 3 2 B 4 2 C 2 2 D 2 3 21 根据定义和数据的输入方式 输入语句的正确形式为 往届试题 已有定义 float a1 a2 数据的输入方式 4 523 3 52 A scanf f f B scanf f f a1 a2 C scanf 4 3f 3 2f D scanf 4 3f 3 2f a1 a2 22 以下程序的输出结果是 往届试题 main int I 012 j 12 k 0 x12 printf d d d n I j k A 10 12 18 B 12 12 12 C 10 12 12 D 12 12 18 23 以下程序的输出结果是 注 表示空格 往届试题 main printf n s1 8s china printf n s2 5s chi A s1 china B s1 china s2 chi s2 chi C s1 china D s1 china s2 chi s2 chi 二 填空题 1 C 语言中的语句可分为 5 类 即 0 级 2 由一次函数调用加一个分号构成一个 语句 0 级 3 putchar 函数的作用是 0 级 4 printf 是 C 语言提供的标准输出函数 它的作用是 0 级 5 printf 函数的 格式控制 包括两部分 他们是 和 0 级 6 对不同类型的语句有不同的格式字符 例如 格式字符是用来输出十 进制整数 格式字符是用来输出一个字符 格式字符是用来输出一个 字符串 0 级 7 ms 表示如果串长 m 则在 m 列范围内 字符串向 靠 补空 格 0 级 8 如果要输出字符 x 3 2 printf d n x x y z 4 printf d n x x y z printf d n x x y z printf d n x 程序的输出结果为 1 级 15 编制程序对实数 a 与 b 进行加 减 乘 除计算 要求显示如下结果 jia 70 000000 jian 30 000000 cheng 1000 000000 chu 2 5000000 程序 include void main void 1 a 50 0 b 20 0 printf jia f n 2 printf jian f n 3 printf cheng f n 4 printf chu f n 5 将缺少的部分填在空白处 1 级 16 下列程序的输出结果是 1 级 include main char a a A printf d c a a 17 分析下面程序 main int x y z x y 1 z x 1 printf d d n x z z x y printf d d x z 程序的输出结果是 1 级 18 分析下面程序 main int x y x 16 y x x printf d n y x 15 printf d d n x x x 20 y x x printf d n y x 13 printf d x x 程序的输出结果是 1 级 19 以下程序的输出结果为 03 试题 main float a 3 14 b 3 14159 printf f 5 3f n a b 20 以下程序的输出结果为 04 05 第二学期试题 include main char c1 c2 c1 a c2 n printf c c c1 c2 三 编程题 1 从键盘上输入一个大写字母 要求改用小写字母输出 1 级 2 编写程序 求方程 ax2 bx c 0 的解 x 1 级 3 请编写一个程序 能显示出以下两行文字 1 级 I am a student I love China 第四章 选择结构程序设计 一 选择题 1 下列运算符中优先级最高的是 0 级 A B C x 1 y 1 c 0 c x y printf n d d d n x y c A 110 B 211 C 011 D 001 6 以下程序的运行结果是 1 级 main int c x y x 0 y 0 c 0 c x printf n d d d n x y c A 100 B 211 C 011 D 001 7 判断字符型变量 ch 为大写字母的表达式是 1 级 A A ch A x x 1 printf f x else printf f x else printf f x C if x 0 D if x 0 x x 1 printf f x x x 1 printf f x else printf f x else printf f x 10 分析以下程序 main int x 5 a 0 b 0 if x a b printf n else printf n 以上程序 1 级 A 有语法错 不能通过编译 B 通过编译 但不能连接 C 输出 D 输出 11 两次运行下面的程序 如果从键盘上分别输入 6 和 4 则输出结果是 1 级 main int x scanf d if x 5 printf d x else printf d n x A 7 和 5 B 6 和 3 C 7 和 4 D 6 和 4 12 写出下面程序的执行结果 1 级 main int x y 1 if y 0 x 5 printf d t x if y 0 x 3 else x 5 printf d t n x A 1 3 B 1 5 C 5 3 D 5 5 13 写出下面程序的执行结果 2 级 main int x 1 y 1 z 0 if z0 x 3 else x 5 printf d t x if z y 0 x 3 else if y 0 x 5 else x 7 printf d t x printf d t z A 1 7 0 B 3 7 0 C 5 5 0 D 1 5 1 14 假定所有变量均已正确说明 下列程序段运行后 x 的值是 1 级 a b c 0 x 35 if a x 1 else if b if c x 3 else x 4 A 34 B 4 C 35 D 3 15 写出下面程序的运行结果是 2 级 main int x y 1 z if y 0 x 5 printf x d t x if y 0 x 3 else x 5 printf x d t n x z 1 if z0 x 3 else x 5 printf x d t n x if z y 0 x 5 else x 7 printf x d t x printf d t n z if x y z x 3 printf x d t x printf z d t n z A x 5 x 5 B x 5 x 5 x 1 x 1 x 7 z 0 x 5 z 0 x 3 z 1 x 3 z 0 C x 5 x 5 D x 5 x 5 x 5 x 1 x 7 z 0 x 7 z 0 x 0 z 0 x 3 z 0 16 若有以下函数关系 x0 y x x 0 y x 1 下面程序段能正确表示以上关系的是 2 级 A y 2 x B y 2 x if x 0 if x0 y x if x 0 y x 1 else y x 1 else y x C if x 0 D y x 1 if x 0 y x if x 0 else y x 1 if x 0 y 2 x else y 2 x else y x 17 若有以下变量定义 float x int a b 则正确的 switch 语句是 1 级 A switch x case 1 0 printf n case 2 0 printf n B switch x case 1 2 printf n case 3 printf n C switch a b case 1 printf n case 2 a printf n D switch a b case 1 printf n case 1 2 printf n 18 以下关于运算符优先顺序的描述正确的是 02 03 第一学期试题 A 关系运算符 算术运算符 赋值运算符 逻辑运算符 B 逻辑运算符 关系运算符 算术运算符 赋值运算符 C 赋值运算符 逻辑运算符 关系运算符 算术运算符 D 算术运算符 关系运算符 赋值运算符 10 或 a 10 or a 10 a 10 B if x y x y C if x y scanf d D if x y x y 21 当 a 1 b 3 c 5 d 4 时 执行完下面程序段后 x 的值为 02 03 第一学期试题 if a b if c d x 1 else if a c if b b printf f a B if a b printf f a else printf f b C if a b printf f a D if a b printf f b else printf f b else printf f a 23 能表示整数 x 符合下面两个条件的语句是 01 02 第二学期试题 1 能被 4 整除 但不能被 100 整除 2 能被 4 整除 又能被 400 整除 A x 4 0 x y y z A x 50 y 80 z 80 B x 50 y 30 z 30 C x 30 y 50 z 80 D x 80 y 30 z 50 27 C 语言中 要求运算对象必须是整型的运算符是 往届试题 A B C D 28 已知 int x 30 y 50 z 80 以下语句执行后变量 x y z 的值分别为 往届试题 if x y xz z x x y y z A x 50 y 80 z 80 B x 50 y 30 z 30 C x 30 y 50 z 80 D x 80 y 30 z 50 29 以下程序的输出结果是 04 05 第二学期试题 main int x 2 y 1 z 2 if x y if y 0 z 0 else z 1 printf d n z A 3 B 2 C 1 D 0 30 设 a b 和 c 是 int 型变量 且 a 2 b 4 c 6 则下面表达式中值为 0 的是 往届试题 A a b B a b C a b c B if x 0 x x y printf f x else printf f x C if x 0 x x y printf f x else printf f x D if x 0 x x y printf f x else printf f x 35 为了表示关系 x y z 应使用 C 语言表达式 1 级 A x y x y 1 z x 1 printf d d t x z z x y z printf d d x z A 2 0 3 1 B 2 1 3 0 C 2 0 2 1 D 2 1 0 1 38 下面程序的输出结果是 1 级 main int x 40 y 4 z 4 x y z printf d x x x y z printf d x A 4 0 B 4 1 C 1 1 D 1 0 39 若 x 3 y z 4 则下列表达式的值分别为 1 级 1 z y x 1 0 2 z y k a 0 printf d d d k a b A 1 0 4 B 0 0 4 C 1 0 3 D 0 0 3 43 若已定义 int a 25 b 14 c 19 以下三项运算符 所构成的语句的执行结果是 1 级 a 25 char c printf nPlease enter 1 number c getchar while c n if c label 1 c getchar if label 1 printf nfloat else printf nint 3 以下两条 if 语句可合并成一条 if 语句为 1 级 if ab printf y d n y else printf x d n x 4 以下程序的功能是计算一元二次方程 ax2 bx c 0 的根 补足程序中空缺的语 句 2 级 include main float a b c abs derta doublea part1 part2 printf enter a b c scanf f f f if 1 if 2 printf no answer due to input error n else printf the single root is f n c b else derta b b 4 a c doublea 2 a part1 b 2 a abs abs derta part2 sqrt abs doublea if 3 printf complex root nreal part f image part f n part1 part2 else printf real roots n root1 f root2 f n part1 part2 part1 part2 5 设有程序片段如下 switch class case A printf GREAT n case B printf GOOD n case C printf OK n case D printf NO n default printf ERROR n 若 class 的值为 C 则输出结果是 1 级 6 以下程序段的运行结果是 1 级 int x 1 y 0 switch x case 1 switch y case 0 printf x 1 y 0 n break case 1 printf y 1 n break case 2 printf x 2 n 7 根据以下 if 语句写出与其功能相同的 switch 语句 x 的值在 0 100 之间 1 级 if 语句 if x 60 m 1 else if x 70 m 2 else if x 80 m 3 else if x 90 m 4 else if x 100 m 5 switch 语句 switch 1 2 m 1 break case 6 m 2 break case 7 m 3 break case 8 m 4 break 3 m 5 8 输入 3 个实数 a b c 要求按从大到小的顺序输出三数 01 02 第二学期试题 main float a b c t scanf f f f if a b t a 1 b t if 2 t a a c c t if b a else if a b c 0 else c 1 printf d n c 11 以下程序的运行结果是 04 05 第二学期试题 main int x x 5 if x 5 printf x d x else printf x d x 12 在 C 语言中提供的条件运算符 的功能是 1 级 13 条件表达式 a b c 其中 a b c 是三个运算分量 当运算分量 a 的值为真 则 否 则 1 级 14 在 C 语言中的逻辑运算符的优先级是 高于 高于 1 级 15 main int a b c a b c 1 a b b c c a printf 1 d n a b a b printf 2 d n a c a c a b c printf AA printf CC printf n a d b d c d n a b c 运行结果为 1 2 1 级 16 用 C 语言描述下列命题 1 级 1 a 小于 b 或小于 c 2 a 和 b 都大于 c 3 a 或 b 中有一个小于 c 4 a 是奇数 17 main int x 1 y 1 z 1 y y z x x y printf d x y y x printf d x y 运行结果为 1 级 19 若 x 3 y 2 z 1 求下列表达式的值 1 x y y x 2 x y x y 3 z x y x y 表达式的值分别是 1 2 3 1 级 20 表示条件 10 100 或 x 0 的 C 语言表达式是 1 级 21 分析下列程序 main printf d 1 4 printf d 1 4 printf d 2 5 printf d 1 3 2 5 printf d 4 6 程序的输出结果是 1 级 三 编程题 1 编写一个程序 要求有键盘输入三个数 计算以这三个数为边长的三角形的 面积 1 级 2 输入圆的的半径 r 和一个整型数 k 当 k 1 时 计算圆的面积 但 k 2 时 计算圆的周长 当 k 3 时 既要求求圆的周长也要求出圆的面积 编程实现以上功 能 1 级 3 编写程序 判断某一年是否是闰年 1 级 4 有一函数 其函数关系如下 试编程求对应于每一自变量的函数值 03 试 题 x2 x 0 y 0 5x 10 0 x 10 x x 10 x 5 编一程序 对于给定的一个百分制成绩 输出相应的五分制成绩 设 90 分 以上为 A 80 89 分为 B 70 79 分为 C 60 69 分为 D 60 分以下为 E 往 届试题 6 试编程完成如下功能 输入一个不多于 4 位的整数 求出它是几位数 并逆序输出各位数字 往届试题 第五章 循环结构程序设计 一 选择题 1 while 循环语句中 while 后一对圆括号中表达式的值决定了循环体是否进行 因此 进入 while 循环后 一定有能使此表达式的值变为 的操作 否则 循环将会无限制地进行下去 0 级 A 0 B 1 C 成立 D 2 2 在 do while 循环中 循环由 do 开始 用 while 结束 必须注意的是 在 while 表达式后面的 不能丢 它表示 do while 语句的结束 0 级 A 0 B 1 C D 3 for 语句中的表达式可以部分或全部省略 但两个 不可省略 但当三个 表达式均省略后 因缺少条件判断 循环会无限制地执行下去 形成死循环 0 级 A 0 B 1 C D 4 程序段如下 int k 20 while k 0 k k 1 则以下说法中正确的是 1 级 A while 循环执行 20 次 B 循环是无限循环 C 循环体语句一次也不执行 D 循环体语句执行一次 5 程序段如下 int k 1 while k 0 k k 1 printf d n k 说法正确的是 1 级 A while 循环执行 2 次 B 循环是无限循环 C 循环体语句一次也不执行 D 循环体语句执行一次 6 以下 for 循环是 1 级 for a 0 b 0 b 123 a A 无限循环 B 循环次数不定 C 执行 4 次 D 执行 5 次 7 在下列程序中 while 循环的循环次数是 1 级 main int i 0 while i 10 if i 1 continue if i 5 break i A 1 B 10 C 6 D 死循环 不能确定次数 8 程序段如下 int k 0 while k 2 printf d n k 则执行结果是 1 级 A 1 B 2 C 0 D 无结果 2 3 1 3 4 2 9 程序段如下 int k 0 while k 2 printf last d n k 则执行结果是 last 1 级 A 2 B 3 C 4 D 无结果 10 执行下面的程序后 a 的值为 1 级 main int a b for a 1 b 1 a 20 break if b 3 1 b 3 continue b 5 A 7 B 8 C 9 D 10 11 以下程序的输出结果 1 级 main int x 3 do printf 3d x 2 while x A 1 B 30 3 C 1 2 D 死循环 12 定义如下变量 int n 10 则下列循环的输出结果是 1 级 while n 7 n printf d n n A 10 B 9 C 10 D 9 9 8 9 8 8 7 8 7 7 6 13 以下程序的输出结果 1 级 main int n 0 while n 1 printf d t n printf d n n A 1 2 3 B 0 1 2 C 1 1 2 D 1 2 2 14 以下程序的输出结果是 1 级 main int i for i 1 i 5 i if i 2 printf else continue printf printf n A B C D 15 以下程序的输出结果是 1 级 main int a 0 i for i i 5 i swich i case 0 case 3 a 2 case 1 case2 a 3 default a 5 printf d n a A 31 B 13 C 10 D 20 16 以下程序的输出结果是 1 级 include main int i 0 a 0 while i 20 for if i 10 0 break else i i 11 a i printf d n a A 21 B 32 C 33 D 11 17 当输入为 quert 时 下面程序的执行结果是 1 级 include main char c c getchar while c getchar putchar c A Quert B vfsu C quert D rvfsu 18 当输入为 quert 时 下面程序的执行结果是 1 级 include main while putchar getchar A quert B Rvfsu C quert D rvfsu 19 当输入为 quert 时 下面程序的执行结果是 2 级 include main ch
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 考试试卷


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!