奥鹏南开《C语言程序设计》复习资料 联系客服

发布时间 : 星期二 文章奥鹏南开《C语言程序设计》复习资料更新完毕开始阅读b8303eecdc88d0d233d4b14e852458fb760b3802

★一个源程序文件由一个或多个什么组成(B) A. 语句 B. 函数 C. 程序块 D. 子程序

☆以下叙述中错误的是(B)

A. 变量的作用域取决于变量定义语句出现的位置

B. 同一程序中,全局变量的作用域一定比局部变量的作用域大

C. 局部变量的作用域是在定义它的函数体内 D. 全局变量的作用域是从定义位置开始至源文件结束

☆以下不正确的叙述是(D)

A. 在C程序中,逗号运算符的优先级最低 B. 在C程序中,APH和aph是两个不同的变量 C. 若a和b类型相同,在执行了赋值表达式a=b后b中的值将放入a中,而b中的值不变 D. 当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值

☆以下不正确的语句为(C) A. if(x>y);

B. if(x>y){x++;y++;} C. if(x=y)&&(x!=0)x+=y;

D. if(x!=y)scanf(“%d”,&x);else scanf(“%d”,&y);

☆以下对一维整型数组a的正确说明是(D) A. int a(10); B. int n=10,a[n]; C. int n;

D. define SIZE 10 int a[SIZE];

☆以下符合C语言语法的赋值表达式是(B) A. d=9+e+f=d+9 B. d=9+e,f=d+9 C. d=9+e,e++,d+9 D. d=9+e++=d+7

☆下列函数调用中,不正确的是(D) A. max(a,b) B. max(3,a+b) C. max(3,5) D. int max(a,b)

☆下列关于数组的特征错误的是(C) A. 先定义后使用 B. 可以有多维

C. 定义数组长度可以用常量或变量 D. 可以做参数传递

☆下列哪个是字符写函数(B) A. fgetc B. fputc C. fgets D. fwritr

☆下列哪个是读写文件出错检测函数(A) A. ferror B. clearerr C. feof D. fwrite

☆下面4个选项中,均是C语言关键字的选项是(B)

A. auto enum include

B. switch typedef continue C. signed union scanf D. if struct type

☆下面4个选项中,均是不合法的用户标识符的选项是(C) A. A P_0 do B. float a0 _A C. b–a 123 int D. _123 temp INT

☆下面程序段int

k=2;while(k==0){printf(“%d”,k);k--;}则下面描述中正确的是(C)

A. while循环执行10次 B. 循环是无限循环

C. 循环体语句一次也不执行 D. 循环体语句执行一次

☆下面不正确的字符串常量是(A) A. abc’ B. “12’12” C. “0” D. “ “

☆下面正确的字符常量是(C) A. “c” B. “\\\\” C. ‘W’

D. ‘’(中间没有空格)

★C程序的执行从哪里开始(D) A. 第一条语句 B. 第一个函数 C. 最后一个函数 D. 主函数

★C语言中规定,if语句的嵌套结构中,else总是与(D)配对 A. 与最近的if配套 B. 与第一个if配套

C. 按缩进位置相同的if配套

D. 与最近的且尚未配对的if配套

★C语言结构体类型变量在程序执行期间(A) A. 所有成员一直驻留在内存中 B. 只有一个成员驻留在内存中 C. 部分成员驻留在内存中 D. 没有成员驻留在内存中

★在C语言中,char型数据在内存中的存储形式是(D) A. 补码 B. 反码 C. 原码 D. ASCII码

★在C语言中,要求运算数必须是整型的运算符是(D) A. / B. && C. != D. %

★在C语言中,引用数组元素时,其数组下标的数据类型允许是(C) A. 整型常量 B. 整型表达式

C. 整型常量或整型表达式 D. 任何类型的表达式

★在C语言中,int、char和short三种类型的数据在内存中所占用的字节数(D) A. 由用户自己定义 B. 均为2个字节 C. 是任意的

D. 由所用机器的机器字长决定

☆若有以下定义语句:int

a[10]={1,2,3,4,5,6,7,8,9,10};则下列哪个是对该数组元素的正确引用(D) A. a[10] B. a[a[3]-5] C. a[a[9]] D. a[a[4]+4]

☆若有以下定义语句union data {int l;char c;float f;}a;int n;则以下语句正确的是(C) A. a=5;

B. a={2,’a’,1.2};

C. printf(“%d\\n”,a,l); D. n=a;

☆若有定义char str[]=”very good”,则str的长度为(C) A. 8 B. 9 C. 10 D. 11

☆若定义语句:int a=7;float x=2.5;y=4.7;则表达式x+a%3*(int)(x+y)%2/4的值是(A) A. 2.500000 B. 2.750000 C. 3.500000 D. 0.000000

☆若已有定义int x;下列说明指针变量p指向x的正确语句是(B) A. int p=&x; B. int *p=&x; C. int p=x; D. int *p=x;

☆若要打开D盘上user文件夹下名为abc.txt的文本文件进行读、写操作,符合此要求的函数调用是(C)

A. fopen(“D:\\\%user\\\\abc.txt”,”r”) B. fopen(“D:\\\%user\\\\abc.txt”,”w”) C. fopen(“D:\\\%user\\\\abc.txt”,”r+”) D. fopen(“D:\\\%user\\\\abc.txt”,”rb”)

☆若执行fopen函数时发生错误,则函数的返回值是(B) A. 地址值 B. null C. 1 D. EOF

☆若调用fputc函数输出字符成功,则其返回值是(D) A. EOF B. 1 C. 0

D. 输出的字符

☆如果在C语言中一个int型数据在内存中占2个字节,则,unsigned int型数据的取值范围为(C) A. 0~255 B. 0~32767 C. 0~65535

D. 0~2147483647

★当说明一个结构体变量时系统分配给它的内存是(A)

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

B. 结构中第一个成员所需内存量 C. 成员中占内存量最大者所需的容量 D. 结构中最后一个成员所需内存量

★当把以下四个表达式用做if语句的控制表达式时,有一个选项与其它三个选项含义不同,这个选项是(B) A. k%2 B. k%2==0 C. (k%2)!=0 D. ! (k%2 ==0)

★当不能正确执行文件关闭操作时,fclose函数的返回值是(B) A. -1 B. EOF C. TRUE D. 1

☆已有定义int a=-2;和输出语句:printf(“%8lx”,a);以下正确的叙述是(D)

A. 整型变量的输出格式符只有%d一种

B. %x是格式符的一种,它可以适用于任何一种类型的数据

C. %x是格式符的一种,其变量的值按十六进制输出,但%8lx是错误的

D. %8lx不是错误的格式符,其中数字8规定了输出字段的宽度

☆已知学生记录描述为struct student{int no;char name[20];char sex;struct{int year;int month;int day;}birth;};struct student s;设变量s中的“生日”应该是“1984年11月11日”,下列对“生日”的正确赋值方式是(D)

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

B. birth.year=1984;birth.month=11;birth.day=11; C. s.year=1984;s.month=11;s.day=11; D. s.birth.year=1984;s.birth.month=11;s. birth.day=11;

☆已知字母A的ASCII码为十进制数65,且定义c2为字符型变量,则执行语句c2=’A’+’6’-‘3’;后,c2中的值为(A) A. D B. 68

C. 不确定的值 D. C

☆已知各变量的类型说明如下:int

i=8,k,a,b;unsigned long w=5;double x=1.42,y=5.2;则以下符合C语言语法的表达式是(A) A. a+=a-=(b=4)*(a=3) B. a=a*3=2 C. x%(-3) D. y=float(i)

☆已知p,p1为指针变量,a为数组名,i为整型变量,下列赋值语句中不正确的是(D) A. p=&i B. p=p1 C. p=&a[i] D. p=10

★设有说明语句:char w;int x;float y;double z;w*x+z-y值的数据类型为(D) A. float B. char C. int D. double

★设以下变量均为int类型,则值不等于7的表达式是(C) A. (x=y=6,x+y,x+1) B. (x=y=6,x+y,y+1) C. (x=6,x+1,y=6,x+y) D. (y=6,y+1,x=y,x+1)

★设有以下说明语句struct stu{int a;float b;}stutype;则以下叙述不正确的是(A) A. stutype是用户定义的结构体类型名

B. a和b都是结构体成员名 C. struct是结构体类型的关键字

D. struct stu是用户定义的结构体类型

★设有如下程序#includemain(){char ch1=’A’,ch2=’a’;printf(“%c\\n”,(ch1,ch2));}则下列叙述正确的为(B)

A. 程序的输出结果为大写字母A B. 程序的输出结果为小写字母a C. 运行时产生错误信息

D. 格式说明符的个数少于输出项的个数,编译出错

☆#include”stdio.h”void main(){int

sum=0,a=1;while(a<=10){sum=sum+a;a++;}printf(“sum=%d\\n”,sum);}以上程序段运行结果是(B) A. sum=0 B. sum=55 C. sum=10 D. sum=11

☆main(){int n=4;while(n)printf(“%d”,--n);}以上程序的输出结果是(C) A. 20 B. 31 C. 3210 D. 210

☆main(){int x=2,y=-1,z=2;if(x

☆int k=1;while(k<=10);上述语句执行后,变量k的值是(D) A. 10 B. 11 C. 9

D. 无限循环,值不定

☆for(i=2;i=0;)printf(“%d”,i--);以上程序段的循环次数是(B) A. 2次 B. 无限次 C. 0次 D. 1次

☆for(i=2;i==0;)printf(“%d”,i--);以上程序段的循环次数是(C) A. 2次 B. 无限次 C. 0次 D. 1次

☆fscanf函数的正确调用形式是(D)

A. fscanf(文件指针,格式字符串,输出表列) B. fscanf(格式字符串,输出表列,fp)

C. fscanf(格式字符串,文件指针,输出表列) D. fscanf(文件指针,格式字符串,输入表列)

☆struct person{char name[9];int age;};struct person

class[10]={“John”,17,”Paul”,19,”Mary”,18,”adam”,16};根据上面的定义,能打印出字母M的语句是(D)A. printf(“%c\\n”,class[3].name); B. printf(“%c\\n”,class[3].name[1]); C. printf(“%c\\n”,class[2].name[1]); D. printf(“%c\\n”,class[2].name[0]);

☆x=-2;y=-1;if(x!=0)if(x>0)y=1;else y=0;该程序段的输出结果为(C) A. 1 B. 0 C. -1

D. 不确定

☆x=-1;do{x=x*x;}while(x);以上程序段(D) A. 是死循环 B. 循环执行2次 C. 循环执行1次 D. 有语法错误

★数组名作为实参传递给形参时,数组名被处理为(C)

A. 该数组的长度 B. 该数组的元素个数 C. 该数组的首地址

D. 该数组中各元素的值

★判断字符串a是否大于b,应当使用(C) A. if(a>b)

B. if(strcmp(a,b)) C. if(strcmp(b,a)>0) D. if(strcmp(a,b)>0)

★关于return语句,下列说法正确的是(C)

A. 不能在主函数中出现 B. 必须在每个函数中出现

C. 可以在同一个函数中出现多次

D. 只能在除主函数之外的函数中再出现一次

★变量的指针,其含义是指变量的(A) A. 地址 B. 值 C. 名字 D. 标识

★从用户使用的角度看,函数有两种,它们是(A) A. 库函数和用户自定义函数 B. 库函数和主函数

C. 用户自定义函数和主函数 D. 主函数和子函数

☆对整型常量可进行自加或自减运算,而对变量或表达式不可以(×)

☆赋值表达式c=b=a=3是错误的(×)

☆字符型数据和整数之间是不可以通用的(×)

☆字符常数和字符串常数的存储是相同的,都是以字符的ASCII码值进行存放(×)

☆在Turbo C++中,字符型数据在内存中占1个字节(√)

☆在Visual C中,实型数据在内存中占4个字节(√)

☆在Visual C中,整型数据在内存中占2个字节(×)

☆C语言中没有依存于硬件的I/O语句(√)

☆C程序是由函数构成的,每一个函数完成相对独立的功能(√)

☆C语言中的标识符以字母或下划线开头,可跟任何字符(×)

☆C语言中的任何类型数据都可进行四则运算(×)

☆在C语言中,字母的大小写不被区分(×)

☆对C语言中用到的任何一个变量都要规定其类型(√)

☆用C语言可直接进行位运算和取地址等运算,因此C语言是一种低级语言(×)

☆PI可作为标识符使用(√)

☆被main函数调用的函数只能是库函数(×)