ImageVerifierCode 换一换
格式:DOCX , 页数:40 ,大小:35.22KB ,
资源ID:7233742      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/7233742.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(《高级语言程序设计》复习题及答案.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

《高级语言程序设计》复习题及答案.docx

1、高级语言程序设计复习题及答案一、选择题.以下叙述正确的是( ): A) 在C程序中,main函数必须位于程序的最前面B) C程序的每行只能写一条语句C) C语言使用库函数实现输入输出操作D) 注释中的拼写错误会影响编译结果2、以下说法中正确的是() A) C语言程序总是从第一个的函数开始执行 B) C语言程序总是从main()函数开始执行 C)在C语言程序中,要调用的函数必须在main()函数中定义 D) C语言程序中的main()函数必须放在程序的开始部分3、下列选项种说法正确的是( )A) 函数由声明部分和执行部分两部分组成B)语言中main函数一定在程序的开始部分C)C语言程序总是从第一

2、个定义的函数开始执行D)C程序的每行中只能写一条语句4、设有说明:int a; float b; char c; double d; 则表达式1.3*a+2*b*c+d*(int)2.6 值的类型为( )。A) double B) char C) float D) int 5、 C语言的标识符只能由字母、数字和下划线三种字符组成,且第一个字符( )A)必须为字母B)必须为下划线C)必须为字母或下划线D)可以是字母、数字和下划线中任一种字符6、以下不正确的C语言标识符是( )。 A) ABC B) abc C) a_bc D) void 7、下列运算符中优先级最高的是( )A) x ? w :

3、y z ? y : z”的值是( )A)4 B)3 C)2 D)113、有以下程序,程序运行后的输出结果是。main() int i=1,j=2,k=3; if(i+=1&(+j=3|k+=3) printf(%d %d %dn,i,j,k); A)1 2 3 B)2 3 4 C)2 2 3 D)2 3 314、下面程序的输出结果是main()int x=2,y=-1,z=2;if(xy)if(y0)z=0;else z=-1+x;printf(“%dn”z);A) 3 B) 2 C) 1 D)015、执行下列语句后,a的值为( )main( )int a=5;printf(“%dn”,(a=

4、3*5,a*4,a+5);A) 65 B)20 C) 15 D)1016、下列程序段中,有错误的行是()列定行号 int x=0,y=10; 2 switch(x) 3 case 3: 4 case 1:y=y-2;break; 5 case y+1:x+=5; 6 default:printf(“%d,%d”,x,y);A) 4 B) 3 C) 5 D)无错误17、若i为整型变量,则以下循环执行次数是( )。#includestdio.hvoid main() int i; for(i=2;i=0; ) printf(%d,i-);A) 无限次 B)0次 C) 1次 D) 2 次18、若有以

5、下定义,doublea10;则a数组元素下标的上、下限分别为( )A) 1,10 B) 0,9 C) 0,10 D)1,919、若已定义的函数有返回值,则以关于该函数调用的叙述中错误的是() A) 调用可以作为独立的语句存在 B) 调用可以作为一个函数的实参 C) 调用可以出现在表达式中 D) 调用可以作为一个函数的形参 20、 定义如下变量和数组: int i; int x33=1,2,3,4,5,6,7,8,9; 则下面语句 for(i=0;i3;i+) printf(%d,xi2-i); 输出结果是 ( )A) 1 5 9 B) 1 4 7 C) 3 5 7 D) 3 6 9 21、以下

6、不能正确定义二维数组的选项是 A) int a22=1,2; B) int a2=1,2,3,4; C) int a22=1,2,3; D) int a2=1,2,3,4; 22、若有以下定义:int a5=10,20,30,40,50,*p=a;则执行+(*p)后(*p)+的值是A) 10 B) 11 C) 20 D)2123、函数的嵌套调用是指A) 直接调用本函数B) 在定义函数时,又定义另一个函数 C) 间接调用本函数 D) 被调用函数又调用另一个函数24、下列说法正确的是A) 被调用函数必须先调用,后声明B) 用户自定义函数的类型若未指出,则系统默认为voidC) 全局变量不能与局部变

7、量同名D) 实参可以是任意表达式25、以下描述正确的是( )A)continue语句的作用,是结束整个循环语句的执行B)只能在循环体内和switch语句体内使用break语句C)在循环体内使用break语句或continue语句的作用相同D)多层循环嵌套中不可以使用break语句26、若有说明语句:“int a34;”,则对数组元素的正确引用格式是( )A)a24 B) a1,3 C) a1+10 D) a(2)(1)27、若有说明:“int a34=0;”,则下面正确的叙述是( )A)只有元素a00可得到初值0B)此数组说明语句不正确C)数组a中各元素都可得到初值,但其值不一定为0D)数组a

8、中每个元素均可得到初值028、定义数组a和b的语句是: “char a =“ABCDEF”; char b =A,B,C,D,E,F;”则以下叙述正确的是( )A)a和b数组完全相同 B)a与b数组元素个数相同C)a和b中都存放字符串 D)a数组比b数组元素个数多29、语句“int (*ptr) ( );”的含义是( )A)ptr是指向一维数组的指针变量B)ptr是指向int型数据的指针变量C)ptr是指向函数的指针,该函数返回一个int型数据D)ptr是一个函数名,该函数返回值是指向int型数据的指针30、若有定义:“int *p4;”,则标识符p 是( )A)一个指向整型变量的指针B)一个

9、指针数组名C)一个指针,它指向一个含有四个整型元素的一维数组D)无效的数组名31、在C语言中( )A) 函数定义可以嵌套,但函数调用不可以嵌套B) 函数定义不可以嵌套,但函数调用可以嵌套C) 函数定义和调用都可以嵌套D) 函数定义和条用都不能嵌套32、下面程序的输出结果是( )#include void main() int i,j,x=0; for(i=0;i=2;i+) x+; for(j=0;j=2;j+) if(j%2)continue; x +;x +;printf(%dn,x); A)4 B)6 C)8 D)1233、执行下列语句后,m的值为( ) int m=1,x=2,y=3,

10、z=4; m=mx?m:x; m=my?m:y; m=mz?m:z:A) 1 B) 4 C) 2 D) 334、下列程序段是实现给数组所有元素赋值操作,应在下划线上填入的是( )int a10;for(i=0;i=9;i+) scanf(“%d”, );A) a B) &ai C) ai D) &a035、下列叙述正确的是()A) do-while语句构成的循环不能用其它语句构成的循环来代替B) do-while语句构成的循环只能用break语句退出C) 用do-while语句构成的循环,在while后的表达式为非零时结束循环D) 用do-while语句构成的循环,在while后的表达式为零时

11、结束循环36、下列程序的输出结果为()#include “stdio.h”main() int a,b;for(a=1,b=1;a=20) break;if(b%3=1) b+=3;continue; b+=5;printf(“%d, %d”, a, b);A) 8,20 B) 8,22 C) 7,20 D) 7,2237、设 int a5=10,15,20,25,30; int *p; p=a+2;则表达式+*p的值为()A) 20 B) 15 C) 16 D) 2138、设w=1,x=2,y=3,z=4,a=5,b=6,则执行一下语句后A)b的值分别为( ) (a=wx)&(b=yz);A

12、) 0和0 B) 5和0 C) 0和6 D) 5和639、下列语句的输出为( ) int x=-1; printf(“%d,%u,%o”,x,x,x);A) 1,-1,-1 B) 1,32767,-177777C) 1,32768,177777 D) 1,65535,17777740、下列函数调用语句中的实参个数为( )fun(a+b,x,y),fun(x,(x+z);A) 2 B) 3 C) 4 D) 541、设有数组定义:char array =”china”;则数组array所占的内存空间为( )A) 4个字节 B) 5个字节 C) 6个字节 D) 7个字节42、以下程序段的运行结果是(

13、 )。 char c5= a , b , 0 , c , 0 ; printf( “%s” , c ); A)ab B)ab C)ab c D)a b43、若C程序中出现死循则违背了算法的( )A)有效性 B)确定性 C)有穷性 D)有一个或多个输出44、设 int a=20;则执行表达式:a/=a+a后,a的值是( )A)0 B)1 C)20 D)4045、int x,y,z,m=5,n=5;则执行下面语句后的z值是( )x=(-m=n+)?-m:+n;y=m+;z=n;A)5 B)10 C)6 D)746、执行下列程序段后,i的正确结果是( )int i=10;switch(i) case

14、 9: i+=1;case 10: i+;case 11: +i; default:i+=i; printf( %d, i ); A)10 B)11 C)12 D)2447、若有定义:int a10;。则以下表达式中不能代表数组元素a1的地址的是( )A)&a0+ B)&a1 C)&a0+1 D)a+148、变量的指针,其含义是指该变量的( )A)值 B)地址 C)变量名 D)一个标志49、有以下函数定义:void fun(int n, double x) 若以下选项中的变量都已正确定义并赋值,则对函数fun的正确调用语句是( )A)fun(int y,double m); B)k=fun(1

15、0,12.5);C)fun(x,n); D)void fun(n,x);50、设整型变量n=10,i=4,则赋值运算n%=i+1执行后,n的值是( )。 A) 0 B) 1 C) 2 D) 351、若int a, b; scanf(%d%d, &a, &b); 不可以用( )作为输入的分隔符。A) , B)空格 C)回车 D)TAB键52、下面关于运算符优先顺序的描述中正确的是: ( ) A)关系运算符 算术运算符 赋值运算符 逻辑与运算符B)逻辑 运算符 关系运算符 算术运算符 赋值运算符C)赋值运算符 逻辑与运算符 关系运算符 算术运算符D)算术运算符 关系运算符 赋值运算符 逻辑与运算符

16、53、为了判断两个字符串s1和s2是否相等,应当使用( )。A) if(s1 = s2) B) if(s1 = s2) C) if(strcpy(s1,s2) D)if(strcmp(s1,s2)=0)54、以下对二维数组进行正确初始化的是( )。A)int a23=1,2,3,4,5,6; B)int a3=1,2,3,4,5,6; C)int a2=1,2,3,4,5,6;D)int a2=1,2,3,4; 55、 若用数组名作为函数调用时的实参,则实际上传递给形参的是( )。A)数组的首地址 B) 数组的第一个元素值C)数组中全部元素的值 D) 数组元素的个数56、 以下错误的描述是(

17、)。 A) 不同的函数中可以使用相同的变量名B) 形式参数是局部变量C) 一个函数内部定义的变量只能在本函数范围内有效 D) 在一个函数内部的复合语句中定义的变量可以在本函数范围内有效57、下列程序的运行结果是( )main( ) int i=10; int *p=&i; i=8; printf(“%d”,*p); A)10 B)8 C)程序错误,不能运行 D)结果不确定58、C语言中,double类型的数据占字节数为( ) A) 1 B) 2 C) 4 D) 8 59、可在C程序中用作用户标识符的一组标识符是( ) A)as_b3 _123 If B) For -abc case C) 2c

18、 DO SIGD) void define WORD60、以下字符中,不正确的C语言转义字符是( )A) B) 018 C) Xaa D) t61、C语言中,数据在内存中都以( )形式存放A) 原码 B) 反码 C) ASCll码 D)补码62、下列运算符中,优先级最高的是( )A) & B) ! C) + D) |63、有输入语句:scanf (“a=%d ,b=%d ,c=%d” ,&a,&b,&c) ;为使变量a 的值为11,b 为12,c为13,则从键盘输入数据的正确形式应当是( )。A)11 12 13 B)11, 12, 13C)a=11 b=12 c=13 D) a=11, b=

19、12, c=1364、为表示关系 -1x1应使用的c语言表达式是( ) A) -1x1 B) -1=x&x=1 C) -1=x=-1&xb) return b; else return b; main( ) int x=3, y=8, z=6, r; r=fun (x, y+z); printf(%dn, r);程序运行后的输出结果是( )A) 3 B) 6 C) 8 D) 14 73、若有说明:int n=17,*p=&n,*q=p;,则以下非法的赋值语句是( )A) p=q; B) *p=*q; C) n=*q; D) p=n;74、 以下程序的功能是:按顺序读入10名学生4门课程的成绩,

20、计算出每位学生的平均分并输出,程序如下: main() int n,k; float score ,sum,ave; sum=0.0; for(n=1;n=10;n+) for(k=1;k=4;k+) scanf(“%f”,&score); sum+=score; ave=sum/4.0; printf(“NO%d:%fn”,n,ave); 上述程序运行后结果不正确,调试中发现有一条语句出现在程序中的位置不正确。这条语句是( ) A) sum=0.0; B) sum+=score;C) ave=sun/4.0; D) printf(“NO%d:%fn”,n,ave);75、数组定义为char

21、a10=a,b,c;该数组包括的元素个数是( )A) 3 B) 9 C) 4 D)1076、下面程序的输出结果是( )main ( ) int x = 2, y = -1,z = 2;if ( x y ) if ( y =a;p-) printf(%d,*p); 程序运行后的输出结果是( )A)0 1 2 3 4 5 6 7 8 9 B)2,3,4,5,6,7,8,9,10,1 C)0,1,2,3,4,5,6,7,8, 9, D)9,8,7,6,5,4,3,2,1, 0,78、 执行循环语句: for(x=y=0;y!=250|x4;x+)y+=50; 其循环体执行的次数为( ) A) 5 B

22、) 4 C)3 D)2 79、如 int x=14; 下列求商y(需小数结果)的表达式哪一个不对( ) A) y=x/(5+.0) B) y=x/5. C) y=1.*x/5 D) y=x/5*1.080、设有以下程序段( )int x=0,s=0; while(!x!=0)s+=+x; printf(%d,s); 则 :A)运行程序段后输出0 B)运行程序段后输出1 C)程序段中的控制表达式是非法 D)程序无法运行81、有以下程序,程序运行后的输出结果是( )#includestdio.hvoid main() int i=0,j=2,m=3,n; n=i+=2&m+; printf(%d,

23、%d,%d,%d n,i,j,m,n); A)2,2,4,1 B)2,2,3,1 C) 1,2,4,1 D)2,1,3,182、下面程序的输出结果是( )#include void main() int i,x=1,y=0,a=0,b=0; switch(x) case 1:b+; case 2:a+;b+;break; case 3:a+;b+;printf(%d,%dn,a,b);A)2,1 B)2,2 C)1,2 D)4,2二、程序分析及填空1.C语言的基本数据类型中,有两种实数类型变量,一种是float型,另一种是( )型。2.若程序中有语句“scanf(“a=%d,b=%d”,&a,

24、&b);”,在执行程序时,要输入3和5两个数,应该键入( )。3.包含数学类库函数的头文件名称是( )。4.字符串“ab034x79”的长度为( )。5数组元素作函数参数进行的是 传递,数组名作函数参数进行的是_传递。6设有函数调用语句f(x1,x1x2,f1(x1,x2);则函数f()实参的数目有_个。7在数组int score10=1,2,3,4,5,6中,元素定义的个数有 个,其中score8的值为 。8.C语言源程序文件的后缀是 经过编译后,生成文件的后缀是 ,经过连接后,生成文件的后缀是 。结构化程序由 、 、 三种基本结构组成。9、C语言提供的三中逻辑运算符是_ 、_、_。 10、若a=1,b=4,c=3, 则表达式!(ab)|!c&1的值是_ 。11、在C语言中,若对函数类型未加说明,则函数的隐含类型为 类型。12、在C语言中,唯一的一个三目运算符是 。13、以下程序运行后的输出结果是_。#include void main( ) int m=5; if (m+5)printf(%dn,m);else printf(%dn,m-);14、以下程序运行后的输出结果是 。#include void main() int x=15; while(x10 & x50) x+; if(x/3)x+;break; else cont

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1