南昌大学c语言作业答疑系统题目及答案

2019-08-20 19:20

1、若fp是指向某文件的指针,且feof(fp)的返回值是非零值,则表示:

A.已读到此文件末尾 B.未读到此文件的末尾 C.此文件已关闭 D.此文件尚未被打开 [A] 教师批改:A

2、系统的标准输入文件是指__。 A) 键盘 B) 显示器 C) 软盘 D) 硬盘 [A] 教师批改:A

3、若执行fopen函数时发生错误,则函数的返回值是__。 A) 地址值 B) 0 C) 1 D) EOF [B] 教师批改:B

4、若要用fopen打开一个新的二进制文件,该文件既能读也能写,则文件方式字符串应该是__。 A) “ab+” B) “wb+” C) “rb+” D) “ab” [C] 教师批改:B

5、当顺利执行了文件关闭操作时,fclose函数的返回值是__。 A) -1 B) TRUE C) 0 D) 1

[C] 教师批改:C

6、fscanf函数的正确调用形式为__。 A) fscanf(fp,格式字符串,输出列表) B) fscanf(格式字符串, 输出列表,fp) C) fscanf(格式字符串,输出指针,输出列表) D) fscanf(文件指针,格式字符串,输入列表) [D] 教师批改:D

7、fwrite函数的一般调用形式为__。 A) fwrite(buffer,count,size,fp); B) fwrite(fp,size,count,buffer); C) fwrite(“fp,count,size,buffer); D) fwrite(buffer,size,count,fp); [D] 教师批改:D

8、fgetc函数的作用是从指定文件读入一个字符串,该文件的打开方式必须是__. A) 只写

B) 追加 C) 读或读写

D) 答案B和C都正确 [D] 教师批改:C

9、若调用fputc函数输出字符成功,其返回值是__。 A) EOF B) 1 C) 0

D) 输出的字符 [D] 教师批改:D

10、利用fseek函数可实现的操作数__。 A) 改变文件的位置指针 B) 文件的顺序读写 C) 文件的随即读写 D) 以上答案均正确 [D] 教师批改:D

11、利用fseek函数可实现的操作数__。 A) 改变文件的位置指针 B) 文件的顺序读写 C) 文件的随即读写 D) 以上答案均正确 [D] 教师批改:D

12、函数rewind的作用是__。 A) 使位置指针重新返回文件的开头 B) 使位置指针指向文件所要求的位置 C) 使位置指针指向文件的末尾

D) 使位置指针自动移至下一个字符的位置 [A] 教师批改:A

13、函数ftell(fp)的作用是__。 A) 得到流式文件中的当前位置 B) 移动流式文件的位置指针 C) 初始化流式文件的位置指针 D) 以上答案均正确 [A] 教师批改:A

14、在执行fopen函数时,ferror函数的初值是__。 A) TRUE B) -1 C) 1 D) 0

[D] 教师批改:D

1、若x=2,y=3则x&y的结果是__。 A) 0 B) 2 C) 3 D) 5

[B] 教师批改:B

2、表达式0x13|0x17的值是__。

A) 0x13 B) 0x17 C) 0xE8 D) 0xc8 [B] 教师批改:B

3、表达式 0x13^0x17的值是__。 A) 0x04 B) 0x13 C) 0xE8 D) 0x17 [A] 教师批改:A

4、表达式~0x13的值是__。 A) 0xFFEC B) 0xFF71 C) 0xFF68 D) 0xFF17 [A] 教师批改:A

5、在位运算中,操作数每右移一位,其结果相当于__。 A) 操作数乘以2 B) 操作数除以2 C) 操作数乘以4 D) 操作数除以4 [B] 教师批改:B

6、在位运算中,操作数每左移一位,其结果相当于__。 A) 操作数乘以2 B) 操作数除以2 C) 操作数乘以4 D) 操作数除以4 [A] 教师批改:A

7、若执行完成下列语句: int a=3,b=6,c; c=a∧b<<2; 则变量c的二进制值为: A.00011100 B.00010100 C.0001000 D.00011011 [D] 教师批改:D

8、表达式0x13&0x17的值是__。 A) 0x17 B) 0x13 C) 0xf8 D) 0xec

[B] 教师批改:B

9、若a=1,b=2则a|b的值是__。 A) 0 B) 1 C) 2 D) 3

[D] 教师批改:D

1、设有以下定义或语句,则输出的结果是?(用small模式编译,指针变量占2个字节) struct date { long *cat; struct date *next; double dog; }too;

printf(\ A.20 B.16 C.14 D.12

[B] 教师批改:D 2、设有以下说明语句 struct ex

{ int x ; float y; char z ;} example; 则下面的叙述中不正确的是 A.struct结构体类型的关键字 B.example是结构体类型名 C.x,y,z都是结构体成员名 D.struct ex是结构体类型 [C] 教师批改:B

3、已知有共用体变量data1定义如下: union data { int i; char ch; float f; } data1;

则变量data1所占的内存存储空间可表示为: A.sizeof(int) B.sizeof(char) C.sizeof(float)

D.sizeof(int)+sizeof(char)+sizeof(float) [C] 教师批改:C

4、以下对枚举类型名的定义中正确的是 A.enum a={one,two,three}; B.enum a{one=9,two=-1,three}; C.enum a={″one″,″two″,″three″}; D.enum a{″one″,″two″,″three″}; [C] 教师批改:B

5、以下关于typedef的叙述中错误的是: A.用typedef可以增加新的类型

B.用typedef可以定义各种类型名,但不能用来定义变量 C.用typedef只是将已有的类型用新的标识符来代表 D.使用typedef有利于程序的通用和移植

[D] 教师批改:A

6、当说明一个结构体变量时系统分配给他的内存是__。 A) 各成员所需内存量的总和。 B) 结构中第一个成员所需内存量。 C) 成员中占内存量最大者所需内存量。 D) 结构中最户一个成员所需内存量。 [B] 教师批改:A 7、设有以下语句 struct stu {int a; float b; }stutype;

则下面叙述不正确的是__。 A) struct 是结构体类型的关键字。 B) struct stu是用户定义的结构体类型。 C) stutype 是用户定义的结构体类型名。 D) a和b都是结构体成员名。 [A] 教师批改:C

8、在16位IBM-PC机上使用的C语言,若有如下定义: struct data {int i; char ch; double f; }b;

则结构变量b占用内存的字节数是__。 A) 1 B) 2 C) 8 D) 11

[C] 教师批改:D

9、以下程序的运行结果是__。 #include “stdio.h” main() {struct date {int year,month,day; }today;

printf(“%d\\n”,sizeof(struct date)); } A) 6 B) 8 C) 10 D) 12

[A] 教师批改:A

10、下面程序的运行结果是__。 main() {

struct cmplx{int x;

int y;

}cnum[2]={1,3,2,7};

printf(“%d\\n”,cnum[0].y/cnum[0].x*cnum[1].x); } A) 0 B) 1 C) 3 D) 6

[B] 教师批改:D 11、 有如下定义: struct sk {int n; float x; }dara,*p;

若要使p指向data中的n域,正确的赋值语句是__。 A) p=&data.n; B) *p=data.n;

C) p=(struct sk *)&data.n; D) p=(struct sk *)data.n; [A] 教师批改:C 12、若有以下说明和语句: struct student {int age; int num; }std.*p; p=&std;

则以下对结构体变量age引用不正确的是__。 A) std.age B) p->age C) (*p).age D) *p.age [C] 教师批改:D

13、若有以下说明和语句,则对pup中sex域的正确引用方式是__。 struct pupil {char name[20]; int sex; }pup,*p; p=&pup; A) p.pup.sex; B) p->pup.sex; C) (*p).pup.sex D) (*p).sex [D] 教师批改:D

14、以下对结构体变量stul中成员age的非法引用是__。 struct student {int age;

int num; }stu1,*p; p=&stu1; A) stu1.age B) student.age C) p->age D) (*p).age [A] 教师批改:B

15、C语言共用体类型变量在程序运行期间__。 A) 所有成员一直驻留在内存中。 B) 只有一个成员驻留在内存中。 C) 部分成员驻留在内存中。 D) 没有成员驻留在内存中。 [B] 教师批改:B

16、在16位IBM-PC机上使用C语言,若有如下定义: union data {int i; char ch; double f; }b;

则共用体变量b占用内存的字节数是__。 A) 1 B) 2 C) 8 D) 11

[B] 教师批改:C

17、下面对typedef的叙述不正确的是__。

A) 用typedef可以定义各种类型名,但不能用来定义变量。B) 用typedef可以增加新类型

C) 用typedef只是将已存在的类型用一个新的标识符来代表D) 使用typedef有利于程序的同意和移植 [C] 教师批改:B

1、假设指针p1已经指向了某个整型变量,要使指针p2也指向同一个变量,则下面各项中正确的是: A.p2=**p1 B.p2=*&p1 C.p2=*p1 D.p2=&*p1 [C] 教师批改:D 2、若有以下定义和语句: char *s1=\ printf(\ 则输出结果是_____。 A.4 B.5 C.9

D.10

[C] 教师批改:A

3、下列程序段的输出结果是_____。 void fun(int *x, int *y)

{ printf(\ main() { int x=1,y=2; fun(&y,&x); printf(\ } A.2 1 4 3 B.1 2 1 2 C.1 2 3 4 D.2 1 1 2

[A] 教师批改:A 4、以下程序的输出结果是 fut( int **s,int p[2][3]) { **s=p[1][1];} main( )

{ int a[2][3]={1,3,5,7,9,11},*P; ??p=(int *)malloc(sizeof(int)); ??fut(&p,a); ??print(\ \ } A.1 B.7 C.9 D.11

[B] 教师批改:C

5、假设指针p已经指向某个整型变量x,则*p相当于: A.&x B.&p C.x D.*x

[A] 教师批改:C

6、若有定义:int a[3][4];不能表示数组元素a[1][1]的是_____。A.*(a[1]+1) B.*(&a[1][1]) C.(*(a+1))[1] D.*(a+5)

[B] 教师批改:D 7、若有定义和语句: int **pp,*p,a=10,b=20; pp=&p;p=&a;p=&b; printf(\ 则输出结果是()

A.10,10 B.10,20 C.20,10 D.20,20

[D] 教师批改:D

8、若有以下的定义: int a[]={1,2,3,D,5,6,7,8,9,10},*p=a 则值为3的表达式是 A.p+=2,*(p++) B.p+=2,*++p C.p+=3,*p++ D.p+=2,++*p [D] 教师批改:A 9、若有以下定义和语句: int a[10]={1,2,3,D,5,6,7,8,9,10},*p=a; 则不能表示a数组元素的表达式是 A.*p B.a[10] C.*a D.a[p-a]

[A] 教师批改:B 10、若有以下定义和语句: int w[2][3],(*pw)[3];pw=w;

则对w数组元素的非法引用是_____。 A.*(w[0]+2) B.*(pw+1)[2] C.pw[0][0] D.*(pw[1]+2) [A] 教师批改:B 11、设有定义: struct sk{ int a; float b; }data,*p;

若有p=&data;,则对data中的a域的正确引用是____。 A.(*p).data.a B.(*p).a C.p->data.a D.p.data.a [D] 教师批改:B

12、设有如下定义: char *aa[2]={\则以下说法中正确的是

A.aa数组元素的值分别是\和\

B.aa是指针变量,它指向含有两个数组元素的字符型一维数组

C.aa数组的两个元素分别存放的是含有D个字符的一维字符数组的首地址

D.aa数组的两个元素中各自存放了字符'a'和'A'的地址

[B] 教师批改:D

13、以下c语言函数声明中,不正确的是: A.void fun (int x, int y); B.fun (int x, int y); C.int fun (int x,y); D.char *fun (char *s); [D] 教师批改:C 14、以下程序输出的值为? main()

{ int a[ ]={1,2,3,4,5,6,7,8,9,0},*p; p=a;

printf(\ } A.1 B.9 C.10 D.0

[D] 教师批改:C 15、有以下程序 main()

{ int a[10]={1,2,3,4,5,6,7,8,9,10}, *p=&a[3], *q=p+2; printf(\); }

程序运行后的输出结果是_____。 A)16 B)10 C)8 D)6

[B] 教师批改:B

16、若有语句:char *line[5];,以下叙述中正确的是( ) A)定义line是一个数组,每个数组元素是一个基类型为char的指针变量

B)定义line是一个指针变量,该变量可以指向一个长度为5的字符型数组

C)定义line是一个指针数组,语句中的*号称为间址运算符 D)定义line是一个指向字符型函数的指针 [A] 教师批改:A 17、有以下程序 main()

{ int a[]={2,4,6,8,10}, y=0, x, *p; p=&a[1];

for(x= 1; x<3; x++) y += p[x]; printf(\); }

程序运行后的输出结果是_____。 A)10 B)11


南昌大学c语言作业答疑系统题目及答案.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:苏教版小学语文第十二册各课作业设计

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: