(中职)C语言程序设计练习题3及答案.doc
《(中职)C语言程序设计练习题3及答案.doc》由会员分享,可在线阅读,更多相关《(中职)C语言程序设计练习题3及答案.doc(34页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、练习题3一、 单项选择第一章 C语言概述(1) 一个C程序的执行是从 A、本程序的MAIN函数开始,到MAIN 函数结束。B、本程序文件的第一个函数开始,到本程序文件的最后一个函数结束。C、本程序的MAIN函数开始,到本程序的最后一个函数结束。D、本程序文件的第一个函数开始,到本程序的MAIN函数结束。(2) 以下叙述正确的是 A、 在C程序中,MAIN函数必须位于程序的最前面。B、 C程序的每行中只能写一条语句。C、 C语言本身没有输入输出语句。D、 在对一个C程序进行编译的过程中,可发现注释中的拼写错误。(3) C语言规定,在一个源程序中,MAIN主函数的位置是在: A、 必须在最前面。B
2、、 必须在系统调用的库函数的后面C、 可以在任意位置。D、 必须在最后面(4) 一个C程序是由: A、 一个主程序和若干子程序组成B、 函数组成C、 若干过程组成D、 若干子程序组成(5) 以下叙述不正确的是: A、 一个C源程序可由一个或多个函数组成B、 一个C源程序必须包含一个MAIN函数C、 C程序的基本组成单位是函数D、 在C程序中,注释说明只能位于一条语句的后面第二章 数据类型、运算符与表达式() 若x, i, j, k都是int型变量,则计算下面表达式后,x的值为 x( i, j, k)、 、() 下列四组选项中,均不是语言键字的选项是 、define , IF, typeB、ge
3、tc, char, printfC、include, scanf, caseE、 if, struct, type() 下面四个选项中,均是不合法的用户标识符的选项是 、,_,do 、float,1a0, _A、b-a, goto, intD、_123, temp, INT() 若有代数式ae/bc,则正确的语言表达式是 、a/b/c*e*3、3*a*e/bc、3*a*e/b*c、a*e/c/b*3(5) 已知各变量的类型说明如下:int k, a, b;unsinged long w=5;double x=1.42;则以下不符合语言语法的表达式是 、x%(-3)、w+=-2;、k=(a=2,
4、b=3,a+b)、a+=a-=(b=4)*(a=3)第三章 简单C程序设计()putchar函数可以向终端输出一个 、整型变量表达式值、实型变量值、字符串、字符或字符型变量值()若x,y均定义为int型,z定义为double 型,以下合法的scanf函数调用语句是 、scanf(“%d%lx,%le”,&x,&y,&z);、scanf(“%2d*%d%lf”,&x,&y,&z);、scanf(“%x%*d%o”,&x,&y,&z);、scanf(“%x%o%6.2f”,&x,&y,&z);(3)当输入数据的形式为:,时,以下程序的输出结果为 main()int x,y,z; scanf(“%d
5、%d%d”,&x,&y,&z); printf(“x+y+z=%dn”,x+y+z);、x+y+z=48、x+y+z=35、x+z=35、不确定值(4) 以下能正确的定义整型变量a,b和c,并对它们赋初值为的语句是 、int a=b=c=5;、int a, b, c=5;、a=5, b=5, c=5;、a=b=c=5;(5) 若有以下定义,则正确的赋值语句是 int a,b; float x;、a=1, b=2;、b+;、a=b=5;、b=int(x);第四章 选择结构程序设计(1)能正确表示“当x的值在1,10和200,210的范围为真,否则为假”的表达式是 A、(x=1)&(x=200)&
6、(x=1)(x=200) (x=1) &(x=200) &(x=1)(x=200) (x5)printf(“%dn”,m);else printf(“%dn”,m);A) 4B) 5C) 6D) 7 () 为了避免在嵌套的条件语句中if-else中产生二义性,c语言规定:else子句总是与 相配对。A)缩排位置相同的ifB)其之前最近的ifC)其之后最近的ifD)同一行上的if第五章 循环控制(1)设有程序段 int k=10while (k=0) k=k-1则下面描叙正确的是 。A) while (k=0) k=k-1;B) 循环是无限循环C) 循环体语句一次也不执行D) 循环体语句执行一次
7、(2)下面程序段的运行结果是 。int n=0;while(n+=2); printf(“%d”,n);A) 2B) 3C) 4D) 有语法错(3)C语言中while和do-while循环的主要区别是 。A) do-while的循环体至少无条件执行一次B) while 的循环控制条件比do-while的循环控制条件严格C) do-while允许从外部转到循环体内D) do-while允许从外部转到循环体内(4)以下能正确计算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
8、) 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);第六章 数组(1)在c语言中,引用数组元素时,其数组下标的数据类型允许是。A) 整型常量B) 整型表达式C) 整型常量或整型表达式D) 任何类型的表达式(2)以下能对二维数组a进行正确初始化的语句是。A) int a2 =1,0,1,5,2,3,;B) int a 3=1,2,3,4,5,6;C) int a24=1,2,3,4,5,6;D) int a 3=1,0,1,1,1;)(3)若有说明:int a34=0;则下面正确的叙述是。A) 只有元素a00可
9、得到初值0B) 此说明语句不正确C) 数组a中各元素都可得到初值,但其值不一定为0D) 数组a中每个元素均可得到初值0(4)下面程序(每行程序前面的数字表示行号)。1 main()2 3 float a10=0;4 int i5 for(i=0;i3;i+) scanf(“%d”,&ai;6 for(i=1;i10;i+) a0=a0+ai;7 printf(“%fn”,a0);8 A) 没有错误B) 第3行有错误C) 第5行有错误D) 第7行有错误(5)若二维数组a有m列,则计算机一元素aij在数组中位置的公式为。(假设a00位于数组的第一个位置上。)A) i*m+jB) j*m+iC) i
10、*m+j-1D) i*m+j+1第七章 函数(1)以下正确的函数定义形式是 。A)double fun(int x,int y)C) double fun(int x;int y)D) double fun(int x,int y)E) double fun(int x,y);(2) 以下正确的函数形式是 。A) double fun(int x,int y)z=x+y; return z;B) fun(int x,y)int z; return z;C) fun(x,y)int x,y; double z;z=x+y;return z;D) double fun(int x,int y)do
11、uble z; z=x+y;return z;(3) C语言规定,简单变量做实参时,它和对应形参之间的数据传递方式是A)地址传递B)单向值传递C)由实参传给形参,再由形参传回给实参D)传递方式(4)C语言允许函数值型缺省定义,此时该函数值隐含的类型是 。A)float型B)int型C)long型D)double型(5)下面函数调用语句含有实参的个数为 。 func(exp1,exp2),(exp3,exp4,exp5);A)1B)2C)4D)5第八章 编译预处理命令(1)请读程序:#define ADD(x) x+xmain()int m=1,n=2,k=3;int sum=ADD(m+n)*
12、k;printf(“sum=%d”,sum);上面程序的运行结果是 。A) sum=9B) sum=10C) sum=12D) sum=18(2) 以下程序的运行结果是 。#define MIN(x,y) (x)A) p+5B) *a+1C) &a+1D) &a0(8) 若有定义:int a23;则对a数组的第I行第J列(假设I,J已正确说明并赋值)元素值的正确引用为_.A)*(*(a+I)+J)B)(a+I)jC)*(a+I+j)D)*(a+I)+j(9)若有定义:int a23;则对a数组的第i行第j列(假设i,j已正确说明并赋值)元素地址的正确引用为_.A)*(ai+j)B)(a+i)C
13、)*(a+j)E) ai+j(10)若有以下定义和语句,则对a数组元素地址的正确引用为_.Int a23,(*p)3P=a;A)*(p+2)B) p2C) p1+1D) (p+1)+2第十章 结构体与共用体(1) 以下对结构体类型变量的定义中不正确的是_. A)#define STUDENT struct studentSTUDENTint num;float age;std1; B)struct studentint num; float age;std1; C)struct int num; float age; std1; D)structint num; float age;stude
14、nt;struct student std1;(2) 设有以下语句(3) struct stuint a; float b;stutype;则下面叙述正确的是_.A)struct是结构体类型的关键字B)struct stu是用户定义的结构体类型C)stutype是用户定义的结构体类型名D)a和b都是结构体成员名(4) 设有以下定义:struct sk int n; float x; data,*p; 若要使p指向data中的n域,正确的赋值语句是_A) p=&data.n;B) *p=data.n;C) p=(struct sk *)&data.n;D) p=(struct sk *) dat
15、a.n;(5) 设有以下语句:struct st int n;struct st *next; static struct st a3=5,&a1,7,&a2,9,0,*p; p=&a0;则以下表达式的值为6的是_.A) p+-nB) p-n+C) (*p).n+D) +p-n第十一章 位运算(1)以下运算符中优先级最低的是 优先级最高的是 。A)&B) &C) |D) |(2)若有运算符,sixeof,&= 则它们按优先级按由高到低的正确排列次序是 。A) sizeof,&=,B) sizeof,&=C) ,sizeof,&=D) (4) 在C语言中,要求运算数必须是整型或字符型的运算符是
16、。A) &B) &C) !D) |(5)sozeof(float)是 。A)一种函数调用B)一种不合法的表示形式C)一个整型表达式D)一个浮点表达式第十二章 文件(!)系统的标准输入文件是指 。A)键盘B)显示器C)软盘D)硬盘(2)以下可作为函数fopen中第一个参数的正确格式是 。A) c:usertext.txtB) c:usertext.txtC) c:usertext.txtD) c:usertext.txt()若执行fopen函数时发生错误,则函数的返回值是)地址值)()若要用fopen函数打开一个新的二进制文件,该文件要既能读又能写,则文件方式字符串应是。A)ab+B) wb+C
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计 练习题 答案
限制150内