2010年10月全国自考高级语言程序设计(一)真题及参考答案
10月全国高级语言程序设计(一)自考试题及答案解析
全国2019年10月高等教育自学考试高级语言程序设计(一)试题课程代码:00342第一部分选择题(共20分)一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.组成C语言程序的是()A.过程B.函数C.子程序D.主程序和子程序2.编译程序的功能是()A.将汇编语言程序转换为目标程序B.将汇编语言程序转换为高级语言程序C.将高级语言程序转换为目标程序D.将高级语言程序转换为汇编语言程序3.C语言中定义某个内部变量时,如果省略了存储类型符,则系统将默认该变量是()A.自动型 B.寄存器型C.静态型D.外部参照型4.不用第三个变量,将变量a和b的值进行互换的操作是()A.a+=b;b-=a;a-=b;B.a+=b;b=a-b;a-=b;C.b-=a;a-=b;a-=b;D.b-=a;a=b-a;a+=b;5.自动型变量分配在()A.内存的数据区中B.CPU的通用寄存器中C.内存的程序区中D.内存的堆栈区中6.下列程序段运行后,x的值是()a=1;b=2;x=0;if(!(--a))x--;if(!b)x=7;else ++x;A.0B.3C.6D.77.对do-whie语言错误..的说法是()A.可构成多重循环结构B.循环次数不可能为0C.循环次数可能为0D.先执行后判断8.设int x=1,a=9,b=6,c=7,d=8;则执行语句:if(a>b) if(c>d)x=2;else x=3;后,x的值是()1A.1B.2C.3D.不确定9.设char str1[10]=″ABCDE″,str2[10]=″XYZ″;则执行语句:printf(″%d″,strlen(strcpy(str1,str2)));后的输出是()A.3B.5C.8D.910.初始化一维数组a正确的语句是()A.int a[10]=(0,0,0,0,0);B.int a[10]={ };C.int a[ ]={10} ;D.int a[10]={[10*1]};11.语句int (*p)( );的含义是()A.p是一个指向函数的指针变量,该函数的返回值是一个整型数据B.p是指针变量,指向一个整型数据C.p是一个指向一维数据的指针变量D.p是指针函数12.设int a[10],*p=a;则对数组元素的正确引用是()A.a[p]B.p[a]C.*(p+2)D.p+213.对于程序段float f1(int a){int b;……}main( ){int m,n;m=f1(n);……}char f2(int x,int y){int a;……}变量m,n的作用范围是()A.整个程序段B.main函数C.main函数和f2函数D.mian函数和f1函数14.若函数中局部变量的值经函数调用后仍保留,则该局部变量定义为()A.自动变量 B.内部变量C.外部变量D.静态变量15.在下列运算符中,优先级最低的是()A.!B.·C.( )D.[ ]16.对于如下定义的枚举型enum list1{x1,x2,x3,x4=6,x5,x6};2枚举常数x2和x6的值分别是()A.1,6B.1,8C.2,6D.2,817.对于文件操作方式″rb+″,准确的说法是()A.可读写文本文件B.只读二进制文件C.只读文本文件D.可读写二进制文件18.数据-324在二进制文件和文本文件中所占的字节数分别是()A.2,2B.2,4C.4,2D.4,419.设int a=1,b=2,c=4;经过表达式(c=a!=b)&&(a= =b)&&(c=b)运算后,a、b和c的值分别是()A.1,2,0 B.1,2,1C.1,2,2D.1,2,320.下列程序的运行结果是()#define EVEN(x)x%2= =0?1:0main( ){if(EVEN(9+1)) printf(″is even″);else printf(″is odd″);}A.is evenB.出错C.无结果D.is odd第二部分非选择题(共80分)二、填空题(本大题共10小题,每小题2分,共20分)请在每小题的空格中填上正确答案。
【免费下载】全国10月高等教育自学考试高级语言程序设计一试题
一、单项选择题(本大题共 15 小题,每小题 2 分,共 30 分)
在每小题列出的四个备选项中只有一个是符合题目要求的,请将其选出并将“答题纸”的相应代码涂黑。错涂、
多涂或未涂均无分。
1.正确的自定义标识符是
A.2xy
C.root%x
2.正确的 C 语言常数是
A.012
A.s=gets();
C.scanf("%s",s);
13.关于函数叙述正确的是
A.函数必须有形参
B.函数的形参可以是常数
C.函数中只能出现一个 return 语句
D.函数类型为 void 时,该函数无返回值
14.设 int a[10],*p=a;,与数组元素 a[0]等价的是
A.*p
C.&a
15.结构型变量所占内存量应是
非选择题部分
注意事项: 用黑色字迹的签字笔或钢笔将答案写在答题纸上,不能答在试题卷上。
二、填空题(本大题共 10 小题,每小题 2 分,共 20 分) 16.设 int n;,“n 为偶数”的 C 语言逻辑表达式是______。 17.实现字符串拷贝的系统函数是______。 18.实(浮点)型分为单、双精度两种,其类型保留字分别是______。 19.在 C 语言中,运算符优先级最低的是______。 20.设 int a=3;,执行语句 printf("%d",a<<2);后的输出结果是______。 21.设 float x=3.1;,执行语句 printf("%.lf',3.2+(int)x);后的输出结果是______。 22.设 FILE*fp;,若 fp 指向文件尾部,则 feof(fp)的返回值是______。 23.设 char*p="abcd";,执行语句 printf("%C",*(p+2));后的输出结果是______。 24.设 char str[]="book\n";,执行语句 printf("%d",sizeof(str));后的输出结果是______。 25.若局部变量的存储类型缺省,其默认类型是______。
高等教育自学考试高级语言程序设计(一)真题2010年1月
高等教育自学考试高级语言程序设计(一)真题2010年1月(总分:100.00,做题时间:150分钟)一、课程代码:00342(总题数:1,分数:0.00)二、单项选择题(本大题共15小题,每小题2分,共30分) (总题数:15,分数:30.00)1.下列不属于保留字的是()。
(分数:2.00)A.defaultB.registerC.sructD.unsign √解析:2.下列不能作为常量的是()。
(分数:2.00)A.0582 √B.0xa5C.’/n’D.2.5e-2解析:3.设typedeflong class;,则class是()。
(分数:2.00)A.整型变量B.长整型变量C.长整型数据类型的新标识符√D.新的而非长整型数据类型的标识符解析:4.设char c=’A’;int i=l, j;,执行j=!c&&i++;后,i和j的值分别是()。
(分数:2.00)A.1和0 √B.1和1C.2和0D.2和l解析:5.设int a;,执行表达式(a=1,2,3),a+1后,a和表达式的值分别是()。
(分数:2.00)A.1和2 √B.2和3C.3和4D.4和5解析:6.下列关于函数定义正确的是()。
(分数:2.00)A.fun(int x,y){int z;return z;}B.void fun(int x,int y){return x+y;}C.fun(x,y){int x,y;double z;z=x+y;return z;}D.double fun(int x,int y) {double z;z=x+y;return z;) √解析:7.下列用户自定义标识符正确的是()。
(分数:2.00)A.4aB.b_1 √C.-&D.*p解析:8.下列程序段中循环体执行的次数是()。
int x=-1; do { x=x*x; }while(! x);(分数:2.00)A.0B.1 √C.2D.无限解析:9.实现字符串连接的系统函数名是()。
2011年10月全国自考高级语言程序设计(一)真题及参考答案
2011年10月全国自考高级语言程序设计试题高级语言程序设计(一) 试题课程代码:00342一、单项选择题(本大题共1 5小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.自定义标识符由字母、数字或下划线组成,且第一个字符必须是( )A.数字B.字母或数字C.数字或下划线D.字母或下划线2.运算符优先级符合由高到低排列的一组是( )A.+、!=、&&、=B.&&、!=、+、=C.!=、+、=、&&D.&&、=、!=、+3.转义字符中正确的是( )A.'\'B. '\xyz'C. '\\'D. '\820'14.下列程序段执行后x、y和z的值分别是( )int x=10,y=20,z=30;if(x>y)z=x;x=y;y=z;A.10,20,30B.20,30,30C.20,30,10D.20,30,205.下列程序段执行后的输出结果是( )int k=4,a=3,b=2,c=l;printf("%d\n",k<a? k:c<b? c:a);A.1B.2C.3D.46.关于for(表达式1;表达式2;表达式3),叙述正确的是( )A.表达式1不可以缺省B.表达式2不可以缺省C.表达式3不可以缺省D.三个表达式都可以缺省7.设int *p[4];,则标识符p是( )A.整型数组名B.指针数组名C.指针函数名D.指向整型变量的指针8.在循环结构中,continue语句的作用是( )A.继续执行本次循环B.提前退出多重循环C.提前结束本次循环D.提前退出本重循环9.数组定义及初始化正确的是( )A.char a[5]={};B.int a[5]={0,1,2,3,4,5};C.char a={"string"};D.char a[]={'0','1','2','3','4','5'};1O.设int m;,与while(!m)等价的是( )A.while(m!=0)B.while(m==1)C.while(m==O)D.while(m!=1)11.设char s1[]="12345",s2[]="1234";,执行语句printf("%d\n",strlen(strcpy(s1,s2)));后的输出结果是( )A.4B.5C.9D.1O12.下列不属于C语言数据类型的保留字是( )A.realB.voidC.floatD.double13.设int i,j=7,*p=&j;,与赋值语句i=j;等价的是( )A.i=&p;B.p=*&j;C.p=&j;D.i=*p:14.正确表示数学关系式x≥y≥z的C语言表达式是( )A.x>=y>=zB.(x>=y)&&(y>=z)C.(x>=y)&(y>=z)D.(x>=y)||(y>=z)15.设struct student{char name[10];char sex;}stu;,则sizeof(stu)的值是( )A.2B.1OC.11D.12二、填空题(本大题共10小题,每小题2分,共20分)请在每小题的空格中填上正确答案。
自学考试真题:全国10-01C++程序设计试题
2010年1月高等教育自学考试全国统一命题考试C++程序设计试题课程代码:04737一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.在C++中,头文件扩展名为()A..cppB..hC..1ibD..obj2.下列符号中,不属于分隔符的是()A.,B./C.;D.{}3.可替换#definePI3.1415926的语句是()A.float PI 3.1415926;B.const float PI=3.1415926;C.const PI(3.1415926);D.const 3.1415926;4.布尔类型标识符是()A.voidB.shortC.longD.bool5.下列不是C++语言的基本数据类型的是()A.字符类型B.整数类型C.逻辑类型D.枚举类型6.C++允许在结构中定义函数,这些函数称为()A.静态函数B.构造函数C.析构函数D.成员函数7.设函数void inc(int)将形参加1,如有整型变量int i=10;则执行inc(i);后,i的值为()A.9B.10C.11D.未知8.下列哪种默认参数的声明是不正确的()A. int max(int a,int b,int c,int d=0);B. int max(int a,int b,int c=0,int d=0);C. int max(int a=0,int b,int c=0,int d=0);D. int max(int a,int b=0,int c=0,int d=0);9.设int &max(int &,int &)返回两参数中较大者,如有两整型变量int a=10;int b=15;在执行max(a,b)++后,a,b值分别为()A.10,15B.11,15C.10,16D.1l,1610.包含哪种语句的函数不能声明为内联函数()A.循环B.变量自增自减C.if...else…D.变量声明11.定义函数模板中使用的参数类型标识符需使用下列哪组符号括起来()A.<>B.“”C.()D.{}12.一个类拥有多个构造函数,则这些构造函数间为()A.重载关系B.重复关系C.拷贝关系D.无关系13.对于拷贝构造函数point::point(point& p),下列说明正确的是()A.该函数只能访问P的私有成员B.该函数不能访问P的公有成员C.该函数可以访问P的私有和公有成员D.该函数不能访问P的成员14.使用delete[]删除对象数组时,描述正确的是()A.数组中各元素都调用析构函数B.数组中各元素都调用构造函数C.不调用析构函数D.只有首元素调用析构函数15.下列哪个指令属于条件编译指令()A. #elifB. #errorC. #pragmaD. #include16.设类Test中存在成员static int x,则下列哪种初始化方式是正确的()A.Test::int x=25;B.int x=25;C.int Test::x=25;D.int Test x=25;17.下列关于友元的描述错误的是()A.成员函数不可作友元B.类可以作友元C.普通函数可以作友元D.静态函数可以作友元18.在继承中,派生类拥有的基类个数为()A.0个B.1个C.多个D.至少1个19.基类中的protected成员,通过public派生,其在派生类中的可见性为()A.不可访问B.privateC.protectedD.public20.下列哪个不是面向对象的关键要素()A.抽象性B.结构性C.封装性D.多态性二、填空题(本大题共20小题,每小题1分,共20分)请在每小题的空格中填上正确答案。
2010年10月高等教育自学考试C程序设计试题
二、填空题(本大题共20小题,每小题1分,共20分)
21.设要把一个文件输出流对象myFile与 文件“f:\myText.txt相关联,所用的 C++语m 句y是fi:le.open(“f:\\myText.txt”)
说明:文件流分为三种:输入文件流,输出文件 流,输入输出文件流。分别对应的类是: ifstream,ofstream,fstream。使用这三个 类时要包含头文件:fstream。
28
私有派生: 基类的private成员在私有派生类中为不可访问成 员 基类的protected成员在私有派生类中为私有成员 基类的public成员在私有派生类中为私有成员
保护派生: 基类的private成员在保护派生类中为不可访问成 员 基类的protected成员在保护派生类中为私有成员 基类的public成员在保护派生类中为保护成员 多重继承中访问权限的变化同单一继承
编译时程序内调用内联函数的地方被替换为函
数体内的语句,能够提高程序运行效率,但会
增加程序的长度。在类体内定义的函数自动为
内联函数。内联函数必须在调用之前说明为内
联函数。
13
9.int Func(int,int);不可与下列哪个函数构成重 载( B ) A.int Func(int,int,int); B.double Func(int,int); C.double Func(double,double); D.double Func(int,double);
8
5.使用值传递方式将实参传给形参,下列说法正确的 是(A) A.形参是实参的备份 B.实参是形参的备份 C.形参和实参是同一对象 D.形参和实参无联系
说明:C++中参数传递方式分为两种:值传递和 地址传递(即引用传递)。
自考“高级语言程序设计”习题答案详解
①<= ②= ③% ④&&
「解」常规运算符的优先级自高到低的排列顺序是算术运算符、移位运算符、关系运算
符。按位运算符、逻辑运算符、条件运算符、赋值运算符、逗号运算符。所以问题所给的四 个运算符按优先级自高到低的排列顺序是%,<=,&&,=。所以解答是③。
6.C 程序是由函数构成的。其中有并且只能有_____个主函数。C 语言程序的执行总是
由_____函数开始,并且在_____函数中结束(如别的函数未调用终止程序执行的库函数)
「解」C 程序是由若干函数构成的。其中有并且只能有1个主函数(用 main 命名)。C 程序的执行总是由主函数开始执行,通常在主函数中结束(如没有在别的函数中调用终止程 序执行的库函数的话)。
2.在以字节存储字符的系统中,‘\n ’在内存占用的字节数是( )
①1 ②2 ③3 ④4
「解」一般来说,一个字符在内存中只占1个字节,‘\n’是转义字符,其意义是换行符, 它作为一个字符存储,在内存也只占五个字节。所以解答是①。
3.字符串“XyZ”在内存占用的字节数是( )
①3 ②4 ③6 ④8
「解」字符串中的每个字符占1个字节,但 C 程序在存储字符串时,要在最后一个有效 字符后面接上 1个字符串结束的标记符‘\0’。这样,存储字符串常量“xyZ”需要 4个字节。所 以解答是②。
5.一个 char 型数据,它的值在内存中存放的是()
①ASCll 代码值 ②BCD 代码值 ③内码值 ④十进制代码值
「解」计算机存储字符,通常是存储字符的某种代码值。有许多种字符编码的方法,最 流行的是 ASCII 代码。在 C 语言中,Char 型数据也用 ASCII 代码表示。所以解答是①。
全国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。
全国2010年10月高等教育自学考试C++程序设计试题及参考答案
全国2010年10月高等教育自学考试C++程序设计试题课程代码:04737一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.C++中注释“∥”的有效范围是( A )A.从“∥”开始到行尾B.从“∥”开始到下一个“∥”C.“∥”及其后一个字符D.从“∥”开始到程序尾2.假定MyClass为一个类,则该类的复制构造函数的声明语句为( C )A.MyClass&(MyClass x);B.MyClass(MyClass x);C.MyClass(MyClass &x);D.MyClass(MyClass *x);3.下列选项不是C++关键字的是()A.typedefB.voidC.boolD.inc4.用于标识十进制常量的前缀或后缀是()A.无前后缀B.后缀L或lC.前缀0D.前缀0x5.设int x=56;int r=x;若cout <<&x;显示0012FF7A,则cout <<&r;输出值为()A.56B.00l2FF7AC.0012FF7BD.未知6.使用下列哪个流格式控制符可设置转换基数为八进制()A.decB.octC.hexD.endl7.C++中是否允许在类结构中定义函数()A.不允许B.允许C.仅允许定义构造函数D.只不允许定义构造函数8.设函数void subone(int &)将形参减1,如有整型变量int k=10,则执行subone(k);后,k的值为()A.9B.10C.11D.未知9.对函数int max(int a,int b=0,int c=0,int d=0,int e=0);下列调用方式正确的是()A.int m=max(10,11,12,13,14);B.int m=max(10,,12,13,14);C.int m=max(10,1l,,13,14);D.int m=max(10,11,12,,14);10.类MyClass的定义如下:class MyClass{public:MyClass(){}MyClass(int i){value=new int(i);}int * value;};若要对value赋值,则下面语句正确的是()A.MyClass my;my.value=10;B.MyClass my;*my.value=10;C.MyClass my;my.*value=10;D.MyClass my(10);11.包含哪种语句的函数不能声明为内联函数()A.变量定义B.if……elseC.位操作D.switch12.声明函数模板的关键字是()A.inlineB.templateC.constD.short13.对于类中的成员,使用public修饰,表明该成员的访问权限是()A.公有的B.私有的C.保护的D.不可见的14.一个类中是否可以允许一个无参数构造函数和一个全部都是默认参数的构造函数共存()A.不允许B.允许C.无法确定D.视构造函数的函数,可确定15.析构函数的参数个数为()A.0个B.1个C.至少1个D.多于1个16.非静态成员函数都会有一个隐含指针,它是()A.self指针B.this指针C.current指针D.one指针17.下列访问公有静态成员的方式,错误的是()A.类名::静态成员名B.对象名.静态成员名C.对象指针->静态成员名D.对象指针.静态成员名18.声明友元使用下列哪个关键字()A.class B.constC.friend D.virtual19.派生类继承了基类的()A.所有成员B.部分成员C.数据成员D.成员函数20.基类private成员,通过public派生,其在派生类中为()A.private B.protectedC.public D.不可访问二、填空题(本大题共20小题,每小题1分,共20分)请在每小题的空格中填上正确答案。
2010年自学考试高级语言程序设计习题汇总
(2)离体实验(in vitro):
从活着的或刚被处死的动物体 内取出某一器官或分离某种细胞, 将它们置于一个类似于体内的人工 环境中,在一定时间内保持其正常 的生理功能,观察它们的功能活动
及影响因素。
优点:排除无关因素的影响,易于分析结果;
缺点:不能完全代表正常机体的真实情况。
2.机体稳态的维持主要通过: ( ) A. 神经调节 B.体液调节 C.自身调节
D.正反馈
E.负反馈
3.神经调节的基本方式是: ( )
A.反射
B.反应
C.适应
D.正反馈
E.负反馈
4.对神经调节特点的叙述,正确的是( )
A.调节幅度小
B.调节的敏感性差
C.作用范围广,而且持久
D.作用范围局限,而且反应较慢 E.反应迅速、准确和短暂
生殖是人类得以繁殖后代、延续种系的基本生 命特征。
第三节 人体与环境
一、内环境和稳态
(一)体液和体液的分布
体液:约占体重的60%。
细胞内液:约2/3,约占体重40%。
细胞外液:约1/3,约占体重20%。 组织液:约3/4,约占体重15%。 血 浆:约1/4,约占体重5%。
(二)内环境
外环境:机体整体直接接触的环境,包括自然 环境和社会环境。
▪ 只有认识正常规律,才能 正确认识疾病。
▪ 一门重要的基础医学理论 课程 ,承前启后。
生理学特点
是形态学转入机能学的第一门学科
▪ 形态学科:强调记忆、形象思维; ▪ 机能学科:强调理解、逻辑思维。
理解记忆,及时复习,实验巩固
本章要求
① 掌握内环境、稳态、反馈、负反馈的概念;熟悉新 陈代谢、兴奋性、反射、正反馈、前馈概念;
自学考试高级语言程序设计历年真题和答案
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的定义形式为____________。
2012年10月高等教育自学考试全国统一命题考试《高级语言程序设计(一)》试卷
2012年10月高等教育自学考试全国统一命题考试《高级语言程序设计(一)》试卷(总分:100.00,做题时间:150分钟)一、课程代码:00342 (总题数:15,分数:30.00)1.下列为C语言保留字的是(分数:2.00)A.auto √B.ElseC.FILED.define解析:在C语言中有特殊含义的单词称为“保留字”,也称为“关键字”,主要用于构成语句,所有的保留字均由小写字母组成。
2.正确的C语言常数是(分数:2.00)A.e0B.1eC.1E0 √D.1 E0.0解析:实型常量只用十进制,指数形式的实数由尾数部分、小写字母e或大写字母E、指数部分组成,形如:尾数E指数。
C语言语法规定,字母e或E之前必须要有数字,且e或E后面的指数必须为整数。
3.设int n;,执行表达式(n=0)||(n=1)||(n=2)||(n=3)后,n的值是(分数:2.00)A.0B.1 √C.2D.3解析:逻辑或的结合性是自左向右,只要有一个对象为非0,则表达式为1,即为真。
而且非0对象后的表达式不再运算,因此运算完(n=1),其后的表达式都不再运算,n=1。
4.值为0的表达式是(分数:2.00)A.0= =0B.2&&5C.!5<2D.2&5 √解析:A项中,0==0为真,表达式值为1;B项中,2&5值为1;C项中,!5为0,!5<2为真,表达式值为1;D项中,对2和5进行二进制变换分别为00000010和000000101,然后按位取与运算,结果为00000000,化为十进制为0。
5.先执行循环体后判断循环条件的语句是(分数:2.00)A.forB.whileC.do-while √D.for,while和do-while解析:while型和for型循环结构是先判断循环条件再执行循环体;而do-while结构是先执行do后面的循环体,再通过while中的条件判断是否退出循环。
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分)请在每小题的空格中填上正确答案。
2010年自学考试《高级语言程序设计》习题(20200618185907).pdf
cin>>n;
for(i=1;i<=n;i++)
{if(i!=n) { for(j=1;j<=n-i;j++) cout<<" "; if(j==n-i+1) cout<<a; for(j=n-i+2;j<n+i-1;j++)
cout<<" "; if(j==n+i-1) cout<<a; cout<<endl; } else
1. 编写函数输出以下形状的图形,其中构成图形的符号和输出的行数通过参数传送。
#
##
##
#
#
#########
#include<iostream.h>
void main()
{int n,i,j,m;char a;
cout<<"please input a sign.";
cin>>a;
cout<<"p语言程序设计( C++ )》练习题 根据程序功能填空。(每空 2 分,共 20 分) 1.本程序按以下公式计算 e 的值,精度为 1e-6。
#include<iostream.h> void main() { double e,t,n;
e=0; t=n==1____(1)_____;
while(___t>1e-6__(2)_____) { e+=t;
*s2=___*s1+49__(6)_____; else *s2=toupper(*s1); ____*s1++_(7)_____ } *s2='\0';
高等教育自学考试高级语言程序设计试题九套
全国2010年1月高等教育自学考试高级语言程序设计(一)试题课程代码:00342一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1. 下列不属于保留字的是(C )A. defaultB. registerC. sructD. unsign2. 下列不能作为常量的是(A )A. 0582B. 0xa5C. ’\n’D. 2.5e-23. 设typedef long class;,则class是(C )A. 整型变量B. 长整型变量C. 长整型数据类型的新标识符D. 新的而非长整型数据类型的标识符4. 设char c=’A’;int i=l, j;,执行j=!c&&i++;后,i和j的值分别是( C)A. 1和0B. 1和1C. 2和0D. 2和l5. 设int a;,执行表达式(a=1,2,3),a+1后,a和表达式的值分别是(A )A. 1和2B. 2和3C. 3和4D. 4和56. 下列关于函数定义正确的是(D )A. fun(int x,y){int z;return z;}B. void fun(int x,int y){return x+y;}C. fun(x,y){int x,y;double z;z=x+y;return z;}D. double fun(int x,int y) {double z;z=x+y;return z;)7. 下列用户自定义标识符正确的是(B )A. 4aB. b_1C. -&D. *p8. 下列程序段中循环体执行的次数是(B )int x=-1;do{x=x*x;}while(! x);A. 0B. 1C. 2D. 无限9. 实现字符串连接的系统函数名是(A )A. strcatB. strcmpC. strcpyD. strlen10. 若实参是一个数组名,在调用函数时,实参向形参传递的是(B )A. 数组的长度B. 数组的首地址C. 数组每个元素的值D. 数组每个元素的地址11. 设int a[ ][4]={l,2,3,4,5,6,7};,则a[1][3]的值是(A )A. 0B. 3C. 4D. 712. 若定义一个只限本源文件使用的全局变量,则该变量的存储类别是(C )A. externB. registerC. staticD. auto13. 设chark=’a’;float j=2.0;,执行k+=5/j;printf(“%c”,k);后,输出结果是(C )A. aB. bC. cD. d14. 下列程序段正确的是(D )A. char s[ ]={‘xyz’};scanf(‘‘%s”,s);B. float*p,i;p=*p+i;C. char s[5]=‘word’;puts(s);D. int a[5]={0},*p=a;*p=*(p+1);15. 关于编译预处理命令,叙述正确的是(A )A. 预处理命令都以“#”开头B. 预处理命令必须位于程序的首部C. 预处理命令只能实现宏定义和条件编译的功能D. 每个程序必须在开头使用预处理命令#include<stdio. h>二、填空题(本大题共10小题,每小题2分,共20分)请在每小题的空格中填上正确答案。
全国自考高级语言程序设计(一)精选试题及答案
全国自考高级语言程序设计(一)精选试题及答案总分:140分题量:41题一、单选题(共20题,共40分)1.下列保留字中用于构成循环结构的是()A.ifB.whileC.switchD.default正确答案:B本题解析:暂无解析2.与语句if(a>b)if(c>d)x=1;elsex=2;等价的是()A.if(a>b){if(c>d)x=1;elsex=2;}B.if(a>b){if(c>d)x=1;}elsex=2;C.if((a>b)&&(c>d))x=1;elsex=2;D.if(ad)x=1;正确答案:A本题解析:暂无解析3.设charx='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=a正确答案:D本题解析:暂无解析4.设inta[][4]={1,2,3,4,5,6,7,8,9};则数组a的第一维的大小是()A.2B.3C.4D.无确定值正确答案:B本题解析:暂无解析5.执行下列程序后输出的结果是()A.0B.1C.2D.3正确答案:D本题解析:暂无解析6.设charstr[100];inti=5;则引用数组元素的错误形式是()A.str[i+10]B.*(str+i)C.*(str+i-1)D.*((str++)+i)正确答案:D本题解析:暂无解析7.设intx[]={1,2,3,4,5,6},*p=x;则值为3的表达式是()A.p+=2,*++pB.p+=2,*p++CC.p+=3,*pD.p+=2,++*p正确答案:B本题解析:暂无解析8.在函数内,定义变量时存储类型符可省略的是()A.autoB.staticC.externD.register正确答案:A本题解析:暂无解析9.执行下列程序后输出的结果是()A.3,4B.11,1C.11,4D.11,6正确答案:C本题解析:暂无解析10.设有定义语句A.2.5B.2.0C.8.0D.8.4正确答案:D本题解析:暂无解析11.设有定义语句:enumt1{a1,a2=7,a3,a4=15}time;则枚举常量a2和a3的值分别为()A.1和2B.2和3C.7和2D.7和8正确答案:D本题解析:暂无解析12.将一个整数10002存到磁盘上,以ASCII码形式存储和以二进制形式存储,占用的字节数分别是()A.2和2B.2和5C.5和2D.5和5正确答案:C本题解析:暂无解析13.在文件使用方式中,字符串'rb'表示()A.打开一个已存在的二进制文件,只能读取数据B.打开一个文本文件,只能写入数据C.打开一个已存在的文本文件,只能读取数据D.打开一个二进制文件,只能写入数据正确答案:A本题解析:暂无解析14.执行下列程序()后输出的结果是()A.3B.3.5C.14D.7.5正确答案:A本题解析:暂无解析15.main()函数可以带两个形参,一般分为argc和argv,其中argv可以定义为()A.intargvB.char*argv[];C.charargv[];D.char**argv[];正确答案:B本题解析:暂无解析16.C语言程序编译时,程序中的注释部分()A.参加编译,并会出现在目标程序中B.参加编译,但不会出现在目标程序中C.不参加编译,但会出现在目标程序中D.不参加编译,也不会出现在目标程序中正确答案:D本题解析:暂无解析17.下列表达式的值为0的是()A.3%5B.3/5.0C.3/5D.3正确答案:C本题解析:暂无解析18.正确的C语言用户自定义标识符是()A.printB.floatC.when?D.random%2正确答案:A本题解析:暂无解析19.设inta=3;则表达式a<1&&--a>1的运算结果和a的值分别是()A.0和2B.0和3C.1和2D.1和3正确答案:B本题解析:暂无解析20.下列叙述中,正确的是()A.引用带参的宏时,实际参数的类型应与宏定义时的形式参数类型相一致B.宏名必须用大写字母表示C.宏替换不占用运行时间,只占编译时间D.在程序的一行上可以出现多个有效的宏定义正确答案:C本题解析:暂无解析二、填空题(共18题,共70分)21.表达式a=1,a+=1,a+1,a++的值是____________。
2010年10月全国自考高级语言程序设计(一)真题及参考答案
全国2010年10月高等教育自学考试高级语言程序设计(一)试题课程代码:00342一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.用户自定义标识符正确的是( )A.3abB.intC.fa2_aD.sin(x)2.关于C语言程序描述正确的是( )A.函数必须要有return语句B.主函数必须位于程序的开头C.程序中每行只能写一条语句D.一个程序中只能有一个主函数3.设int i=8,a,b;double x=1.42,y=5.2;,正确的表达式是( )A.a+=(b=4)*(a=3)B.a=a*3=2C.x%(-3)+y* *3D.y=float(i)4.设int a[][2]={1,2,3,4,5,6,7};,其中缺省的行长度的最小值是( )A.2B.3C.4D.55.设char c='A';int i=1,j;,执行语句j=!c&&i++;后,i和j的值分别是( )A.0和1B.1和0C.1和65D.2和666.设typedef char STRING[255];STRING*s;,则s是( )A.字符数组B.字符变量C.字符指针数组D.字符指针变量7.设int x=6;,执行语句X+=X-=X*X;后,x的值是( )A.-60B.0C.6D.368.设int i=3,j=3;,表达式i+++j的值是( )A.6B.7C.8D.99.下列为C语言保留字的是( )A.realB.longC.pointerD.integer10.设int a=2,b=6,c=8;,表达式(a,b),(c,10)的值是( )A.2B.6C.8D.1011.变量定义并初始化正确的是( )A.int a=l,*p=a;B.int a=2,p=*a;C.int a=3,p=&a;D.int a=4,*p=&a;12.使用递归函数计算n!(n=0,1,2,,3,....)的是( )A. fac(int n)B. fac(int n){int i,f=- 1; {if(n==0) return 1; if(n==0‖n==1) return 1;else for(i=1 ;i<=n;i++) f*=i; else return n*fac(n-1);return f; }C. fac(int n)D. fac(int n){int i=l,f=l; {int i=1,f=1;if(n==0) return l; if(n==0) return 1;else while(i<=n) f*=i++; else do { f*=i;}while (i++<n)return f; return f;} }13.设struct{int age;int num;}stu,*p=&stu;对结构型变量stu的成员age引用错误..的是( )A.stu.ageB.p->ageC.*p.ageD.(*p).age14.设int a[2]={1,2},*p=a;,则*p是( )A.元素a[0]的值B.元素a[0]的地址C.元素a[1]的值D.元素a[1]的地址15.设int a[10];,对数组元素引用正确的是( )A.a[10]B.a['0']C.a(6)D.a[10-10]二、填空题(本大题共10小题,每小题2分,共20分)请在每小题的空格中填上正确答案。
最新10月全国自学考试高级语言程序设计(一)试题及答案解析
全国2018年10月自学考试高级语言程序设计(一)试题课程代码:00342一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.主函数头中的“main”是( )A.保留字B.函数名C.变量名D.类型名2.下列运算符中优先级最高的是( )A.?:B.&&C.D.!3.设static int a;,执行表达式(a= =1)&&(a=-1)&&(a=2)后,a的值是( )A.-1B.0C.1D.24.设int a,b;,与a+=b++;等价的是( )A.a=b++;B.a=++b;C.a=a+b++;D.a=a+++b;5.关于宏定义命令,叙述正确的是( )A.在程序编译前进行宏替换B.在程序编译时进行宏替换C.在程序编译后进行宏替换D.在程序运行时进行宏替换6.下列表达式值为0的是( )A.5/2B.2&&5C.!25D.2&57.对循环结构正确的叙述是( )A.do-while循环体可能被执行0次B.do-while循环体至少被执行1次C.while循环体不可能被执行0次D.for循环体不可能被执行无限次8.下列数组定义并初始化正确的是( )A.int s[]=(1,2,3,4,5);B.int s[5]=1,2,3,4,5;C.int s[2+3]={1,2,3};D.int s(5)={1,2,3};9.设char s[10];,能将字符串“+-*/”正确输入的语句是( )A.scanf(“%s”,s);B.scanf(“%s”,*s);C.scanf(“%s”,s[0]);D.scanf(“%s”,s[10]);10.对于C语言中的函数,正确的叙述是( )A.两个函数可以相互调用,但不能自己调用自己B.程序执行可以始于任何一个函数,但结束必须在主函数C.两个函数既可以定义成并列关系又可以定义成嵌套关系D.一个C程序可以由多个文件组成,一个文件又可以由多个函数组成11.设int m[5],*p=m;,与元素m[5],*p=m;,与元素m[2]等价的是( )A.m+2B.*m+2C.*(p+2)D.*p+212.设int a[3][3]={{1,2,3},{4,5},{6}};,元素a[1][2]的值是( )A.0B.1C.4D.613.设typedef int ARR[10];,与ARRa,*b;等价的定义是( )A.int a,b;B.int a,*b;C.int a[10],*b;D.int a[10],*b[10];14.设int n,p=0;,与语句if(n!=0)p=1;等价的是( )A.if(n)p=1;B.if(n=1)p=l;C.if(n!=1)p=1;D.if(!n)p=l;15.文件使用方式“rb+”的含义是( )A.对文本文件只读B.对文本文件读和写C.对二进制文件读和写D.对二进制文件只写二、填空题(本大题共10小题,每小题2分,共20分)请在每小题的空格中填上正确答案。
全国2010年10月自考工学类真题发布
指针,引用与动态内存分配思考题1.什么是地址,什么是地址中的内容,两者的区别是什么?2.运算符“&”和“*”各有几种用法?各自的使用方式以及使用含义是什么?3.什么是指针?地址和指针有什么样的关系?4.如下3处出现的*pi的使用含义有什么不相同吗?int i=23, *pi=&i;cout<<*pi;*pi=56;5.指针的值和类型是怎样规定的?指针的值与其他类型变量的值是否有区别?6.假设程序中有“int a[20];int *pa=a;”的说明,要表示数组元素a[i]时(0≤i≤19),有几种方法可以使用呢?7.指针可以进行哪些运算?和普通数据类型的运算有什么不同?8.假设程序中有“int a[10],b[10][10];”的说明,请问数组名a以及b[i]都与地址及指针有某些关系吗(0≤i≤9)?a[i]与b[i]的使用含义相同吗?a+1与b+1的含义有什么不同?a[2]+1与b[2]+1的使用含义相同吗?9.下面按9种不同方式所定义的p有什么区别与联系?如何对每一种p进行使用?int p; int *p; int **p;int p[10]; int *p[10]; int (*p)[10];int p(); int *p(); int(*p)();10.在“2.4.1 主函数”一节中,给出过带参数的main函数的如下一般使用格式:void main(int argc, char * argv[]){…}你能细致地描述参数argv所表达的数据结构吗?11.试述指针在函数的参数传递中的作用及其使用方法。
指针参数与数组参数是否有某种形式的关联?12.怎样使用动态分配运算符new来生成无名的动态变量以及无名的动态数组?如何对这种动态变量及动态数组进行使用?如何使用delete来配合new释放上述的动态存储空间?13.什么是引用?引用和指针的区别是什么?引用型参数具有哪些优点?14.引用型的函数返回值与非引用型的函数返回值是否有某些不相同?15.如何定义结构类型?如何说明与使用结构变量及其分量?结构与数组的定义与使用有哪些异同?16.假设某结构的分量中含有指向本结构的指针(如下面的person结构类型),请问如何通过使用new及某些相关步骤来生成一个链表呢?struct person {...person * next;};17.在上一题person结构类型的基础上,如下的程序“构架”是否可以用来实现生成一个具有n个项的链表(而总将新链表项加入到当前已有链表的末尾)?person *head, *tail, *temp;//head指向链表首项,tail指向末项tail = head = NULL; //使head及tail均指向“空”,表示空链表for(i=0; i<n; i++){ //形成一个具有n个项的链表temp=new person; //生成一个person型的动态新表项temp->next=NULL; //新表项将充当链表末项,将其next域置为NULL... //如,通过cin输入(*temp)结构(变量)的其它各分量之值等 if(head==NULL)head=tail=temp; //链表为空时,新表项既为首项又为末项else { //链表非空时tail->next=temp; //新表项加入到原链表的末项之后tail=temp; //新表项成为链表的新末项}} //i循环体结束18.在C++语言中使用指针有哪些优点?指针在程序安全方面是否会有负面影响?练习题1.读程序写结果。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
全国2010年10月高等教育自学考试高级语言程序设计(一)试题课程代码:00342一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.用户自定义标识符正确的是( C )A.3abB.intC.fa2_aD.sin(x)2.关于C语言程序描述正确的是( D )A.函数必须要有return语句B.主函数必须位于程序的开头C.程序中每行只能写一条语句D.一个程序中只能有一个主函数3.设int i=8,a,b;double x=1.42,y=5.2;,正确的表达式是( A )A.a+=(b=4)*(a=3)B.a=a*3=2C.x%(-3)+y* *3D.y=float(i)4.设int a[][2]={1,2,3,4,5,6,7};,其中缺省的行长度的最小值是( C )A.2B.3C.4D.55.设char c='A';int i=1,j;,执行语句j=!c&&i++;后,i和j的值分别是( B )A.0和1B.1和0C.1和65D.2和666.设typedef char STRING[255];STRING*s;,则s是( C )A.字符数组B.字符变量C.字符指针数组D.字符指针变量7.设int x=6;,执行语句X+=X-=X*X;后,x的值是( A )A.-60B.0C.6D.368.设int i=3,j=3;,表达式i+++j的值是( A )A.6B.7C.8D.99.下列为C语言保留字的是( B )A.realB.longC.pointerD.integer10.设int a=2,b=6,c=8;,表达式(a,b),(c,10)的值是( D )A.2B.6C.8D.1011.变量定义并初始化正确的是( D )A.int a=l,*p=a;B.int a=2,p=*a;C.int a=3,p=&a;D.int a=4,*p=&a;12.使用递归函数计算n!(n=0,1,2,,3,....)的是( B )A. fac(int n)B. fac(int n){int i,f=- 1; {if(n==0) return 1; if(n==0‖n==1) return 1;else for(i=1 ;i<=n;i++) f*=i; else return n*fac(n-1);return f; }C. fac(int n)D. fac(int n){int i=l,f=l; {int i=1,f=1;if(n==0) return l; if(n==0) return 1;else while(i<=n) f*=i++; else do { f*=i;}while (i++<n)return f; return f;} }13.设struct{int age;int num;}stu,*p=&stu;对结构型变量stu的成员age引用错误..的是( C )A.stu.ageB.p->ageC.*p.ageD.(*p).age14.设int a[2]={1,2},*p=a;,则*p是( A )A.元素a[0]的值B.元素a[0]的地址C.元素a[1]的值D.元素a[1]的地址15.设int a[10];,对数组元素引用正确的是( D )A.a[10]B.a['0']C.a(6)D.a[10-10]二、填空题(本大题共10小题,每小题2分,共20分)请在每小题的空格中填上正确答案。
错填、不填均无分。
16.执行语句printf("%d\n",strlen("a\n\x41"));后,输出结果是 3 。
17.设int a,b,c;,表达式a=2,b=5,b++,a+b的值是8 。
18.设int a=1,b=2,m=2,n=2;,执行表达式(m=a<b)||++n后,n的值是 2 。
19.设int x=4,y=2;,表达式x<y?y:x++的值是 4 。
20.执行下列程序段后,输出结果是 1 -2 。
int x=3;do{printf("%5d",x-=2);}while(!(--x));21.执行语句for(i=10;i>0;i--);后,变量i的值是0 。
22.设int x,y;,循环语句for(x=0,y=0;(y!=10)&&(x<5);x++);执行的次数是 5 。
23.若函数内定义变量的存储类别是static,该变量被称为内部静态变量。
24.设int x=3;,执行语句printf((x%2)?("**%d\n"):("##%d\n"),x);后,输出结果是**3 。
25.设char s[3]="AB",*p=s;,则*(p+2)的值是0 。
三、程序分析题(本大题共4小题,每小题4分,共16分)阅读下列程序,将输出结果写到各题右侧的空白处。
26.void main( ){int i=0,j =0,k=0;while (i< 10) i++;while (j++<l 0);while (++k<l 0); 10 11 10printf ("i=%d,j=%d,k=%d\n",i,j,k);}int a;fun(int i){a+=2*i;return a;}void main( ){int a=10;printf("%d,%d\n",fun(a),a); 20 10}28.void main( ){int a=0, b=0, d=0;char *s="xcbc3abcd";for(; *s!= ‘\0’; s++)switch(*s){case ‘a’: a++; break;case ‘b’: b++; break;default: d++;}printf("a=%d,b=%d,d=%d\n",a,b,d); 1 2 6}29.#define M 2<3 ? 5:6void main( ){int i=3, j, k;j=i+M;k=i+(M);printf ("%d, %d\n", j, k); 6 8}四、程序填充题(本大题共3小题,每小题6分,共18分)请将下列程序横线处缺少的部分补上,使其能正确运行。
30.键入数据至二维数组,求出其中的最大值、最小值及所有元素之和。
void main( ){int i,j;int a[3][4],max, min, sum=0;for(i=0;i<3 ;i++)for(j =0 ;j <4 ;j ++) scanf("%d", ); /*第一空*/max=min=a[0][0];for(i=0;i<3 ;i++)for(j =0 ;j <4 ;j ++){sum = ;/*第二空*/if(a[i] [j]>max) max=a[i] [j];if(a[i] [j]<min) min=a[i][j];}printf("max=%d,min=%d,sum=%d\n", );/*第三空*/}31.将26个小写英文字母中的元音字母(a,e,i,o,u)写入到文件vo.txt 中。
#include"stdio.h"void main( ){char ;/*第一空*/FILE *fp ;fp=fopen("vo.txt","w");for(ch=‘a ’;ch<=‘z ’;ch++)if( )fputc(ch,fp);/*第二空*/;/*第三空*/}32.根据迭代公式)(21001x a x x +=,求a 的平方根(精度要求01x x -<10-6)。
#define EPS 1E-6#include /*第一空*/void main( ){float a,x0,x1=1.0;scanf("%f",&a);do{x0=x1;x1= ;/*第二空*/}while(fabs(x1-x0)>= );/*第三空*/printf("sqrt=%.6f \n",x1);}五、程序设计题(本大题共2小题,每小题8分,共16分)33.从键盘输入三条边a 、b 和c ,若能构成三角形则输出其面积,否则输出不能构成三角形的提示信息“No triangle”。
三角形面积计算公式))()((c s b s a s s area ---=其中:s =(a +b +c )/2。
34.(1)编写一个函数change( )实现两个实型变量的值交换;(2)写出主函数,从键盘上输入两个数,然后调用函数change()交换两个实型数的值并输出。