最新消息:可做奥鹏等各院校作业论文,答案请联系QQ/微信:18866732

国开24春《C语言程序设计》形考【参考答案】

国开24春《C语言程序设计》形考【参考答案】C语言程序设计
若需要定义一个符号常量,并且使C语言能够进行类型检查,则应在定义语句的开始使用保留字const。

运算符优先级最高的是(  )

A. =

B. *=

C. &&

D. !=

C语言中打开一个数据文件的系统函数为( )。

a. fgetc()

b. fputc()

c. fclose()

d. fopen()

C语言中的标准输入和输出设备文件都属于字符文件。

C语言中的每条复合语句以花括号作为结束符。

C语言中的每条简单语句以分号作为结束符。

C语言程序中的基本功能模块为(  )。

A. 表达式

B. 标识符

C. 语句

D. 函数

C语言系统中提供一个用来描述文件属性的类型标识符为FILE。

NULL是一个符号常量,通常作为空指针值,它代表的值为0。

float的类型长度为8。

for语句能够被改写成的语句是( )。

a. 复合

b. if

c. switch

d. while

strcmp函数用于进行两个字符串之间的比较。

strcpy函数用于把一个字符串拷贝到另一个字符数组空间中。

x>0 && x<=10的相反表达式为(  )。

A. x<=0 || x>10

B. x<=0 && x>10

C. x<=0 || x<=10

D. x>0 && x>10

一个二维字符数组a[10][20]能够存储的每个字符串的长度不超过20。

一个二维字符数组a[10][20]能够最多存储9个字符串。

一个磁盘数据文件的文件名由文件主名和扩展名所组成,其中间用圆点分开。

下面循环语句执行结束后输出的i值为( )。

for(int i=0; i<n; i++) if(i>n/2) {cout<<i<<endl; break;}

a. n/2

b. n/2+1

c. n/2-1

d. n-1

不符合C语言规定的复合语句是(  )。

A. {}

B. {;}

C. {x=0;}

D. {y=10}

与结构成员访问表达式(*fp).score等价的表达式是fp->score。

与结构成员访问表达式x.name等价的表达式为( )。

a. x->name

b. &x->name

c. (&x)->name

d. (*x)->name

为了存储一个长度为n的字符串,所使用的字符数组的长度至少为n+1。

为了结束本层循环类语句或switch语句的执行过程,在语句体中需要使用break语句。

从一个数据文件中读入以换行符结束的一行字符串的系统函数为( )。

a. gets()

b. fgets()

c. getc()

d. fgetc()

使用const语句定义一个符号常量时,不必对它进行初始化。

使用“typedef char BB[10][50];”语句定义标识符BB为含有10行50列的二维字符数组类型。

使用一个结构类型时,必须一起使用关键字struct和类型标识符。

假定a为一个数组名,在下面的表达式中,存在语法错误的是( )。

a. a[i]

b. *a++

c. *a

d. *(a+1)

假定a是一个指针数组,则a+i所指对象的地址比a地址大4*i字节
国开形考答案open5.net或联系QQ/微信:18866732。

假定k是一个double类型的变量,则定义变量p的正确语句为( )。

a. double p=&k;

b. int *p=&k;

c. double &p=*k;

d. char *p=”Thank you!”;

假定p所指对象的值为25,p+1所指对象的值为46,则*++p的值为25。

假定p所指对象的值为25,p+1所指对象的值为46,则*p++的值为46。

假定p所指对象的值为25,p+1所指对象的值为46,则执行*(p++)运算后,p所指对象的值为46。

假定p是一个指向float型数据的指针,则p+1所指数据的地址比p所指数据的地址增加的字节数为( )。

a. 1

b. 2

c. 4

d. 8

假定x=5,则执行“a=(x?10:20);”语句后a的值为10。

假定x=5,则执行“y=++x;”语句后,y的值为6。

假定x=5,则执行“y=x++;”语句后,x的值为5。

假定x=5,则表达式2*x++的值为12。

假定x为一个简单变量,则&x表示x的地址。

假定一个二维数组的定义语句为“int a[3][4]={{3,4},{2,8,6}};”,则元素a[1][1]的值为( )。

a. 2

b. 4

c. 6

d. 8

假定一个二维数组的定义语句为“int a[3][4]={{3,4},{2,8,6}};”,则元素a[2][1]的值为( )。

a. 0

b. 4

c. 8

d. 6

假定一个函数定义为“static int f1(int x,int y){return x+y;}”,该函数名称为( )。

a. static

b. int

c. f1

d. return

假定一个函数的二维数组参数说明为char w[][N],与之等价的指针参数说明为( )。

a. char (*w)[N]

b. char *w[N]

c. char (*w)N

d. char**a

假定一个函数的原型语句为“int ff(int* x);”,一个整型数组为a[10],则下面函数调用表达式不正确的是( )。

a. ff(a)

b. ff(a[0])

c. ff(a+3)

d. ff(&a[0])

假定一个函数的数组参数说明为char a[],与之等价的指针参数说明为( )。1B

a. char a

b. char* a

c. char& a

d. char**a

假定一个数据对象为int*类型,则指向该对象的指针类型仍为int*类型。

假定一个枚举类型的定义为“enum RB{ab,ac=3,ad,ae}x=ad;”,则x的值为2。

假定一个结构类型的定义为 “struct A{int a,b; A* c;};”,则该类型的长度为12。

假定一个结构类型的定义为 “struct A{int a,b; double c;};”,则该类型的长度为( )。

a. 8

b. 10

c. 12

d. 16

假定一个结构类型的定义为 “struct B{int a[5]; char* b;};”,则该类型的长度为20。

假定一个结构类型的定义为 “struct D{int a; D* next;};”,则该类型的长度为( )。

a. 4

b. 8

c. 12

d. 16

假定一个链表中结点的结构类型为“struct AA{int data, struct AA *next;};”,则next数据成员的类型为( )。

a. struct AA

b. struct AA*

c. AA

d. int

假定一个链表的表头指针为f,结点中包含有data和next域,则向该链表的表头插入一个地址为p的结点时,应执行的操作为( )。

a. p->next=f

b. p->next=f和f=p

c. f=p->next

d. f->next=p和f=p

假定一维数组的定义为“char* a[8];”,则该数组所含元素的个数大于8。

假定二维数组的定义为“char a[M][N];”,则该数组所含元素的个数为M+N。

假定二维数组的定义为“double a[M][N];”,则每个数组元素的列下标取值范围在0~N之间。

假定二维数组的定义为“double a[M][N];”,则每个数组元素的行下标取值范围在0~M-1之间。

假定二维数组的定义为“int a[3][5];”,则该数组所占存储空间的字节数为60。

假定变量m定义为“int m=7;”,则下面正确的语句为( )。

a. int p=&m;

b. int *p=&m;

c. int &p=*m;

d. int *p=m;

假定有“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;

假定有“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;

假定有语句为“int b[10]; int *pb;”,则下面不正确的赋值语句为( )。

a. pb=b;

b. pb=&b[0];

c. pb=b+2;

d. pb=b[5];

假定要访问一个结构对象x中的由a指针成员所指向的对象,则表示方法为x.a。

假定要访问一个结构指针p所指对象中的b指针成员所指的对象,则表示方法为p->b。

假定要访问一个结构指针变量x中的数据成员a,则表示方法为( )。

a. x.a

b. x->a

c. x(a)

d. x{a}

关系表达式(x!=0)的等价表达式为(x)。

关系表达式x+y>5的相反表达式为x+y<=5。

函数形参变量不属于局部变量。

十进制数25表示成符合C语言规则的八进制数为31。

十进制数25表示成符合C语言规则的十六进制数为0x19。

向一个二进制文件中写入信息的函数fwrite()带有的参数个数为( )。

a. 1

b. 2

c. 3

d. 4

在C语言中,一个函数由函数头和函数体组成。

在C语言中,为只写操作打开一个文本文件的方式为( )。

a. “a”

b. “r+”

c. “r”

d. “w”

在C语言中,对二进制文件的所有不同打开方式共有6种。

在C语言中,常数28和3.26具有相同的数据类型。

在C语言中,系统函数fseek()用来移动数据文件中的文件位置指针。

在C语言中,转义字符’\n’表示一个换行符。

在C语言程序中,在行尾使用注释的开始标记符为一对单斜线字符。

在C语言程序中,多行注释语句使用的开始标记符为(  )。

A. //

B. /*

C. */

D. **

在printf()函数调用的格式字符串中,若使用格式符为“%5d”,则规定对应输出的数据占用的字符位置个数为(  )。

A. 5

B. 4

C. 3

D. 6

在printf()函数调用的格式字符串中,若使用格式符为“%c”,则对应输出的数据类型为(  )。

A. char

B. int

C. float

D. double

在switch语句中,每个case和冒号之间的表达式只能是常量。

在switch语句的每个case块中,假定都是以break语句结束的,则此switch语句容易被改写成的语句是( )。

a. for

b. if

c. do

d. while

在一个C语言程序文件中,若要包含一个头文件,则使用以百分号开始的预处理命令。

在一个函数定义中,函数头包括的3个部分依次为函数类型、函数名和(  )。

A. 表达式

B. 语句

C. 参数表

D. 函数体

在一个磁盘数据文件的文件名中,文件主名和扩展名都是必须的,不可省略。

在一个程序文件中,若要使用#include命令包含一个用户定义的头文件,则此头文件所使用的起止定界符为一对(  )。

A. 尖括号

B. 双引号

C. 单引号

D. 花括号

在下列的符号常量定义中,错误的定义语句格式为(  )。

A. const int M1=10;

B. const int M2=20;

C. const int M3 10;

D. const char mark=’3′;

在下面循环语句中,内层循环体S语句的执行总次数为( )。

for(int i=0; i<n; i++)

for(int j=i; j<n; j++) S;

a. n2

b. (n+1)/2

c. n(n-1)/2

d. n(n+1)/2

在下面的do循环语句中,其循环体被执行的次数为( )。

int i=0; do i++; while(i*i<10);

a. 4

b. 3

c. 5

d. 2

在下面的一维数组定义中,有语法错误的选项是( )。

a. int a[]={1,2,3};

b. int a[10]={0};

c. int a[];

d. int a[5];

在下面的二维数组定义中,语法正确的选项是( )。

a. int a[5][];

b. int a[][5];

转载请注明:奥鹏作业之家 » 国开24春《C语言程序设计》形考【参考答案】