南京大学网络教育《C程序设计基础》考试作业_第1页
南京大学网络教育《C程序设计基础》考试作业_第2页
南京大学网络教育《C程序设计基础》考试作业_第3页
南京大学网络教育《C程序设计基础》考试作业_第4页
南京大学网络教育《C程序设计基础》考试作业_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

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

文档简介

南京大学网络教育学院“C程序设计基础”课程补考试卷提示:答案文档直接在学生平台提交一、单项选择题(每题1分,共40分)1、若x和y都是int型变量, x=100,y=200,执行以下程序片段 printf(“%d”,(x,y); 输出结果是_。A. 200B. 100C. 100 200D. 输出格式符不够,输出不确定值 2、以下正确的描述是_。 A. 函数的定义可以嵌套,但函数的调用不可以嵌套 B. 函数的定义不可以嵌套,但函数的调用可以嵌套 C. 函数的定义和函数的调用均不可以嵌套 D. 函数的定义和函数的调用均可以嵌套 3、若有语句: char s110, s210=books,则能将字符串 books赋给数组 s1的正确语句是_。 A. s1=books;B. s1=s2;C. strcpy(s1, s2);D. strcpy(s2, s1); 4、若有以下语句,则正确的描述是_。 char x =12345; char y =1, 2, 3, 4, 5; A. x数组与 y数组的长度相同B. x数组长度大于 y数组长度C. x数组长度小于 y数组长度D. x数组等价于 y数组5、以下对一维数组 a的正确说明是_。 A. char a(10);B. int a;C. int k=5,ak; D. char a =a , b , c;6、设有程序段 int x=10; while (x=0) x=x-1; _。A. while循环执行10次B. 循环是无限循环C. 循环体语句一次也不执行D. 循环体语句只执行一次7、语句 while (!y)中的表达式 !y 等价于_。A. y=0B. y!=1C. y!=0D. y=1 8、设 x、y均是 int类型变量,且 x值为 100,则关于以下 for循环的正确判断是_。for (y=100; x!=y; +x,y+) printf(*n); A. 循环体只执行一次B. 是无限循环C. 循环体一次都不执行D. for语句中存在语法错误9、为了避免在嵌套的条件语句 if-else中产生二义性,C语言规定:else子句总是与_配对。 A. 缩排位置相同的 if配对B. 其之前最近且不带 else的同层次的 if配对C. 其之前最近的 if配对 D. 第一个 if配对 10、设 a、b、c都是 int型变量,且 a=3,b=4,c=5,则下面的表达式中值为 0的表达式是_。 A. a&b B. a=bC. a|b+c&b-c D. !(ab)&!c|1)11、可用作 C语言用户标识符的一组标识符是_。 A. void define WORDB. A3_b3 _123 IFC. For -abc case D. 2a do sizeof 12、合法的 C语言字符常量是_。 A. t B. “A” C. 65 D. A 13、关于宏替换的叙述不正确的是_。 A. 宏替换不占用运行时间B. 宏名无类型C. 宏替换只是字符替换 D. 宏名必须用大写字母表示 14、以下正确的说法是_。 A. continue语句的作用是结束整个循环的执行 B. 只能在循环体内和switch语句内使用break语句 C. 在循环体内使用break 或continue语句作用相同 D. 在多层循环嵌套中退出时,只能使用goto语句 15、以下不正确的是_。 A. 在函数中,通过return语句传回函数值 B. 在函数中,可以有多个return语句 C. C语言总是从main函数开始执行 D. 在C中,调用函数必须在一条独立的语句中完成16、以下不是C语言的特点的是_。 A. C语言简洁、紧凑B. 能够编制出功能复杂的程序C. C语言可以直接对硬件进行操作D. C语言移植性好17、以下不正确的C语言标识符是_。 A. ABCB. abcC. a_bcD. ab.c18、一个C语言程序是由_。 A. 一个主程序和若干子程序组成B. 函数组成C. 若干过程组成D. 若干子程序组成19、一个算法应该具有“确定性”等5个特性,对另外4个特性的描述中错误的是_。 A. 有零个或多个输入B. 有零个或多个输出C. 有穷性 D. 可行性20、 设变量a是整型,f是实型,i是双精度型,则表达式10+a+i*f值的数据类型为_。 A. intB. floatC. doubleD. 不确定21、在C语言中,char型数据在内存中的存储形式是_。 A. 补码B. 反码C. 源码D. ASCII码22、有如下程序,输入数据:12345M678CR后(表示回车),x的值是_。#includemain()int x;float y;scanf(%3d%f,&x,&y);A. 12345B. 123C. 45D. 34523、若有以下定义int a,b; float x,则正确的赋值语句是_。A. a=1,b=2B. b+;C. a=b=5D. b=int(x);24、以下程序的执行结果是_。 #includeint i=10,j=10;printf(%d,%dn,+i,j-);A. 11,10B. 9,10C. 11,9D. 10,925、已知字母A的ASCII码是65,以下程序的执行结果是_。#includemain()char c1=A,c2=Y;printf(%d,%dn,c1,c2);A. A,YB. 65,65C. 65,90D. 65,8926、下列运算符中优先级最高的是_。A. B. C. %D. !27、设x、y和z是int型变量,且x3,y4,z5,则下面表达式中值为0的是_。A. x&yB. xyC. xy+z&y-zD. !(xy)!z 1)28、判断char型变量cl是否为小写字母的正确表达式为_。A. ac1fzB. (c1a)&(c1z)C. (a=c1) (zc1)D. (c1a)&(c1z)29、字符串a在内存中占据的字节个数为_。 A. 0B. 1C. 2D. 330、下面有关for循环的正确描述是_。 A. for循环只能用于循环次数已经确定的情况B. for循环是先执行循环体语句,后判定表达式C. 在for循环中,不能用break语句跳出循环体D. for循环体语句中,可以包含多条语句,但要用花括号括起来31、下面程序的运行结果是_。 #includemain()int num=0;while(num=2)num+;printf(“%d ,num); A. 1B. 1 2C. 1 2 3D. 1 2 3 432、以下描述正确的是_。 A. 由于do-while循环中循环体语句只能是一条可执行语句,所以循环体内不使用复合语句。B. do-while循环由do开始,用while结束,在while(表达式)后面不能写分号。C. 在do-while循环体中,一定要有能使while后面表达式的值变成零(“假”)的操作。D. do-while循环中,根据情况可以省略while。33、以下对一维整形数组a的正确说明是_。 A. int a(10);B. int n=10,an;C. int n;D. int a10;scanf(“%d”,&n); int an;34、以下对二维数组a的正确说明是_。 A. inta3;B. float a(3,4);C. double a14;D. float a(3)(4);35、若二维数组a有m列,则在aij前面的元素个数为_。A. j*m+IB. i*m+jC. i*m+j-1D. i*m+j+136、 以下程序的输出结果是_。main()int x=2, y=1, z=2;if (xy)if(y0) z= 0;else z+ =1;printf(%dn,z);A. 3B. 2C. 1D. 037、下面程序段的运行结果是_。a=1; b= 2; c=3;while(abc) t= a; a= b; b=t; c- -;printf(%d,%d,%d,a,b,c);A. 1,2,0B. 2,1,0C. 1,2,1D. 2,1,138、以下正确的函数定义形式(即定义函数时函数首部的形式)是_。A. double fun(int x, int y)B. double fun(int x; int y)C. double fun(int x, y)D. double fun(int x, int y);39、C语言程序中,若对函数类型未加显式说明,则函数的隐含类型为_类型。A. voidB. doubleC. intD. char40、下面程序段输出结果是_。char str =adcd, *ps=str;printf(%dn, *(ps+4);A. 100B. 0C. 字符d的地址D. 不确定二、程序阅读题(阅读下列程序段,写出程序的运行结果。每题6分,共30分)41、有下列程序运行时,从键盘输入:ah2MA_Aha(回车)(注:_代表空格),请写出该程序的运行结果。提示:小写字母的ASCII码减去32为对应大写字母的ASCII码,反之,大写字母的ASCII码加上32为对应小写字母的ASCII码。#include “stdio.h”main( )char s80, c=a;int i=0;scanf(“%s”,s);while(si != 0)if(si= =c)si = si-32;else if(si= =c-32)si = si+32;i+;puts(s);运行结果:42、请写出下面程序的运行结果。#include “stdio.h”main( )int a, s, n, count;a=2; s=0; n=1; count=1;while(count =5)n=n*a;s=s+n;count+;printf(“s=%d”,s);运行结果:43、当从键盘键入abcd(回车)时,请写出下面程序的输出结果。#include “stdio.h”try_me( )char ch;scanf(“%c”, &ch);if ( ch != n )try_me();printf(“%c”, ch);main( )try_me( );运行结果:44、请写出下面程序的输出结果。func(int x)x=1;return(x);main( )int x=3;func(x);printf(%d, %dn, x, func(x);运行结果:45、请写出下面的C程序段输出结果。int x1=3, x2=4;main( )int x3=1, x4=2;sub(x3, x4);sub(x1, x2);printf(“x1=%d, x2=%d, x3=%d, x4=%d”, x1, x2, x3, x4);sub(int x, int y)int x1;x1=x;x=y;y=x1;运

温馨提示

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

评论

0/150

提交评论