中南大学C语言程序设计试卷.docx

C 语言程序设计试卷一、单项选择题每题1分,共20分1. C语言规定在一个源程序中,main函数的位置 。A. 必须在最开始B. 必须在系统调用的库函数的后面C. 可以任意 D. 必须在最后 2. 下面四个选项中,均是合法浮点数的选项是 。A. 1e1 5e-9.4 03e2B. -.60 12e-4 -8e5C. 123e 1.2e-.4 2e-1D. -e3 .8e-4 5.e-0 3. 若a-14,b3,则条件表达式 ab ab1的值为( ) 。A. -14 B. -13 C. 3 D. 4 4. 已知int n,i1,j2;执行语句nijij;则i和j的值是 .A. 1,2 B. 1,3 C. 2,2 D. 2,3 5. 为了判断两个字符串s1和s2是否相等,应当使用 A. if s1s2 B. ifs1s2C. if strcmps1,s2D. if strcmps1,s20 6. 以下正确的描述是 。A. 函数的定义可以嵌套,但函数的调用不可以嵌套。B. 函数的定义不可以嵌套,但函数的调用可以嵌套。C. 函数的定义和函数的调用均不可以嵌套。D. 函数的定义和函数的调用均可以嵌套。 7. 在C语言中,下面对函数不正确的描述是 。A. 当用数组名作形参时,形参数组值的改变可以使实参数组之值相应改变。B. 允许函数递归调用。C. 函数形参的作用范围只是局限于所定义的函数内。D. 子函数必须位于主函数之前。 8. 如果在一个函数中的复合语句中定义了一个变量,则以下正确的说法是 。A. 该变量只在该复合语句中有效B. 该变量在该函数中有效C. 该变量在本程序范围内均有效D. 该变量为非法变量 9. 以下正确的函数形式是 。A. double funint x,int y zxy;return z;B. funint x,y int z; return z;C. funx,y int x,y; double z; zxy; return z;D. double fun int x,int y double z; zxy; return z; 10. 以下程序的输出结果是 。 includestdio.h define Fy 8.19-y define PRINTa printfd,inta void mainvoid int x2; PRINTx*F3; A. 10 B. 13 C. 11 D. 报错 11. 以下程序中编译和运行结果均正确的一个是 。A. A. void mainvoid union int n; float x; comm1; printfd,comm.n; B. B. void mainvoid union int n;float x; comm12.5; printff,comm.x; C. C. void mainvoid union float x; int n; comm12.5 printff,comm.x; D. D. void mainvoid union int n; float x; comm5; printfd, comm.n; 12. 设有定义int a1,*p float b2.0; char cA; 以下不合法的运算是 。A. p; B. a; C. b; D. c; 13. 以下程序中调用scanf函数给变量a输入数值的方法是错误的,其错误原因是 。 main int *p,*q,a,b; p printf a; scanfd,*p; A. *p表示的是指针变量p的地址B. *p表示的是变量a 的值,而不是变量a的地址C. *p表示的是指针变量p的值D. *p只能用来说明p是一个指针变量 14. 若num、a、b和c都是int型变量,则执行表达式numa4,b16,c32;后num的值为 。A. 4 B. 16 C. 32 D. 52 15. 已有如下定义和输入语句,若要求a1,a2,c1,c2的值分别为10,20,A和B,当从第一列开始输入数据时,正确的数据输入方式是 ,注 _ 表示空格 int al,a2,char c1,c2; scanfdcdc,A. 10A_20_B B. 10_A_20_B C. 10A20B D. 10A20_B 16. 若有说明int a10; 则对a数组元素的正确引用是 。A. a10 B. a3.5 C. a5-3 D. a-1 17. 在C语言中, 一维数组的定义方式为类型说明符 数组名 ( );A. 整型常量表达式 B. 表达式C. 整型常量 D. 整型表达式 18. 以下能对一维数组a进行正确初始化的语句是 。A. in a100,0.0,0,0;B. int a10; C. int a0;D. int a1010*1; 19. 以下程序段 。 x-1; do xx*x; while x;A. 是死循环 B. 循环执行二次C. 循环执行一次 D. 有语法错误 20. 以下关于do-while循环的不正确描述是 。A. do-while的循环体至少执行一次B. do-while循环由do开始,用while结束,在while表达式后面不能写分号C. 在do-while循环体中,一定要有能使while后面表达式的值变为零假的操作D. do-while的循环体可以是复合语句 二、是非判断题每题1分,共15分1. C语言规定,标识符中的字母一般区分大、小写。2. 控制台标准输入设备一般是指键盘。3. 使用while和do-while循环时,循环变量初始化的操作应在循环语句之前处理。4. 循环体中continue语句的作用是结束整个循环的执行。5. 关系表达式的值是0或1。6. 若有说明int a340,则只有元素a00可得到初值0。7. 字符串作为一维数组存放在内存中。8. 字符数组中的一个元素存放一个字符。9. 字符数组中的最后一个字符必须是0。10. 形参为指针变量时,实参必须是数组名。11. 用数组名作函数参数时传递的是数组的值。12. 全局变量可以被任何一个函数中的任何一个表达式使用。13. 一个函数可以带回一个整型值、字符值、实型值等,也可以带回指针型的数据。14. 表达式i与i在任何场合功能完全相同。15. 在赋值表达式中,赋值号左边的变量和右边的表达式之值的数据类型可以不相同。 三、多项选择题每题1分,共5分1. 若要求在if 后一对圆跨括号中表示a不等于0的关系,则不能正确表示这一关系的表达式为 .Aa0BaCa0DaEa0 2. 选出所有合法的常量 。A3e22.5B-e-3C-.1e-1DBASICE045F0fdG0 xfdaLHe8IJ 3. 以下关于函数原型说法错误的是( )1对变量的定义”和“声明”是一回事,对函数的“定义”和“声明”也是一回事。2在声明函数原型时,允许只写出参数的类型,而不必写出参数的名称。3如果在定义函数时不指定函数类型,系统会隐含指定函数类型为int型。4调用一个函数时,函数名、实参个数、实参类型必须与函数原型一致。5如果被调函数的定义出现在主调函数之前,可以不必加以声明。6所有的函数之间可以互相调用。7在C语言中,所有函数都是平行的,一个函数不能从属于另一个函数,即不能嵌套定义的。8如果函数没有返回值,在定义时可以省略函数类型。9在C语言中,任何函数的定义都不允许为空。10C语言规定,实参变量对形参变量的数据传递是“值传递”。 4. 请从下面关于指针的叙述中, 选出5个正确的叙述。1指针即地址。2指针须先赋值后使用。3当指针p指向数组a的首址后,由于pi和ai都能引用数组元素,所以这里p和a是等价的。4int *p表示定义了一个指向int类型数据的指针变量p。5数组的指针是指数组的起始地址。6若有定义int a4,*pa,则p后p指向数组a所占内存的第二个字节。7使用指针变量作函数参数采取的是值传递的方式。8相同类型的指针可以进行减法运算。9指针变量和许多变量一样可以进行四则运算。10指针p指向数组元素a2,若要其指向a4,执行pp*2即可。 5. 以下关于数组的叙述中,5个最确切的说法是1在声明一个数组变量时必须指定大小。2必须用常量表达式来说明一个数组变量的大小。3在对数组进行初始化时大括号中的数据个数必须和数组的大小相同。4有变量定义int a30,1,2,b3;,可以用ba,使数组b的每个元素和a的每个元素相等。5在C语言中,可以将字符串作为字符数组来处理。6定义了字符数组char c11;为了给它赋值,可以用cchina;。7如果有char s15I am a0 student;,则strlens的值为6。8C语言中,二维数组中元素排列的顺序是按行存放。9在C语言中,不能对局部的数组变量进行初始化。10在声明时对数组进行进行初始化必须指定数组大小。 四、程序运行结果题每题4分,共20分1. 4分下面程序的运行结果是 。includestdio.hvoid mainvoid int i; char aTime,bTom; fori0;ai0bi0;i if aibi if aia ai z printfc,ai-32; else printfc,ai32; else printf*; 2. 4分下面程序段的运行结果是 。 i1;s3 do si; if s70 continue; else i; whlies15; printfd,i; 3. 4分若运行时输入5999,则以下程序的运行结果保留小数点后一位是 。 void mainvoid int x; float y; scanfd, if x0 x2999 y180.12 * x; if x3000 x5999 y360.6*x; if x6000 x10000 y540.3*x; printf6.1f,y; 4. 4分以下程序的运行结果是 。 void mainvoid int a1,k; fork0;k3;k printf4d,f1a int f1int x static int z3,y0; y; z; returnxyz; 5. 4分以下程序的功能是计算函数Fx,y,zxy/x-yzy/z-y的值,请选择填空。 includestdio,h includemath.h float fun1float,float; void mainvoid float x,y,z,sum; scanfff, sumfun1 fun1 ; printfsumfn,sum; float fun1float a,float b float num; numa/b; return num; 五、程序填空题每题2分,共20分1.下面程序的功能是用公式/61/111/221/33 求的近似值, 直到最后一项的值小于10e-6为止。 include stdio.h include math.h void mainvoid long i1; _; pi0; while i*i10e6 pi _ ; i; pisqrt6.0*pi; printfpi10.6fn,pi; 2. 下面程序的功能是把以下给定的字符按其矩阵格式读入数组str1中,并输出行列号之和是3的数组元素。 void mainvoid char str143A,b,C,d,E,f,G,h,I,j,K,i; int x,y,z; forx0;x4;x fory0; ;y zxy; if printfcn,str1xy; 3. 以下程序的功能是用递归方法计算学生的年龄,已知第一位学生年龄最小,为10岁,其余学生一个比一个大2岁,求第5位学生的年龄。 递归公式如下 age110 agenagen-12 n1 includestdio.h int ageint n int c; if n1 c10; else c _ ; return c; 4. 以下程序的功能是判断输入的年份是否是闰年。 void mainvoid int year,yes; scanfd, if year4000 yes1; else if yes1; else ; ifyes printfd is ,year; else printfd is not ,year; printfa leap year.n; 5. 以下程序实现 输入三个整数,按从大到小的顺序进行输出。 void mainvoid int x,y,z,c; scanfd d d, if cy;yz;zc; if cx;xz;zc; if cx;xy;yc; printfd,d,d,x,y,z; 六、填空题每题1分,共20分1. 在C语言中,一个float型数据在内存中所占的字节数为 个字节;一个double型数据在内存中所占的字节数为 个字节。 2. 若有定义char c010; 则变量C中包含的字符个数为 。 3. C源程序的基本单位是 。 4. 在C语言中以16位PC机为例,一个char型数据在内存中所占的字节数为 ;一个int型数据在内存中所占的字节数为 。 5. 已有定义 int m; float n,k; char chl,ch2; 为使m3, n6.5, k12.6, ch1a, ch2A, 输入数据的格式为 3 6.5 12.6aA 则对应的scanf语句是 ;。 6. 执行下面的程序片段后,x的值是 。 i10; i; xi; 7. 设a、b、c均是int 型变量,则执行以下for循环后,c的值为 。 fora1,b5;ab;a cab; 8. 以下do-while语句中循环体的执行次数是 。 a10; b0; do b2; a-2b; while a0; 9. 设x和y均为int型变量,则以下for循环中的scanf语句最多可执行的次数是 。 for x0,y0;y123x3;x scanf d, 10. 若有以下定义和语句 int *p3,a9,i; fori0;i3;i pi则*p0引用的是数组元素 ; *p11引用的是数组元素 。 11. 设a3,b4,c5,则表达式abcbc的值是 。 12. 进行逻辑与运算的运算符是 。 13. 若a6,b4,c2,则表达式a-bc-1bc/2的值是 。 14. 下面程序片段中循环体的执行次数是 次。 fori1,s0;i11;i2 si; 15. 若有以下定义和语句 int a40,1,2,3,*p; p 则*p的值是 。 16. 执行以下程序段后, s的值是 int a5,3,7,2,1,5,3,10,s0,k; fork0;k8;k2 s*ak; 17. 执行以下程序段后,m的值是 int a7,4,6,3,10,m,k,*ptr; m10; ptr fork0;k5;k2 m*ptrkm*ptrkm;答案 一、单项选择题20分 1.5.CBACD 6.10.BDADB 11.15.CABCC 16.20.CACCB 二、是非判断题15分 三、多项选择题5分 1.ABC 2.CEGIJ 3.ADFHI 4.ABDEH 5.BEGHI 四、程序运行结果题20分1. t*M2. 83. 3635.44. 6 8 105. zy,z-yxy,x-y 五、程序填空题20分1. double pi1.0/i*i2. y3 z23. agen-124. year40yeaar1000 yes05. zy zx yx 六、填空题20分1. 4 / 四 8 / 八2. 1 / 1个3. 函数4. 1 / 一 2 / 二5. scanfdffcc,m,n,k,ch1,ch26. 127. 108. 39. 310. a0 a411. 112. 13. 1.14. 515. 116. 1617. 6

中南大学1617c语言试卷,中南大学C语言程序设计试卷.docx相关推荐

  1. c语言程序设计 中南大学,中南大学-C语言程序设计试卷.docx

    中南大学-C语言程序设计试卷 C 语言程序设计试卷 一.单项选择题(每题1分,共20分) 1. C语言规定:在一个源程序中,main函数的位置( ). A. 必须在最开始 B. 必须在系统调用的库函数 ...

  2. 四川大学c语言期末试题答案,四川大学计算机学院2005级C语言程序设计试卷(2份,有答案)...

    内容简介: 四川大学计算机学院2005级C语言程序设计试卷(一) 一.单项选择题(在每小题的四个备选答案中,选出一个正确的答案,并将其号码填在题干后的括号内.每小题2分,共18分) 1.以下程序段中循 ...

  3. 福州大学java期末试卷2012_福州大学 07Java语言程序设计试卷(A卷).doc

    福州大学 07Java语言程序设计试卷(A卷) 专业: 姓名: 学号: ==================================== 密 封 线 ===================== ...

  4. 中国计量大学c语言历年考试卷,语言程序设计试卷A中国计量学院.doc

    语言程序设计试卷A中国计量学院.doc 中国计量学院200j_?200JL学年第二学期 <C语言程序设计(1)>课程考试试卷(A) 开课系部:信息.计量.机电.质安,考试时间:2007年7 ...

  5. 南京信息工程大学c语言期末答案,南京信息工程大学试卷2011-2012(2)c语言程序设计试卷答案(文科)-a...

    南京信息工程大学试卷2011-2012(2)c语言程序设计试卷答案(文科)-a (3页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 19.90 积分 南京 ...

  6. 中南大学 10科学计算和 MATLAB 语言 矩阵变换

    中南大学 10科学计算和 MATLAB 语言 矩阵变换 diag(A) 提取矩阵A主对角线元素,产生一个列向量 diag(A,k) 提取矩阵A的第K条对角线上的元素,产生一个列向量(K指的是,与主对角 ...

  7. 合肥工业大学c语言是试卷,合肥工业大学2005-2007年C语言程序设计试卷参考答案.doc-资源下载人人文库网...

    合肥工业大学2005-2007年<C语言程序设计>试卷参考答案.doc 合肥工业大学2005年C语言程序设计试卷参考答案一. 填空题(分,每空1分)1main( ) 或主函数 21 7 3 ...

  8. c语言程序设计试卷分析,《c语言程序设计》 试卷分析.doc

    2011-2012学年第二学期第一次诊断考试 <c语言程序设计> 试卷分析 一.试卷概况 C语言程序设计在"专业基础知识测试"考试科目中占分100分,是计算机专业学生中 ...

  9. 2016年湖北专升本考试C语言程序设计试卷答案(A卷) 《C语言程序设计》试卷 A卷

    2016年湖北专升本考试C语言程序设计试卷答案(A卷) <C语言程序设计>试卷 A卷 答案和试卷 后面百度网盘提供 • 填空題(每空1分,共20分) 1.C程序是由 构成的,一个C源程序至 ...

最新文章

  1. ADO.NET 2.0中的SqlCommand.ExecutePageReader
  2. 手写堆模板(指针数组)
  3. Jeff Dean谈2020年机器学习趋势:多任务和多模式学习将成为突破口
  4. python书籍_python书籍
  5. 分组交换网络的工作原理:分组交换网络的组成
  6. go语言游戏编程初识--`Ebiten`
  7. php中implode()和explode()的应用
  8. 百度之后,电子银行还安全么?
  9. java中有scoreframe类型嘛_java构造函数的三种类型总结
  10. php点击按钮变文字,点击按钮文字变成input框,点击保存变成文字的实现代码
  11. R 包 `ezdf`的讲解
  12. yii2 Expression解决查询或者条件有mysql函数时
  13. 单网卡实现 双IP 双网段(内外网)同时运行
  14. ActionForm 原理 参考百度百科
  15. 杀毒软件巨头荣光不复 瑞星信息去年亏损7300万元
  16. SQL-聚合函数结果作为筛选条件时where与having用法的区别
  17. 【C语言函数递归】递归计算最大公约数
  18. Webstorm2019,最新激活码【永久】
  19. 谷歌首度证实重返中国的Dragonfly计划存在丨Q新闻
  20. win10系统开机后正常运行时间不重置

热门文章

  1. gitlab安装和汉化
  2. gitlab安装并汉化
  3. 滴滴开源了哪些有意思的项目?
  4. No.=Number的来历
  5. 参数提取类毕业论文文献包含哪些?
  6. 搜狐微博改版 走差异化发展之路
  7. PKI 技术的意义与应用
  8. 人员离职it检查_一个IT离职人员的个人感受
  9. 【汇正财经】股票面值和股票净值是什么?怎么计算?
  10. Post请求:first path segment in URL cannot contain colon 的解决方案