国家开放大学电大《C语言程序设计》网络课选择题答案
选择题
题目1
在每个C语言程序中都必须包含有这样一个函数,该函数的函数名为()。
选择一项:
A.main
恭喜你,答对啦!
B.MAIN
C.name
D.function
题目2
C语言源程序文件的缺省扩展名为()。
选择一项:
A.cpp
B.exe
C.obj
D.c
题目3
由C语言目标文件连接而成的可执行文件的缺省扩展名为()。
选择一项:
A.cpp
B.exe
C.obj
D.c
题目4
程序运行中需要从键盘上输入多于一个数据时,各数据之间应使用的分隔符为()。
选择一项:
A.空格或逗号
B.逗号或回车
C.逗号或分号
D.空格或回车
题目5
每个C语言程序文件的编译错误被分为()。
选择一项:
A.1类
B.2类
C.3类
D.4类
题目6
不符合C语言规定的复合语句是()。
选择一项:
A.{}
B.{;}
C.{x=0;}
D.{y=10}
题目7
C语言程序中的基本功能模块为()。
选择一项:
A.表达式
B.标识符
C.语句
D.函数
题目8
在一个函数定义中,函数头包括的3个部分依次为函数类型、函数名和()。
选择一项:
A.表达式
B.语句
C.参数表
D.函数体
题目9
在一个程序文件中,若要使用#include命令包含一个用户定义的头文件,则此头文件所使用的起止定界符为一对()。
选择一项:
A.尖括号
B.双引号
C.单引号
D.花括号
题目10
在C语言程序中,多行注释语句使用的开始标记符为()。
选择一项:
A.//
B./*
C.*/
D.**
题目11
在printf()函数调用的格式字符串中,若使用格式符为“%c”,则对应输出的数据类型为()。
选择一项:
A.char
B.int
C.float
D.double
题目12
在printf()函数调用的格式字符串中,若使用格式符为“%5d”,则规定对应输出的数据占用的字符位置个数为()。
选择一项:
A.5
B.4
C.3
D.6
题目13
转义字符'\\'表示的字符是()。
选择一项:
A.单引号
B.双引号
C.反斜线
D.问号
题目14
枚举类型中的每个枚举常量的值都是一个()。
选择一项:
A.整数
B.浮点数
C.字符
D.逻辑值
题目15
运算符优先级最高的是()。
选择一项:
A.=
B.*=
C.&&
D.!=
题目16
设x和y均为逻辑值,则x
&&
y为真的条件是()。
选择一项:
A.它们均为真
B.其中一个为真
C.它们均为假
D.其中一个为假
题目17
设有语句“int
a=12;
a+=a*a;”,则执行结束后,a的值为()。
选择一项:
A.12
B.144
C.156
D.288
题目18
x>0
&&
x<=10的相反表达式为()。
选择一项:
A.x<=0
||
x>10
B.x<=0
&&
x>10
C.x<=0
||
x<=10
D.x>0
&&
x>10
题目19
字符串“a+b=12\n”的长度为()。
选择一项:
A.6
B.7
C.8
D.9
题目20
在下列的符号常量定义中,错误的定义语句格式为()。
选择一项:
A.const
int
M1=10;
B.const
int
M2=20;
C.const
int
M3
10;
D.const
char
mark='3';
题目21
当处理特定问题时的循环次数已知时,通常采用的语句是()。
选择一项:
a.for
b.while
c.do-while
d.switch
题目22
在switch语句的每个case块中,假定都是以break语句结束的,则此switch语句容易被改写成的语句是()。
选择一项:
a.for
b.if
c.do
d.while
题目23
for语句能够被改写成的语句是()。
选择一项:
a.复合b.if
c.switch
d.while
题目24
下面循环语句执行结束后输出的i值为()。
for(int
i=0;
i i++) if(i>n/2) {cout< break;} 选择一项: a.n/2 b.n/2+1 c.n/2-1 d.n-1 题目25 在下面循环语句中,内层循环体S语句的执行总次数为()。 for(int i=0; i i++) for(int j=i; j j++) S; 选择一项: a.n2 b.(n+1)/2 c.n(n-1)/2 d.n(n+1)/2 题目26 在下面的do循环语句中,其循环体被执行的次数为()。 int i=0; do i++; while(i*i<10); 选择一项: a.4 b.b.3 c.5 d.2 题目27 在下面的一维数组定义中,有语法错误的选项是()。 选择一项: a.int a[]={1,2,3}; b.int a[10]={0}; c.int a[]; d.int a[5]; 题目28 在下面的二维数组定义中,语法正确的选项是()。 选择一项: a.int a[5][]; b.int a[][5]; c.int a[][3]={{1,3,5},{2}}; d.int a[](10); 题目29 假定一个二维数组的定义语句为“int a[3][4]={{3,4},{2,8,6}};”,则元素a[1][1]的值为()。 选择一项: a.2 b.4 c.6 d.8 题目30 假定一个二维数组的定义语句为“int a[3][4]={{3,4},{2,8,6}};”,则元素a[2][1]的值为()。 选择一项: a.0 b.4 c.8 d.6 题目31 在下面的函数声明语句中,存在着语法错误的是()。 选择一项: a.AA(int a,int b) b.AA(int,int) c.AA(int a; int b) d.AA(int a,int) 题目32 在下面的保留字中,不能作为函数的返回值类型的是()。 选择一项: a.void b.int c.enum d.long 题目33 假定p是一个指向float型数据的指针,则p+1所指数据的地址比p所指数据的地址增加的字节数为()。 选择一项: a.1 b.2 c.4 d.8 题目34 假定a为一个数组名,在下面的表达式中,存在语法错误的是()。 选择一项: a.a[i] b.*a++ c.*a d.*(a+1) 题目35 用calloc函数创建具有10个整型元素的一维数组的正确语句是()。 选择一项: a.int *p=calloc(10,2); b.int *p=calloc(10); c.int *p=calloc(10,4); d.int *p=malloc(10) 题目36 假定变量m定义为“int m=7;”,则下面正确的语句为()。 选择一项: a.int p=&m; b.int *p=&m; c.int &p=*m; d.int *p=m; 题目37 假定k是一个double类型的变量,则定义变量p的正确语句为()。 选择一项: a.double p=&k; b.int *p=&k; c.double &p=*k; d.char *p=“Thank you!“; 题目38 若有语句为“int a[10],x,*pa=a;”,要把数组a中下标为3的元素值赋给x,则不正确的语句为()。 选择一项: a.x=pa[3]; b.x=*(a+3); c.x=a[3]; d.x=*pa+3; 题目39 假定有语句为“int b[10]; int *pb;”,则下面不正确的赋值语句为()。 选择一项: a.pb=b; b.pb=&b[0]; c.pb=b+2; d.pb=b[5]; 题目40 已知“int *p=malloc(100);”,要释放p所指向的动态内存,正确的语句为()。 选择一项: a.free(p); b.free p; c.free(*p); d.free[p]; 题目41 在程序的一个文件中定义的函数,若要在另一个文件中调用,则必须在这另一个文件中给出该函数的()。 选择一项: a.原型语句 b.参数表 c.函数名 d.返回类型 题目42 假定一个函数定义为“static int f1(int x,int y){return x+y;}”,该函数名称为()。 选择一项: a.static b.int c.f1 d.return 题目43 假定一个函数的原型语句为“int ff(int* x);”,一个整型数组为a[10],则下面函数调用表达式不正确的是()。 选择一项: a.ff(a) b.ff(a[0]) c.ff(a+3) d.ff(&a[0]) 题目44 假定一个函数的数组参数说明为char a[],与之等价的指针参数说明为()。1B 选择一项: a.char a b.char* a c.char& a d.char**a 题目45 假定一个函数的二维数组参数说明为char w[][N],与之等价的指针参数说明为()。 选择一项: a.char (*w)[N] b.char *w[N] c.char (*w)N d.char**a 题目46 假定有“struct BOOK{char title[40]; float price;}; struct BOOK book;”,则不正确的语句为()。 选择一项: a.struct BOOK *x=malloc(book); b.struct BOOK x={“C++ Programming“,27.0}; c.struct BOOK *x=malloc(sizeof(struct BOOK)); d.struct BOOK *x=&book; 题目47 假定有“struct BOOK{char title[40]; float price;} book;”,则正确的语句为()。 选择一项: a.struct BOOK x= &book; b.struct BOOK *x=&book; c.struct BOOK x=calloc(BOOK); d.struct BOOK *x=BOOK; 题目48 在结构类型的定义中,不同数据成员的定义项之间采用的分隔符是()。 选择一项: a.句点 b.冒号 c.分号 d.逗号 题目49 假定一个结构类型的定义为 “struct A{int a,b; double c;};”,则该类型的长度为()。 选择一项: a.8 b.10 c.12 d.16 题目50 假定一个结构类型的定义为 “struct D{int a; D* next;};”,则该类型的长度为()。 选择一项: a.4 b.8 c.12 d.16 反馈 Your answer is correct.题目51 假定要访问一个结构指针变量x中的数据成员a,则表示方法为()。 选择一项: a.x.a b.x->a c.x(a) d.x{a} 题目52 与结构成员访问表达式x.name等价的表达式为()。 选择一项: a.x->name b.&x->name c.(&x)->name d.(*x)->name 题目53 假定一个链表中结点的结构类型为“struct AA{int data,struct AA *next;};”,则next数据成员的类型为()。 选择一项: a.struct AA b.struct AA* c.AA d.int 题目54 假定一个链表的表头指针为f,结点中包含有data和next域,则向该链表的表头插入一个地址为p的结点时,应执行的操作为()。 选择一项: a.p->next=f b.p->next=f和f=p c.f=p->next d.f->next=p和f=p 题目55 标准输入设备键盘的文件流标识符是()。 选择一项: a.stdin b.stdout c.stderr d.stdio 题目56 表示文件结束符的符号常量为()。 选择一项: a.eof b.Eof c.EOF d.feof 题目57 C语言中打开一个数据文件的系统函数为()。 选择一项: a.fgetc() b.fputc() c.fclose() d.fopen() 题目58 从一个数据文件中读入以换行符结束的一行字符串的系统函数为()。 选择一项: a.gets() b.fgets() c.getc() d.fgetc() 题目59 向一个二进制文件中写入信息的函数fwrite()带有的参数个数为()。 选择一项: a.1 b.2 c.3 d.4 题目60 在C语言中,为只写操作打开一个文本文件的方式为()。 选择一项: a.“a“ b.“r+“ c.“r“ d.“w“