《C语言往年试题》PPT课件.ppt_第1页
《C语言往年试题》PPT课件.ppt_第2页
《C语言往年试题》PPT课件.ppt_第3页
《C语言往年试题》PPT课件.ppt_第4页
《C语言往年试题》PPT课件.ppt_第5页
已阅读5页,还剩50页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1 08 09学年第2学期 C语言程序设计 试卷 2 一 单项选择题 每题2分 共50分 1 设有以下宏定义 defineN3 defineY n N 1 n 则执行语句 z 2 N Y 5 1 后 z的值为 A 出错B 42C 48D 54 2 若有说明 inta 10 则对数组元素的正确引用是 A a 10 B a 3 5 C a 5 D a 10 10 C D 3 3 以下能正确计算s 1 2 3 10的程序段是 A do i 1 s 1 s s i i while i 10 B do i 1 s 0 s s i i while i 10 C i 1 s 1 do s s i i while i 10 D i 1 s 0 do s s i i while i 10 C 4 4 下面程序段的运行结果是 for x 3 x 6 x printf x 2 d d n x A 3 4 5 B 3 4 5 C 3 4 5 D 3 4 5 D 5 5 若有说明 inta 10 1 2 3 4 5 6 7 8 9 10 p a 则数值为9的表达式是 A p 9B p 8 C p 9D p 8 6 若变量已正确说明为int型 要给a b c输入数据 以下正确的输入语句是 A read a b c B scanf d d d a b c C scanf D D D a b c D scanf d d d B D 6 7 下面不正确的字符串常量是 A abc B 1212 C 0 D 8 设有说明 charw intx floaty doublez 则表达式w x z y值的数据类型为 A floatB intC charD double A D 7 9 下面函数的功能是 sss char s char t while s A 求字符串的长度B 比较两个字符串的大小C 将字符串s复制到字符串t中D 将字符串s连接到字符串t中 B 8 10 以下错误的if语句是 A if x y z x B if x y z 0 C if x y printf d x elseprintf d y D if x y x y 11 如有函数调用语句 func rec1 rec2 rec3 rec4 rec5 在该函数调用语句中 含有的实参个数是 A 3B 4C 5D 有语法错误 C A 9 12 下面程序的输出结果是 main intn 5 0 0 0 i k 2 for i 0 i k i n i n i 1 printf d n n k A 不确定的值B 2C 1D 0 13 若二维数组a有m列 则计算任一元素a i j 在数组中位置的公示为 假设a 0 0 位于数组的第一个位置上 A i m jB j m iC i m j 1D i m j 1 D D 10 14 设x和y均为int变量 则以下语句 x y y x y x y 的功能是 A 把x和y按从小到大排序B 把x和y按从大到小排序C 无确定结果D 交换x和y中的值 D 11 15 若执行以下程序段 其输出结果是 inta 0 b 0 c 0 c a a 5 a b b 3 printf d d d a b c A 5 0 10B 0 0 5C 10 5 10D 5 0 3 16 C语言规定 在一个源程序中 main函数的位置 A 必须在最开始B 必须在系统调用的库函数的后面C 可以任意D 必须在最后 B C 12 17 在C语言中 每个语句和数据定义是用 结束 A 句号B 逗号C 分号D 括号 18 若有语句int point a 4 和point 下面均代表地址的一组选项是 A a point aB a a pointC point point aD a point point C D 13 19 在printf函数中用来输出十六进制无符号整数的格式字符是 A d格式符B x格式符C u格式符D o格式符 20 若要求在if后一对圆括号中表示a不等于0的关系 则能正确表示这一关系的表达式为 A aB aC a 0D a0 B A 14 21 利用fseek函数可以实现的操作是 A 改变文件的指针位置B 文件的顺序读写C 文件的随机读写D 以上答案均正确 22 设p1和p2为指向同一个int型一维数组的指针变量 k为int型变量 则不能正确执行的语句是 A k p1 p2 B p2 k C p1 p2 D k p1 p2 A B 15 23 若有说明 inta 3 1 2 3 4 5 6 7 则a数组第一维的大小是 A 2B 3C 4D 无确定值 24 以下程序的输出结果是 point char pt main charb 4 a c s f pt b point pt printf c n pt point char p p 3 A aB cC sD f B A 16 25 设有声明语句 inta 1 b 0 则执行以下语句后输出 swith a case1 swith b case0 printf 0 break case1 printf 1 break case2 printf 2 break A 0 B 0 2 C 0 1 2 D 有语法错误 B 17 二 程序填空题 每空2分 共16分 下面给出了若干个程序 请按照题意将下划线处缺少的部分补上 使其能正确运行 26 函数fun的功能是使一个字符串按逆序存放 请填空 voidfun charstr charm inti j for i 0 j strlen str i 1 i j m str i str i 2 str j 1 m printf s n str 1 j 2 str j 1 18 27 用 两路合并法 把已按升序排序的数组合并成一个升序数组 main inta 4 15 34 48 98 intb 5 12 32 55 67 78 intc 10 inti j k 3 while i 4 3 i j k 0 4 i 4 j 5 5 i 4 j 5 19 28 以下函数的功能是统计链表中结点的个数 其中head为指向第一个结点的指针 请在横线上填写正确内容 structlink chardata structlink next intcount not structlink head structlink p intc 0 p head while 6 7 p 8 6 p NULL 4 c c 1 5 p next 20 三 修改下列程序错误 每处3分 共15分 例main intI found i 5 printf d I 则答案为 将i 5 改为I 5 在修改中不得增行或减行 也不得更改程序的结构 21 29 以下程序中函数cpoystr的功能是 将p1指向的字符串中从第m个字符开始的全部字符复制到另一个字符串 由p2指向 例如 p1 abc de12345 m 5 则复制后 p2 e12345 请改正程序中的错误 使它能得出正确的结果 22 includeintcopystr char p1 char p2 intm found 1 p1 p1 m while p1 0 found 2 p1 p2 p1 p2 found 3 p2 0 main intm charstr1 20 str2 20 printf inputstring gets str1 printf whichcharacterthatbegintocopy scanf d p1 p1 m 改成p1 p1 m 1 p1 p2 改成 p2 p1 p2 0 改成 p2 0 23 30 按顺序读入10名学生4门课程成绩 计算出每位学生的平均分并输出 main intn k score sum floatave found 4 For n 1 n 10 n sum 0 scanf d For n 1 n 10 n 改成for n 1 n 10 n ave sum 4 改成ave sum 4 0 24 四 程序设计 共2题 第一题9分 第二题10分 共19分 31 编程实现用递归法计算n n 可用下述公式描述 1 n 0 1 n n 1 n 1 n 25 32 假定输入的字符串只含字母和 号 请编写函数fun 它的功能是 除了尾部的 号外 将字符串中的其他 号全部删除 形参p已指向字符串中最后一个字母 在编写函数时 不得是用C语言提供的字符串函数 例如 字符串的内容为 A BC DEF G 删除后 字符串中的内容应是 ABCDEFG 注意 部分源程序如下 请勿改动主函数main和其他函数中的任何内容 仅在函数fun的花括号中填入你编写的若干语句 26 includevoidfun char a char p main chars 81 t printf Enterastring n gets s t s while t t t while t t fun s t printf Thestringafterdeleted n puts s 27 07 08学年第2学期 C语言程序设计 试卷 28 一 单项选择题 每题2分 共50分 1 以下叙述不正确的是 一个 语言程序可以由一个或多个函数组成 语言程序的基本组成单位是函数 在 语言程序中 注释只能位于一条语句的后面 一个 语言程序必须包含一个main函数 2 若已定义x和y为double类型 则执行表达式x 1 y x 5 2后 y的值是 A 2 0B 3C 3 0D 3 5 C C 29 3 在C语言中 字符型 char 数据在内存中存放的形式为 A BCD码B 原码C 补码D ASCII码 4 在C语言中 下列合法的长整型常量为 A a B 0 012345C 2 14e12D 0L 5 若定义语句 inta b c p D D C 30 6 若变量已正确定义并赋值 以下合法的C语言赋值语句是 A x y 5 B x n 2 5C x n i D x 5 4 1 7 若变量已正确定义 有以下程序段 inti 0 doprintf d i while i printf d n i 其输出结果为 A 0 0B 0 1C 1 1D 程序进入无限循环 A B 31 8 下面的程序段表示的数学函数关系是 y 1 if x 0 if x 0 y 1 elsey 0 C 32 9 有以下程序 程序运行结果是 include inty 9 for y 0 y if y 3 0 printf d y A 741B 963C 852D 875421 C 33 10 下面程序段的输出结果是 x 3 do y x if y printf x continue printf while 1 x 2 A 将输出 B 将输出 C 是死循环D 含有不合法的控制表达式 C 34 11 以下叙述中正确的是 A 用 include包含的头文件的后缀不可以是 a B 若一些源文件中包含某头文件 当该头文件有错时 只需对该头文件进行修改 包含此头文件的所有源程序不必重新进行编译C 宏定义可以看成是一行语句D C程序中的预处理是在编译之前进行的 D 35 12 以下程序的输出结果是 defineS r 10 r rmain inta 20 b 20 s s S a b printf d n s A 320B 620C 16000D 400 B 36 13 以下程序的输出结果是 main intx 1 y 0 a 0 b 0 switch x case1 switch y case0 a break case1 b break case2 a b break printf a d b d n a b A a 2 b 1B a 1 b 1C a 1 b 0D a 2 b 2 A 37 14 若w 1 x 2 u 3 z 4 则表达式w x w u z u z的值是 A 4B 3C 2D 1 15 以下正确的字符串常量是 A B abc C D OlympicGames D C 38 16 在以下定义中 标识符fprt是 int fprt A 是一个指向一维数组的指针B 是一个指向int型变量的指针C 是一个指向函数的指针 该函数返回值为int型D 定义不正确 C 39 17 以下程序的输出结果是 main intk 8 m 4 n 6 int pk A 36B 32C 8D 10 B 40 18 当调用函数时 实参是一个数组名 则实参向形参传递的是 A 数组的长度B 数组的首地址C 数组每一个元素的地址D 数组每个元素的值 B 19 以下能正确表示的C语言表达式是 A a b a b cB a b a b cC a b a b c D a b c a b D 41 21 以下是对数组s的初始化 其中不正确的是 A chars abc B chars 5 a b c C chars 5 D chars 5 abcdef 20 以下不正确的定义语句是 A doublex 5 2 0 4 0 6 0 8 0 10 0 B inty 5 0 1 3 5 7 9 C charc1 1 2 3 4 5 D charc2 x10 xa x8 B D 42 includemain FILE fp inti 30 j 40 k n fp fopen d1 dat w fprintf fp d n i fprintf fp d n j fclose fp fp fopen d1 dat r fscanf fp d d n 22 以下程序的运行结果是 A 2030B 3040C 3050D 2040 B 43 23 若有定义语句 inta 3 6 按在内存中的存放顺序 a数组的第10个元素是 A a 0 4 B a 1 3 C a 0 3 D a 1 4 B 24 在一个C程序中 main函数出现的位置是 A 必须在程序的最后面B 可以在任意地方C 必须在程序的最前面D 必须在系统调用的库函数的后面 B 44 25 若fp是一个指向某二进制文件的指针 且已读到此文件的末尾 则库函数feof fp 的返回值是 A EOFB 0C 1D NULL C 45 二 程序填空题 每空2分 共16分 请按照题意将缺少部分补上 使其能正确运行 26 用for循环打印147101316192225 请完善printf函数 for i 1 i 9 i printf 3d 1 1 3 i 1 46 27 输入一个字符 如果它是一个大写字母 则变成小写字母 如果是一个小写字母 则变成大写字母 其它字符不变 请填空完成 main charch scanf c 2 ch A ch Z 3 ch ch 32 47 28 以下函数fun的功能是 把一个整数n转换成字符串 并倒序保存到字符数组str中 例如 当n 13572468时 str 86427531 charstr 80 voidfun longintn intI 0 while 4 str I 5 n 10 I 6 4 n 0 5 n 10 48 6 str I 0 48 29 输入3个int型的整数 求最大数 includeintmax intx inty return 7 main inta b c scanf d d d 7 x y x y 8 a max b c 49 三 修改下列程序的错误 每处3分 共15分 在书写过程中 如某一行中有错 请先将该行所有语句抄写 在写出正确的一行的所有语句 例main intI found i 5 printf d I 则答案为 将i 5 改为I 5 在修改中不得增行或减行 也不得更改程序的结构 50 30 下列给定程序中函数fun的功能是 计算1 n 的值 例如 给n输入5 则输出0 008333 include include found 1 intfun intn doubleresult 1 0 if n 0 return1 0 while n 1 voidmain intn printf inputn scanf d 51 31 以下程序中函

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论