全国高等教育自学考试高级语言程序设计试卷考卷
全国高等教育自学考试高级语言程序设计试题

全国2008年1月高等教育自学考试高级语言程序设计(一)试题课程代码:00342一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.下列转义字符中,错误..的是()A.′\n′B.′\\′C.′\108′D.′\xbb′2.在C语言中,整型常量的书写形式不.包括()A.二进制B.八进制C.十进制D.十六进制3.在C语言程序中,主函数的摆放位置()A.必须置于所有函数之首B.必须置于所有函数之尾C.不得置于所有函数之尾D.任意4.自定义标识符正确的是()A.5d_mB.constC.x4yD.book-15.表达式2&3|4和2>>1的值分别是()A.-5和0B.-5和1C.6和0D.6和16.执行下列程序段后x的值为()int i=1, j=10, x;for (; i<=j; i++, --j) x=i;A.5B.6C.7D.87.switch(表达式)语句中的“表达式”,允许的类型是()A. float, intB. float, int, charC. int, charD. char, double8.字符数组初始化错误..的是()A. static char word [ ]=″Turbo″;B. static char word [ ]={″Turbo″};C. static char word [ ]={′T′,′u′,′r′,′b′,′o′,′\0′};D. static char word [ ]=′Turbo\0′;9.设int b[5]={1,2,3,4,5};char a,c, d;,则数组元素值为4的是()A.b[′d-c′]B.b[4]C.b[′d′-a]D.b[′d′-′a′]10.设int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;则不.能表示数组a中元素的是()A.*pB.a[10]C.*aD.a[p-a]11.设double *p[6];,则p是()A.指向double型的指针B.double型数组C.指针数组D.数组指针12.设int x;,则与计算|x|等价的表达式是()A.x>0?-x:xB.x>0?x:-xC.x<0?x:-xD.x<0?-x:-x13.设char s[20]=″2008″;,则执行strcat(s, ″Beijing″); printf(″% d\n″, strlen(s));后输出结果是()A.5B.11C.12D.2014.对函数而言,下列说法正确的是()A.一个程序中可以出现一个以上的主函数B.函数与主函数可以互相调用C.用户自定义的函数必须有形式参数D.调用函数和被调用函数可以不在同一个文件中15.设FILE *fp; char ch; , 则从fp所指向文件中读入一个字符,正确的语句是()A.fgetc(ch, fp);B.ch=fgetc(fp);C.getchar(ch);D.fgetc(fp,ch);二、填空题(本大题共10小题,每小题2分,共20分)请在每小题的空格中填上正确答案。
全国10月高等教育自学考试高级语言程序设计(一)试题及答案解析

全国2018年10月高等教育自学考试高级语言程序设计(一)试题课程代码:00342一、单项选择题(在每小题的四个备选答案中选出一个正确答案,并将其号码填在题干的括号内。
每小题1分,共20分)1.C语言不能选用的字母是( )A.wB.πC.ID.i2.构成一个C程序的是( )A.一个主函数和若干个非主函数B.若干个主函数和若干个非主函数C.一个主函数和最多一个非主函数D.若干个主函数和最多一个非主函数3.设int m1=5,m2=3;表达式m1>m2?(m1=1):(m2=-1)运算后,m1和m2的值分别是( )A.1和-1B.1和3C.5和-1D.5和34.设float m=4.0,n=4.0;使m为10.0的表达式是( )A.m-=n*2.5B.m/=n+9C.m*=n-6D.m+=n+25.表达式5&2||5|2的值是( )A.0B.1C.2D.36.对于do-while语句,错误..的.说法是( )A.先执行循环体后判断循环条件B.循环体至少要执行一次C.循环体有可能一次也不执行D.循环体中可以包含若干条语句7.设int x=-1;执行表达式++x||++x||++x后,x的值是( )A.0B.1C.2D.38.设int a=7,b=8;则printf(″%d,%d″,(a+b,a),(b,a+b));的输出是( )A.7,15B.8,15C.15,7D.出错9.设int a[10];则对a数组元素的错误..引用是( )A.a[5]B.*(a+1)C.a[10-10]D.a(5)10.设char c[5]={′a′,′b′,′\0′,′c′,′\0′};则printf(″%s″,c)的输出是( )A.′a′′b′B.abC.abcD.″ab\0c″11.设double * p[6];则( )A.p是指向double型变量的指针B.p是double型数组C.p是指针数组,其元素是指向double型变量的指针D.p是数组指针,指向double型数组12.设char *s=″china″;则printf(″%s,%c,%c\n″,s,*s,s[3]);的输出是( )A.china, c,nB.china,china,iC.c,c,nD.china,china,n13.全局变量的存储类型可以定义为( )A.auto或staticB.extern或registerC.auto或externD.extern或static14.函数调用语句fun((((1,2),3),4));中参数的个数是( )A.1B.2C.3D.415.对于下列定义的枚举型enum colorl {yellow,green,blue=5, red,brone};则枚举常量yellow和red的值分别是( )A.3,6B.1,6C.0,6D.0,316.设有定义struct ru{long x;float y;} time,*timep=&time;则对time中成员x的正确引用是( )A.rnu.time.xB.timep.xC.(* timep).xD.time->x17.设FILE*fp;若fp指向的文件未结束,则函数feof(fp)的返回值为( )A.0B.trueC.非0D.false18.C语言中,系统自动打开的文件是( )A.二进制文件B.随机文件C.非缓冲文件D.设备文件19.执行下列程序#define R 0.5#define AREA(x) R*x*xmain (){int a=1, b=2;printf (″%5。
003421704全国高等教育自学考试 高级语言程序设计(一)试题

2017年4月高等教育自学考试《高级语言程序设计(一)》试题课程代码:00342A. for(a=O;a;a++);B. for(a=O;a==O;);C. for(a=O;a=O;a++);D. for(a=O;a==O ;a++);if (表达式)和while (表达式)中的“表达式”A. a[OHO]10. 下列为递归函数的是else return sqrt(sqrt(n));11. 设int x-l,y=2,z=3;,T 列语句错误的是B. for(z=O;z 〈y;z++);一、单项选择题(本大题共15小题, 每小题2分,共30分) 1. C 语言的保留字(又称关键字)是 A. sum B. main C. doubleD. longint 2. 错误的实型(乂称浮点型)常数是 A. 2E0 B.0.0 C. 0.E0 D. 0E+0.0 3. 设 inta, b ;,表达式 a=2, b=5, b++, a+b 一的值是 4. A. 2 B. 6 C. D.设inta ;,循环次数为无限的语句是 5. A. 只能是逻辑的 B. 只能是关系的 C. 只能是算术的 D. 可以是任意的6. 设 inta=l, b=2, c=3;,能将c 的值同时赋给a 和b 的表达式是 A. a=b==cB. a=(b=c)C. (a=c) II (b=c)D. (a=c)&&(b=c) 7. 函数中定义的变量,其作用域是A.本函数B. 本程序的所有文件 8.C.本文件的所有函数关于函数正确的说法是D. 本文件的第一个函数 A. 必须有返回值 B. 必须有形式参数 C. 返回值的类型可以是指针 D. 一个函数中可以定义另一函数9. 设 inta[3][4]=( 1,2,3,4,5,6};,值为的数组元素是 A. int func(int n) B. int func(int n) ( if(n= =0) return 0; ( if(n= =0) return O; else return(n-I); else return func(n-1);C. int func(int n)D. int func(int n) ( if(n= =0) return O; ( if(n= =0) return O;else return(-n);C. for(z=O,zVy,z++);12. 设char ch ;,下列语句错误的是A. -1B. 0C. 1D. 非 0二、 填空题(本大题共10小题,每小题2分,共20分)16. 设 int S=6;,表达式 s%2+(s/l)%2 的值是 ______________ 。
自考“高级语言程序设计”测试题及答案(1)

自考“高级语言程序设计”测试题及答案(1)一、是非题(下列各题,你认为正确的,请在题干的括号内打“√”,错的打“×”。
每题1分,共10分)1、实型是有序类型。
A。
正确B。
不正确2、保留字具有特定含义,不能挪作它用。
A。
正确B。
不正确3、true<false之值为false。
A。
正确B。
不正确4、exp可作用户标识。
A。
正确B。
不正确5、PASCAL源程序中一行只能写一个语句。
A。
正确B。
不正确6、PASCAL源程序中每个变量都必需说明。
A。
正确B。
不正确7、2.0E3.0是一个合法的实型常数。
A。
正确B。
不正确8、trunc(5.95)之值为5.0.A。
正确B。
不正确9、函数的类型只能是有序类型。
A。
正确B。
不正确10、当形参为值参数方式时,对应的实参不能是变量。
A。
正确B。
不正确二、单选题(在本题的每一小题的备选答案中,只有一个答案是正确的,请把你认为正确答案的题号,填入题干的括号内。
多选不给分。
每题2分,共10分)1.设i1,i2的整型变量,r1,r2是实型变量,下列哪一个语句是错误的( )A.i1:=i2DIVi1;B.r1:=i1DIVi2/i2;C.r1:=i1/r2;D.i2:=i1/i2;2.设ch为字符变量,下列哪一个语句是正确的( )A.ch:=‘-3’;B.ch:=-ch;C.ch:=ch;D.ch:=‘R’+‘T’;3.下列哪一个可用作用户自定久标识符( )BELB.A(i)C.A+nameD.boolean4.设a为123.4,执行write(a:5:2)后输出为( )A.123.40B.123.4C.23.4D。
极错5.在CASE语句中,下列哪一类常量不能用作选择因子( )A。
实型B。
整型C。
布尔型D。
枚举型三、填空题(每空2分,共20分)1、chr(8+ord(‘1’)之值为____________。
2、子程序调用时,对应变量参数方式形参传递的是实参的___________。
2023年全国自考高级语言程序设计一精选试题及答案4

全国自考高级语言程序设计(一)精选试题及答案4一、单项选择题1、下列程序段中,循环体被执行的次数是()int t=81,v=9while(t%v==0)printf(%c\n,*);A.0B.1C.9D.无限2、正确的变量定义是()A.unsigned long d= 1000;B.float m1=m2=10.0;C.char cl ='A', c2=A;D.double x=1.76,x=92.84;3、以下选项中,合法的用户标识符是()A.longB._2TesC.3DmaxD.a.dat4、C语言中,函数返回值的类型由()A.return语句中表达式的类型打算B.定义的函数类型打算C.调用该函数的主函数类型打算D.调用该函数时的系统状态确定5、宏定义#define PI 3.14159中,用宏名PI代替的是一个()A.常量B.字符串C.单精度实数D.双精度实数6、以下说法中不正确的是()A.使用 while循环时,循环变量初始化的操作应在循环语句之前完成B.while循环是先推断表达式后执行循环体语句C.do -while-和for循环均是先执行循环体语句,后推断表达式D.for、while和do- while循环中的循环体均可以由空语句构成7、设intx,y;,下列语句正确的是()A.5=x;B.x=y- -;C.(x+y)++;D.x+y=100;8、打开文件时,若文件使用方式选用字符串"w",则表示()A.打开一个已存在的二进制文件,只能读取数据B.打开一个文本文件,只能写入数据C.打开一个已存在的文本文件,只能读取数据D.打开一个二进制文件,只能写入数据9、设 struct num{int a;int b;}d[3]={{1,4},{2,5},{6,7}};则执行语句 printf(%d\n,d[2].a*d[2].b/d[1].b);后的输出结果是()A.2B.5C.8D.410、C语言中,组成文件的是()A.字符(字节)序列B.数据块C.数据行D.记录11、循环体至少被执行一次的是()A.for语句B.while语句C.do- while语句D.continue语句12、使用系统函数abs()时,应在程序开头写上的编译预处理命令是()A.#includeB.#includeC.#includeD.#include13、设有定义语句查看答案。
自学考试00342《高级语言程序设计(一)》历年真题全套试题

自考00342《高级语言程序设计(一)》历年真题集电子书目录1. 目录 (2)2. 历年真题 (3)2.1 00342高级语言程序设计200410 (3)2.2 00342高级语言程序设计200510 (10)2.3 00342高级语言程序设计200610 (21)2.4 00342高级语言程序设计200701 (28)2.5 00342高级语言程序设计200710 (35)2.6 00342高级语言程序设计200801 (39)2.7 00342高级语言程序设计200810 (43)2.8 00342高级语言程序设计200901 (47)2.9 00342高级语言程序设计200910 (52)2.10 00342高级语言程序设计201001 (57)2.11 00342高级语言程序设计201010 (62)2.12 00342高级语言程序设计201101 (66)2.13 00342高级语言程序设计201110 (73)3. 相关课程 (80)1. 目录历年真题()00342高级语言程序设计200410()00342高级语言程序设计200510()00342高级语言程序设计200610()00342高级语言程序设计200701()00342高级语言程序设计200710()00342高级语言程序设计200801()00342高级语言程序设计200810()00342高级语言程序设计200901()00342高级语言程序设计200910()00342高级语言程序设计201001()00342高级语言程序设计201010()00342高级语言程序设计201101()00342高级语言程序设计201110()相关课程()2. 历年真题2.1 00342高级语言程序设计200410高级语言程序设计(一)试题课程代码:0342一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
自考高级语言程序设计试卷及答案(2)
1、C语言中普通整型变量的类型说明符为______,在内存中占______字节,有符号普通整型的数据范围是______.2、C语言中基本的数据类型有:______、______ 、______ .3、设整型变量n的值为2,执行语句“n+=n-=n*n”后,n的值是______.4、共用体和结构体的定义格式类似,不同点是______.5、有如下输入语句:scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);为使变量a的值为1,b的值为3,c的值为2,从键盘输入数据的正确形式应是___a=1,b=3,c=2___.6、有语句:char A[ ]={“I am a student”};该字符串的长度是__14____,A[3]= ______.教育城7、符号“a”和‘a’的区别______.8、下列程序的输出结果是______.int ast(int x,int y,int * cp,int * dp){ *cp=x+y; *dp=x-y; }main(){ int a=4,b=3,c,d;ast(a,b,&c,&d);printf(“%d,%d/n”,c,d);}1、以下选项中属于C语言的数据类型是()。
A. 复合型B. 双精度型C. 逻辑型D. 集合型2、以下说法中正确的是()。
A. C语言程序总是从第一个的函数开始执行B. 在C语言程序中,要调用的函数必须在main()函数中定义C. C语言程序总是从main()函数开始执行D. C语言程序中的main()函数必须放在程序的开始部分3、选出下列标识符中不是合法的标识符的是()。
A. hot_doB. cat1C. _priD. 2ab4、下列描述中不正确的是()。
A、字符型数组中可能存放字符串。
B、可以对字符型数组进行整体输入、输出。
C、可以对整型数组进行整体输入、输出。
D、不能在赋值语句中通过赋值运算符“=”对字符型数组进行整体赋值。
自学考试高级语言程序设计历年真题和答案
2001年10月自考高级语言程序设计(一)试题第一部分选择题一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的括号内。
1.C语言程序编译时,程序中的注释部分A.参加编译,并会出现在目标程序中B.参加编译,但不会出现在目标程序中C.不参加编译,但会出现在目标程序中D.不参加编译,也不会出现在目标程序中2.下列表达式的值为0的是()A.3%5B.3/5.0C.3/5D.3<53.正确的C语言用户自定义标识符是()A.printB.floatC.when?D.random%24.设int a=3;则表达式a<1&&--a>1的运算结果和a的值分别是()A.0和2B.0和3C.1和2D.1和35.下列叙述中,正确的是()A.引用带参的宏时,实际参数的类型应与宏定义时的形式参数类型相一致B.宏名必须用大写字母表示C.宏替换不占用运行时间,只占编译时间D.在程序的一行上可以出现多个有效的宏定义6.下列保留字中用于构成循环结构的是()A.ifB.whileC.switchD.default7.与语句if(a>b)if(c>d)x=1;else x=2;等价的是()A.if(a>b){if(c>d)x=1;else x=2;}B.if(a>b){if(c>d)x=1;}else x=2;C.if((a>b)&&(c>d))x=1;else x=2;D.if(a<=b)x=2;else if(c>d) x=1;8.设char x='a';则printf("x=%c,y=%c\n",x,97);的输出是A.x=a,y=97B.x=97,y=aC.x=97,y=97D.x=a,y=a9.设int a[][4]={1,2,3,4,5,6,7,8,9};则数组a的第一维的大小是()A.2B.3C.4D.无确定值10.执行下列程序int a[3][3]={{1},{2},{3}};int b[3][3]={1,2,3};main(){printf("%d\n”,a[1][0]+b[0][0]);}后输出的结果是A.0B.1C.2D.311.设char str[100];int i=5;则引用数组元素的错误形式是()A.str[i+10]B.*(str+i)C.*(str+i-1)D.*((str++)+i)12.设int x[]={1,2,3,4,5,6},*p=x;则值为3的表达式是()A.p+=2,*++pB.p+=2,*p++C.p+=3,*pD.p+=2,++*pA.autoB.staticC.externD.register14.执行下列程序()int a=3,b=4;void fun(int x1,int x2){printf("%d,%d\n",x1+x2,b);}main(){int a=5,b=6;fun(a,b);}后输出的结果是A.3,4B.11,1C.11,4D.11,615.设有定义语句struct{int a;float b;} d[3]={{1,4},{2,5},{6,7}};则printf("%3.1f\n",d[2].a*d[2].b/d[1].b);的输出是()A.2.5B.2.0C.8.0D.8.416.设有定义语句:enum t1 {a1,a2=7,a3,a4=15}time; ( )则枚举常量a2和a3的值分别为A.1和2B.2和3C.7和2D.7和817.将一个整数10002存到磁盘上,以ASCII码形式存储和以二进制形式存储,占用的字节数分别是()A.2和2B.2和5C.5和2D.5和518.在文件使用方式中,字符串"rb"表示()A.打开一个已存在的二进制文件,只能读取数据B.打开一个文本文件,只能写入数据C.打开一个已存在的文本文件,只能读取数据D.打开一个二进制文件,只能写入数据19.执行下列程序()# define F(y) 15>>y#define PRINT(a) printf("%d",a)main(){PRINT(F(2));}后输出的结果是A.3B.3.5C.14D.7.520.main()函数可以带两个形参,一般分为argc和argv,其中argv可以定义为()A.int argvB.char * argv[];C.char argv[];D.char **argv[];第二部分非选择题二、填空题(本大题共10小题,每小题2分,共20分)21.初始化值是0.618的双精度变量a的定义形式为____________。
全国高等教育自学考试高级语言程序设计试题
全国高等教育自学考试高级语言程序设计试题标准化管理部编码-[99968T-6889628-J68568-1689N]全国2003年1月高等教育自学考试高级语言程序设计(一)试题课程代码:00342第一部分选择题一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的括号内。
1.属于C语言基本数据类型的是( )A.指针型B.无符号整型C.数组型D.结构型语言的长整型数值在计算机中占用的字节个数是( )语言中,″\x3d″在内存中占用的字节数是( )4.设int x;则执行printf(″%x\n″,~x^x);的结果是( )5.对于while语句,错误的...说法是( )A.用条件控制循环体的执行次数B.循环体至少要执行一次C.循环体有可能一次也不执行D.循环体中可以包含若干条语句6.设int a=9,b=20;则printf(″%d,%d\n″,a--,--b);的输出结果是( ),19 ,20,19 ,207.执行下列语句int a=8,b=7,c=6;if(a<b)if(b>c){a=c;c=b;}printf(″%d,%d,%d\n″,a,b,c);后输出的结果是( ),7,7 ,7,8,7,6 ,7,88.设static char x[ ]=″12345″,y[ ]={′1′,′2′,′3′,′4′,′5′,′\0′};那么( )数组的长度等于y数组的长度数组的长度大于y数组的长度数组的长度少于y数组的长度数组与y数组的存储区域相同9.设int i,x[3][3]={1,2,3,4,5,6,7,8,9};则下面语句for(i=0;i<3;i++)printf(″%d″,x[i][2-i]);的输出结果是( )10.设int b[ ]={1,2,3,4},y,*p=b;则执行语句y=*p++;之后,变量y的值为( )11.设int a,*p;则语句p=&a;中的运算符“&”的含义是( )A.位与运算B.逻辑与运算C.取指针内容D.取变量地址12.若函数能被其它编译单位引用,那么函数定义时的存储类型应选用( )13.下面函数定义有错误的...是( )(x1,x2) (x1,x2)int x1,x2; int x1;int x2;{函数体} {函数体}(int x1,x2) (int x1,int x2){函数体} {函数体}语言中计算a3正确的表达是( )^3 (a,3)**3 (a,3)15.下列定义正确的是( )t={a,b}x; t{1,2}x;{′+′,′-′}x; t{a,b}x;16.设有定义:union u{int a[4];float b[3]};char c[16];}aa;则printf(″%d\n″,sizeof(aa));的输出是( )17.数据在文本文件中占用的字节个数是( )18.在下列有关宏替换的叙述中,正确的说法是( )A.宏替换占用运行时间B.宏名有类型C.带参数的宏替换和函数等价D.宏替换只是字符替换19.下列程序的运行结果是( )# define A 5# define B A+1main( ){int a;a=B;printf(″%d\n″a--);}D.出错20.为了向二进制文件尾部增加数据,打开文件的方式应采用( )A.″ab″B.″rb+″C.″wb″D.″wb+″第二部分非选择题二、填空题(本大题共10小题,每小题2分,共20分)21.设int y;执行表达式(y=4)||(y=5)||(y=6)后,y的值是______。
10月全国自考高级语言程序设计(一)试题及答案解析
全国2018年10月高等教育自学考试高级语言程序设计(一)试题课程代码:00342一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.以下属于c语言保留字的是()A・ fopen B・ includeC・ get D・ unsigned2.C语言中,错误的int类型的常数是()• •A・1E5 B・0C.037 D・Oxaf3.在C语言中,'a'和"a"存储所占用的字节数分别是()A・1, 1 B・1, 2C・2, 1 D・2, 24.对于数学表达式2^ + — ,正确的C语言表达式是()3sinxA. 2sqrt(x)+(a+b)/3sin(x) E ・ 2 sqil(x)+(a+b)/(3 sin(x))C ・ 2*sqrt(x)+(a+b)/3/sin(x)D ・ 2*sqit(x)+(a+b/3 *sin(x))5.设iiit x=10. a=0, b=25:»条件表达式x<l?a+10 : b的值是()A・0 E・1C・10 D・256. C语言中,下列运算符优先级最高的是()A. !B. %C・>> D.==7. sizeof(double)是( )A.函数调用B. int型表达式C. double型表达式D.非法表达式8 •设有以下程序段:iiit a=l, b=10, c=l,x;x=a&&b||++c;printf (“ %d, %d\n"兀c);执行后输出的结果是() A. 0, 0 B ・ 0, 1C ・ 1, 0D ・ I, 19•设mtx;,则以卞语句中错误的输入是( )• •A ・ scanf (rr %d" ,x);E ・ scanf (“ %d " ,&x):C ・ scanf (“ %o " ,&x):D. scanf(r/ %x 〃,&x):10.设 int (*P) ();, p 的含义是( )A ・指向一维数组的指针变量B. 指向二维数组的指针变量C. 指向一个整型变量的指针变量D. 指向整型函数的指针变量11.在C 语言中,运算符"="和"=="的功能分别是( ) A.关系运算和赋值运算 E.赋值运算和关系运算 c ・都是关系运算 D ・都是赋值运算 12.设 intx [] ={1,2,3,4,5}, *p=x ;,则值为 3 的表达式是( )A ・ p+=2, *p++B ・ p+=2, *++pC. p+=2,p 卄D. p+=2, ++*p13.设 foi (i=0,j=10; (j>0)&&(i<4);i++J~);,该语句的循环次数是() A ・0 B ・3C ・4 14.设函数定义如卞:D ・无限float fl (float a, float b){return (a+b);}若有float x=l.l,y=2.2;,则以下语句中正确的函数调用是( ) A ・ priiitf (,z %f" ,fl(x));E ・ printf ( %f" ,fl (&x 、y));C・ pnntf(" %f" ,fl(*x,*y));D・ piiiitf (,z %f",fl(x、y));15.结构型变量占用内存的字节数是()A.各成员占用内存字节数之和B.第一个成员占用的内存字节数C.占用内存最人成员所需的字节数D.最后一个成员占用的内存字节数16・设enum color {purple,black, red. white} d;,若将d赋值为枚举常量red,则正确的是A ・ d=(enum color)2; C・ d=〃red;B ・ d=(enum color)3; D・ d=color;17.若main ()函数带参数,参数个数最多是()A・0 B・1D・318.设宏定义#defiiie PI 3.1415926,用宏名PI替换的是()A.算术表达式B.字符串C.单精度实型数D.双精度实型数19•调用系统函数fabs时,应选用的文件包含是()A・存include " stdio.hB・ ^include " string.h C・ ^include " ctvpe.h" D・ ^include " math.h"20.设stmct st{ mt 1;mt j;} *P;main (){C・2Stmct stm[ ]={{10. 1}, {20, 2}, {30, 3}}; p=m;printf (r/ %d\n",(*++p)・j);则程序的输出结果是( )A・1 B・2C・3 D・10二、填空题(本大题共10小题,每小题2分,共20分)请在每小题的空格中填上正确答案。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
全国高等教育自学考试高级语言程序设计试卷考卷Document serial number【NL89WT-NY98YT-NC8CB-NNUUT-NUT108】2001年10月全国高等教育自学考试高级语言程序设计试卷第一部分选择题一、单项选择题 (本大题共20小题,每小题1分,共20分) 在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的括号内。
1. C语言程序编译时,程序中的注释部分【】A. 参加编译,并会出现在目标程序中B. 参加编译,但不会出现在目标程序中C. 不参加编译,但会出现在目标程序中D. 不参加编译,也不会出现在目标程序中2. 下列表达式的值为0的是【】A. 3﹪5B. 3/C. 3/5D. 3<53. 正确的C语言用户自定义标识符是【】A. printC. when?D. random﹪24. 设int a = 3;则表达式a<1&& - - a>1的运算结果和a的值分别是【】A. 0和2B. 0和3C. 1和2D. 1和35. 下列叙述中,正确的是【】A. 引用带参的宏时,实际参数的类型应与宏定义时的形式参数类型相一致B. 宏名必须用大写字母表示C. 宏替换不占用运行时间,只占编译时间D. 在程序的一行上可以出现多个有效的宏定义6. 下列保留字中用于构成循环结构的是【】A. ifB. whileC. switch7. 与语句if(a>b)if(c>d)x = 1;else x = 2;等价的是【】A. if(a>b){if(c>d) x = 1;else x = 2;}B. if(a>b){if(c>d) x = 1;} else x = 2;C. if((a>b) && (c>d)) x = 1;else x = 2;D. if(a< =b) x = 2;else if (c>d) x = 1;8. 设char x =′a′;则printf(″x = ﹪c, y = ﹪c \ n″,x,97);的输出是【】A. x = a,y = 97B. x = 97,y = aC. x = 97,y = 97D. x = a,y = a9. 设int a[][4]={1,2,3,4,5,6,7,8,9};则数组a的第一维的大小是【】A. 2B. 3C. 4D. 无确定值10. 执行下列程序int a[3][3]={{1},{2},{3}};int b[3][3]={1,2,3};main(){printf(″﹪d \ n″,a[1][0] + b[0][0]);}后输出的结果是【】A. 0B. 1C. 2D. 311. 设char str[100];int i = 5;则引用数组元素的错误形式是【】A. str[i + 10]B. (str + i)C. (str + i - 1)D. ((str + + ) + i)12. 设int x[] = {1,2,3,4,5,6},* p = x;则值为3的表达式是【】A. p + = 2, * + + pB. p + = 2, * p + +C. p + = 3, * pD. p + = 2, + + * p13. 在函数内,定义变量时存储类型符可省略的是【】A. autoB. staticC. externD. register14. 执行下列程序int a = 3, b = 4;void fun(int x1, int x2){printf(″﹪d, ﹪d \ n″, x1 + x2, b);}main(){int a = 5, b = 6;fun(a, b);}后输出的结果是【】A. 3,4B. 11,1C. 11,415. 设有定义语句struct{int a;float b;} d[3]={{1,4},{2,5},{6,7}};则printf(″﹪ \ n″,d[2]. a * d[2]. b/d[1]. b);的输出是【】A.B.C.D.16. 设有定义语句:enum t1 {a1, a2 = 7, a3, a4 = 15}time;则枚举常量a2和a3的值分别为【】A. 1和2B. 2和3C. 7和2D. 7和817. 将一个整数10002存到磁盘上,以ASCII码形式存储和以二进制形式存储,占用的字节数分别是【】A. 2和2C. 5和2D. 5和518. 在文件使用方式中,字符串″rb″表示【】A. 打开一个已存在的二进制文件,只能读取数据B. 打开一个文本文件,只能写入数据C. 打开一个已存在的文本文件,只能读取数据D. 打开一个二进制文件,只能写入数据19. 执行下列程序# define F(y) 15>>y# define PRINT(a) printf(″﹪d″,a)main(){PRINT(F(2));}后输出的结果是【】A. 3B.C. 14D.20. main()函数可以带两个形参,一般分为argc和argv,其中argv可以定义为【】A. int argv;B. char * argv[];C. char argv[];D. char ** argv[];第二部分非选择题二、填空题 (本大题共10小题,每小题2分,共20分)21. 初始化值是的双精度变量a的定义形式为_____________________。
22. 表达式 !10! = 1的值是____________________。
23. “20<x≤30”的C语言表达式是____________________。
24. 表达式a = 1,a + 1,a + + 的值是___________________。
25. 设int i = 5;则循环语句while (i > = 1) i - -;执行后,i的值为_______________。
26. 被调函数在执行结束时,这个函数中定义的__________________类型的变量不被释放。
27. 设struct student{int no;char name[12];float score[3];} sl,* p = &sl;用指针法给sl的成员no赋值1234的语句是___________________。
28. C语言程序中对文本文件的存取是以________________为单位进行的。
29. 设char string[] =″This_is_a_book!″;则数组的长度应是________________。
30. 设int a[2][3] = {{2},{3}};则数组元素_____________________的值为3。
三、程序分析题 (本大题共5小题,每小题5分,共25分) 阅读下列程序,将输出结果写到各题右侧的空白处31. int a = 200;main(){int i;for(i = 1;i< = 5;i + +){a + + ;printf(″﹪d,″,a);s()}{s(){static int a = 20;a + + ;printf(″﹪d \ n″,a);}32. # include ″″main(){char c;c = getchar();if(c> =′a′&&c< =′z′) ‖c> =′X′&&c< =′Z′)c = c - 23;printf(″﹪c \ n″,c);}设从键盘上输入Next ↙33. # define N 7main(){int i,j,temp,a[N]={1,2,3,4,5,6,7};for(i = 0;i<N/2;i + + ){j = N - 1 - i;temp = a[i];a[i]=a[j];a[j]=temp;}for(i = 0;i<N;i + + ) printf(″﹪5d″,a[i]);}34. struct porb{char * name;int count;}x[]={″Li ning″,19,″Lang ping″,21,″Zhu jian hua″,20};main(){int i;for(i = 0;i<3;i + + )printf(″﹪s: ﹪d \ n″,x[i].name,x[i].count);35. main(){union{short a;char ch;}M;= 100;=′A′;printf(″﹪d,﹪d,﹪c \n″,sizeof(M),,;}四、程序填充题 (本大题共3小题,每小题6分,共18分) 给出下列程序,将横线处缺少的部分补上,使其能正确运行。
36. 以下程序的功能是用选择法对数组a中的整数由小到大进行排序。
void sort(int b[],int n){ int i,j,t;for(i = 0;i<n - 1;i ++ )for(______;j<n;j ++ )if(b[i]_____b[j]){t = b[i];_____________;b[j]=t;}main(){ int a[]={5,8,6,2,7,4,1,3};int i;sort(a,8);for(i = 0;i<8;i ++ )printf(″﹪5d″,a[i]);printf(″\ n″);}37. 输入一字符串(换行为结束标志)统计其中数字(0,1,2,…,9不单独统计)、空白和其它字符出现的次数。
# include ″″main(){ char c;int ___________________________;while((c = getchar())! =′\ n′){if(__________________________)digit + + ;else if(c = =′′‖c = =′\ t′) ++ blank;else __________________________;}printf(″digit =﹪d,blank =﹪d,other =﹪d \ n″,digit,blank,other);}38. 先为数组a输满数据,再为x输入一个数据,在数组a中找出第一个与x相等的元素并将其下标输出,若不存在这样的元素,则输出“Not found!”标志。
main(){int i,x,a[10];for(i = 0;i<10;i ++ )scanf(″﹪d″,___________);scanf(″﹪d″,&x);printf(″﹪d″,x);for(i = 0;i<10;i ++) if(_________________)break;if (i _________10)printf(″ position:﹪d \ n″,i);else printf(″ Not found! \ n″,x);}五、程序设计题 (第39小题5分,第40、41小题各6分,共17分)。