高级语言程序设计复习资料.docx

上传人:b****8 文档编号:9130846 上传时间:2023-02-03 格式:DOCX 页数:34 大小:26.97KB
下载 相关 举报
高级语言程序设计复习资料.docx_第1页
第1页 / 共34页
高级语言程序设计复习资料.docx_第2页
第2页 / 共34页
高级语言程序设计复习资料.docx_第3页
第3页 / 共34页
高级语言程序设计复习资料.docx_第4页
第4页 / 共34页
高级语言程序设计复习资料.docx_第5页
第5页 / 共34页
点击查看更多>>
下载资源
资源描述

高级语言程序设计复习资料.docx

《高级语言程序设计复习资料.docx》由会员分享,可在线阅读,更多相关《高级语言程序设计复习资料.docx(34页珍藏版)》请在冰豆网上搜索。

高级语言程序设计复习资料.docx

高级语言程序设计复习资料

一、简答题(10选2,每题5分)

1.简要叙述指针为函数参数的使用方法。

2.简要叙述结构体特点。

3.简述机器语言、汇编语言和高级语言。

4.简述C语言的特点。

5.简述C语言程序的编辑、编译与运行。

6简述程序设计语言的分类、高级语言及其分类。

7.简述C语言的发展简史。

8.简要列举C语言中的常用表达式。

9.简要叙述break语句与continue语句的区别。

10.冯洛伊曼体系结构图

二、填空题(10个空每空2分)

1.程序运行过程中,其值保持不变的量称为;为了提高程序的可读性与易维护性,可以用宏替换给常量命名。

程序运行过程中,其值可以改变的量称为。

2.程序的三种基本结构是:

结构、结构、结构。

3.数组是一组、的变量,数组中的变量称为。

数组名本质上是,它是数组的首地址即数组第一个元素的地址。

4.函数是具有相对独立功能的。

函数定义中的参数称为参数,函数调用中的参数称为参数。

函数的数据类型是函数返回值的数据类型;无返回值时,函数的数据类型为。

函数直接或间接调用自身称为调用。

5.计算机内存单元的称为地址,存放地址的变量称为变量。

6.结构是一组、的变量,结构中的变量称为。

7.标识符由、、组成,以或开头,字母区分大小写;不能用作标识符。

8.通过变量名访问变量,称为变量的访问。

通过变量的地址访问变量,称为变量的访问。

9.字符型常量是一对括起的单个字符,字符串常量是一对括起的一串字符。

10.在C语言中,文件可以用___________和____________两种形式存取。

11.函数定义____________和_______________两部分组成。

12.设p是指向数组中某元素的指针变量,分别写出下列表达式的含义:

p++:

___________________________________________________________;

++p:

____________________________________________________________。

13.C标准函数库提供了丰富的输入输出函数,用户程序使用时需包含系统头文件_____________。

14.数组的下标从_______开始,数组的最大下标是________________。

15.()、=、&&的优先级顺序从高到低依次为__________________________。

16.任何一个计算机程序执行时的控制流程均可用三种基本结构表示:

_________、__________、__________。

17.变量的地址被称为__________,而存放地址数据的变量称为__________。

18.运行C程序的一般步骤:

____________、________________、______________、______________。

19.C标准函数库提供了常用的字符串处理函数,用户使用时需包含头文件____________。

三、单选题(每题2分10题,请大家考试时慎重答题)

1.以下正确的标识符是()。

A.%XB.a+bC.a123D.test!

2.C语言中的基本数据类型包括()。

A.整型、实型、逻辑型B.整型、实型、字符型

C.整型、字符型、逻辑型D.整型、实型、逻辑型、字符型

3.下面程序段所表示的逻辑关系是()。

if(a

elsex=2;

A.当ab时x=2

B.当a

C.当a≤b时x=1,当a>b时x=2

D.当a≥b时x=1,当a≠b时x=2

4.下列说法正确的是()。

A.while循环中,必须使用break语句跳出循环

B.while循环中,当循环条件为真时结束循环

C.while循环中,必须使用continue语句跳出循环

D.while循环中,当循环条件为假时结束循环

5.定义10个元素的整型数组a,应使用语句()。

A.inta[10]B.inta[2,5]C.inta[]D.int*a[10]

6.设有定义chars[10]="ABCDE",t[10]="xyz";则printf("%d",strlen(strcpy(s,t)));的输出是()。

A.6B.5C.4D.3

7.以下正确的说法是()。

A.函数定义不能嵌套,但函数调用可以嵌套

B.函数定义可以嵌套,但函数调用不能嵌套

C.函数定义和函数调用都可以嵌套

D.函数定义和函数调用都不能嵌套

8.已知double*p[6];它的含义是()。

A.p是指向double类型变量的指针

B.p是double类型数组

C.p是指针数组

D.p是数组指针

9.设变量i的值为3,i的地址为2000,使指针变量p指向i,则赋值正确的是()。

A.&i=3B.*p=3C.*p=2000D.p=&i

10.已知学生记录描述为:

structstudent{

intno;

charname[20];

charsex;

struct{

intyear,month,day;

}birth;

};

structstudents;

设变量s中的“生日”为1994年11月11日,下列对birth的正确赋值方式是()。

A.year=1994;month=11;day=11;

B.birth.year=1994;birth.month=11;birth.day=11;

C.s.year=1994;s.month=11;s.day=11;

D.s.birth.year=1994;s.birth.month=11;s.birth.day=11;

1.以下选项中属于C语言的数据类型是()。

A.复数型B.逻辑型C.双精度型D.集合型

2.已知字母A的ASCII是65,变量c是字符型,则执行语句c='A'+'6'-'3';后,c的值为()。

A.CB.DC.68D.不确定

3.下面程序段所表示的逻辑关系是()。

if(a

elsex=2;

A.当a

B.当a≤b时x=1,当a>b时x=2

C.当a

D.当a≥b时x=1,当a≠b时x=2

4.下列说法正确的是()。

A.do-while循环中,当循环条件为真时结束循环

B.do-while循环中,当循环条件为假时结束循环

C.do-while循环中,必须使用break语句跳出循环

D.do-while循环中,必须使用continue语句跳出循环

5.设有定义chars[12]="string";则printf("%d",strlen(s));的输出是()。

A.6B.7C.8D.9

6.在下述对C语言字符数组的描述中错误的是()。

A.字符数组可以存放字符串

B.字符数组中的字符串可以进行整体输入/输出

C.可以在赋值语句中通过赋值运算符“=”对字符数组整体赋值

D.字符数组的下标从0开始

7.以下正确的说法是()。

A.函数定义不能嵌套,但函数调用可以嵌套

B.函数定义可以嵌套,但函数调用不能嵌套

C.函数定义和函数调用都可以嵌套

D.函数定义和函数调用都不能嵌套

8.已知chars[10],*p=s;则在下列语句中,错误的语句是()。

A.p=s+5B.s=p+sC.s[2]=p[4]D.*p=s[0]

9.求数组inta[10]的首地址运算是()。

A.&a[10]B.a[0]C.&a[0]D.a[10]

10.当说明一个结构体变量时,系统分配给它的内存是()。

A.各成员所需内存量的总和

B.结构中第一个成员所需内存量

C.成员中占内存量最大者所需的容量

D.结构中最后一个成员所需内存量

1.C语言中字符型(char)数据在内存中的存储形式是()。

A.原码B.补码C.反码D.ASCII码

2.若已定义x和y为double型,则表达式x=1.0,y=3/2+x的值是()。

A.1.0B.1.5C.2.0D.2.5

3.C语言的运算符按运算对象的数目不同可以分为()。

A.单目运算符B.单目和双目运算符

C.单目、双目和三目运算符D.单目、双目、三目和四目运算符

4.下列说法正确的是()。

A.while循环中,当循环条件为真时结束循环

B.while循环中,当循环条件为假时结束循环

C.while循环中,必须使用break语句跳出循环

D.while循环中,必须使用continue语句跳出循环

5.已知:

inta[3][4];则对数组元素引用正确的是()。

A.a[2][4]B.a[1,3]C.a[1+1][0]D.a

(2)

(1)

6.若有以下语句,则正确的描述是()。

charx[]="12345";chary[]={'1','2','3','4','5'};

A.x数组和y数组的长度相同B.x数组长度大于y数组长度

C.x数组长度小于y数组长度D.x数组等价于y数组

7.下列函数中,字符串比较函数是()。

A.strcatB.strlenC.strcpyD.strcmp

8.已知函数定义如下:

f(char*s,char*t)

{

while(*s++=*t++);

}

函数f的功能是()。

A.串复制B.求串长C.串比较D.串反向

9.已知intx,则下面的定义指针变量p的语句正确的是()。

A.intp=&xB.int*p=xC.int*p=&xD.int*p=*x

10.已知学生记录描述为:

structstudent{

intno;

charname[20];

charsex;

struct{

intyear,month,day;

}birth;

};

structstudents;

设变量s中的“生日”应为1994年11月11日,下列对“生日”的正确赋值方式是()。

A.year=1994;month=11;day=11;

B.birth.year=1994;birth.month=11;birth.day=11;

C.s.year=1994;s.month=11;s.day=11;

D.s.birth.year=1994;s.birth.month=11;s.birth.day=11;

1.结构化程序设计所规定的三种基本控制结构是___________。

A.输入、处理、输出B.树形、网形、环形

C.顺序、选择、循环D.主程序、子程序、函数

2.以下叙述中正确的是__________。

A.构成C程序的基本单位是函数

B.可以在一个函数中定义另一个函数

C.main()函数必须放在其它函数之前

D.所有被调用的函数一定要在调用之前进行定义

3.以下选项中合法的用户标识符是__________。

A.longB.test1C.3DmaxD.A.dat

4.已知i、j、k为int型变量,若从键盘输入:

1,2,3<回车>,使i的值为1、j的值为2、k的值为3,以下选项中正确的输入语句是___________。

A.scanf(%2d%2d%2d,&i,&j,&k);

B.scanf(%d%d%d,&i,&j,&k);

C.scanf(%d,%d,%d,&i,&j,&k);

D.scanf(i=%d,j=%d,k=%d,&i,&j,&k);

5.以下c语言函数声明中,不正确的是__________。

A.voidfun(intx,inty);B.fun(intx,inty);

C.intfun(intx,y);D.char*fun(char*s);

6.C语言中while和do-while循环的主要区别是____________。

A.do-while循环体至少要无条件执行一次。

B.while循环比do-while循环控制条件严格。

C.do-while允许从外部转到循环体内。

D.do-while的循环体不能是复合语句。

7.变量的指针,其含义是指该变量的_____________。

A.值B.地址C.名D.一个标志

8.假设指针p已经指向某个整型变量m,则*p相当于______________。

A.&mB.&pC.mD.*m

9.若x=2,y=3则x&y的结果是________________。

A.0B.2C.3D.5

10.设有定义intx=1;inty=‘a’<‘A’?

x--:

x++;,则变量y的值是___________。

A.0B.2C.1D.3

1.要把高级语言编写的源程序转换为目标程序,需要使用____________。

A.编辑程序B.驱动程序C.诊断程序D.编译程序

2.英文小写字母d的ASCII码为100,英文大写字母D的ASCII码为____________。

A.50B.66C.52D.68

3.设a和b均为double型常量,且a=5.5、b=2.5,则表达式(int)a+b/b的值是__________。

A.6.500000B.6C.5.500000D.6.000000

4.表达式1&&3&&5的值为_____________。

A.1B.3C.5D.7

5.下列选项中,不合法的C语言关键字是______________。

A.autoB.defaultC.staticD.var

6.C语言允许函数值缺省定义,此时该函数值隐含的类型是______________。

A.floatB.intC.longD.double

7.若x=5,则x*=x+2的值为________________。

A.35B.12C.7D.25

8.以下运算符中,运算对象必须是整型的是_____________。

A./B.%C.!

D.〈

9.若有定义:

inta[10];则对a数组元素的正确引用是_____________。

A.a[10]B.a[15]C.a[7]D.a(5)

10.设有定义intx=2;inty=‘a’<‘A’?

x--:

x++;,则变量y的值是___________。

A.0B.2C.1D.3

 

四、判断题(每题2分10题,请大家考试时慎重答题)

1.C变量必须先定义(声明),后使用。

()

2.C语言不允许混合类型数据间进行运算。

()

3.模运算符%要求运算对象必须是实型。

()

4.多个变量定义时赋初值可以写成:

inta=b=c=3。

()

5.逗号运算符的优先级最低。

()

6.若x是双精度型变量,赋值x=10后,则x中存放的是整型数。

()

7.switch语句中可使用break语句和continue语句。

()

8.switch语句中的case表达式可以是任意类型的表达式。

()

9.C程序总是从main函数开始执行,因此main函数必须是第一个函数。

()

10.函数必须有返回值,否则不能定义成函数。

()

3.自增运算符(++)或自减运算符(--)的运算对象是变量,而不能是常量或表达式。

()

4.多个变量定义时赋初值可以写成:

inta=b=c=3。

()

5.逗号运算符的优先级最低。

()

6.若a是浮点型变量,赋值a=100后,则a中存放的是整型数。

()

7.switch语句中的case表达式可以是任意类型的表达式。

()

8.break语句只能用于循环语句。

()

9.C程序总是从第一个函数开始执行,执行完最后一个函数后,程序结束。

()

10.调用函数时,只能把实参的值传递给形参,形参的值不能传递给实参。

()

1.C语言源程序文件通过了编译、连接之后生成一个后缀为.EXE的文件。

()

2.在C程序中函数既可以嵌套定义,也可以嵌套调用。

()

3.在C程序中APH和aph代表不同的变量。

()

4.表达式0195是一个八进制整数。

()

5.Continue语句的作用是结束本次循环。

()

6.可以将一个整数赋给一个指针变量。

()

7.C语言中字符串的结束符是’\0’。

()

8.do-while的循环体至少无条件执行一次。

()

9.C程序总是从main()函数的第一条语句开始执行的。

 ()

10.数组名代表数组的首地址。

()

1.在对一个C程序进行编译的过程中,不能发现注释中的拼写错误。

()

2.在C程序中,main函数必须位于程序的最前面。

()

3.printf()函数总是从新行的起始位置开始打印。

()

4.C语言认为变量number和NuMbEr是不相同的。

()

5.在C程序中,无论是整数还是实数都能被准确无误地表示。

()

6.switch选择结构中必须有default子句。

()

7.如果x>y或ay&&a

()

8.若有intⅰ=10,j=0;则执行完语句if(j=0)ⅰ++;elseⅰ--;ⅰ的值为11。

()

9.函数的定义不可以嵌套,但函数的调用可以嵌套。

()

10.inti,*p=&i;是正确的C语言的说明。

()

五、程序阅读(每题2分5题)

1.以下程序的运行结果为。

#include

voidmain(void)

{

intx=10,y=62,z;

z=x>y?

x:

y;

printf("z=%d\n",z);

}

2.以下程序的运行结果为。

#include

voidmain(void)

{

ints=0,i;

for(i=1;i<=10;++i)s=s+i;

printf("sum=%d\n",s);

}

3.以下程序的运行结果为。

#include

#include

voidmain(void)

{

chars[80]="Wuhan",t[]="businessuniversity";

strcat(s,t);

printf("%s,%d\n",s,strlen(s));

}

4.以下程序的运行结果为。

#include

voidf(int);

voidmain(void)

{

intx=10;

f(x);

printf("x=%d\n",x);

}

voidf(intx)

{

x=20;

}

5.以下程序的运行结果为。

#include

voidmain(void)

{

inta[10]={1,2,3,4,5,6,7,8,9,10},*p;

p=&a[0];

p=p+3;

printf("%d\n",*p);

}

1.以下程序的运行结果为。

#include

voidmain(void)

{

inta,b,x;

x=(a=3,b=a--);

printf("x=%d,a=%d,b=%d\n",x,a,b);

}

2.以下程序的运行结果为。

#include

voidmain(void)

{

intf=1,i;

for(i=1;i<=5;++i)f=f*i;

printf("factorial=%d\n",f);

}

3.以下程序的运行结果为。

#include

#include

voidmain(void)

{

chars[80]="Wuhan",t[]="businessuniversity";

strcat(s,t);

printf("%s,%d\n",s,strlen(s));

}

4.以下程序的运行结果为。

#include

voidmain(void)

{

intn,i,a=1,b=1,c;

for(i=0;i<10;++i){

printf("%-6d",a);

c=a+b;

a=b;

b=c;

}

printf("\n");

}

5.以下程序的运行结果为。

#include

voidf(int);

voidmain(void)

{

intx=10;

f(x);

printf("x=%d\n",x);

}

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 医学

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

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