您好,欢迎来到华佗小知识。
搜索
您的当前位置:首页C语言程序设计智慧树知到答案章节测试2023年山东劳动职业技术学院

C语言程序设计智慧树知到答案章节测试2023年山东劳动职业技术学院

来源:华佗小知识
第一章测试

1. 在printf()函数调用的格式字符串中,若使用格式符为“%d”,则对应输出的

数据类型为int。( ) A:错 B:对 答案:B

2. 在printf()函数调用的格式字符串中,若使用格式符为“%f”,则对应输出的

数据类型为int。( ) A:对 B:错 答案:B

3. 在printf()函数调用的格式字符串中,若使用格式符为“%5d”,则规定对应

输出的数据占用的字符位置个数为4 。( ) A:错 B:对 答案:A

4. 程序运行中需要从键盘上输入多于一个数据时,若不特别规定分隔符,则输

入的各数据之间所使用的分隔符为逗号或回车。( ) A:对 B:错 答案:A

5. 在scanf()函数调用的格式字符串中,若使用格式字符串为“%d,%d”,则规

定输入的两个数据之间的分隔符为(@ )( ) A:对 B:错 答案:A

第二章测试

1. 若x的值为5,则执行“if(x>10) x++; else x–;”语句后,x的值为( )。

A:4 B:6 C:7 D:5 答案:A

2. 有如下程序void main( ){ int a=2,b=-1,c=2;if(aprintf(“%d”,c);}该程序的输出结果是( )。 A:3 B:0 C:2

3.

4.

5.

6.

7.

8. 9.

10.

D:1 答案:C

if(表达式)语句中,表达式可以是任何合法的数值。( ) A:错 B:对 答案:B

改变if-else语句的缩进格式,不会改变程序的执行流程。( ) A:对 B:错 答案:A

以下关于if语句的错误描述是( )。

A:与else配对的if语句是其之前最近的未配对的if语句 B:条件表达式的括号不能省

C:条件表达式可以是任意的表达式

D:条件表达式只能是关系表达式或逻辑表达式 答案:D

在if语句中,每个else关键字与它前面同层次并且最接近的if关键字相配套。( ) A:错 B:对 答案:B

下列叙述中正确的是( )。

A:在switch语句中,不一定使用break语句 B:break语句只能用于switch语句。 C:在switch语句中必须使用default

D:break语句必须与switch语句中的case配对使用 答案:A

下列语句应将小写字母转换为大写字母,其中正确的是( )。 答案:D

若x和y代表整型数,以下表达式中不能正确表示数学关系|x-y|<10的是( )。

A:fabs(x-y)<10

B:x-y>-10 && x-y<10 C:(x-y)*(x-y)<100

D:(x-y)<-10||!(y-x)>10 答案:D

下列说法错误的是( )。

A:case后面的表达式不能是含有变量的关系表达式和逻辑表达式,它不能像if语句那样起到判断表达式真假的作用。

B:每个case后的“常量表达式”的类型应该与switch后括号内表达式的类型一致。

C:case后的“常量表达式”的类型只能是整型。

D:若所有的case常量都不能与表达式的值相匹配,那么就执行default后面的语句。通常用于处理不在合理区间内的非法数据。 答案:C

第三章测试

1. int i=1,sum=0;while(i<=10) { sum=sum+i; i++;}printf(“sum=%d”,sum);得到

的结果为( )。 A:45 B:11 C:55 D:0 答案:C

2. 以下关于for语句的格式描述错误是( )。

A:for(i=0,j=100 ; i<=j ) k=i+j;

B:for (sum=0 ; i<=100; i++) sum=sum+i; C:for(i=0,j=100 ; i<=j; i++,j– ) k=i+j;

D:for(sum=0,i=1 ; i<=100; i++) sum=sum+i; 答案:A

3. for(表达式1;表达式2;表达式3) 一个或两个或三个表达式均可以省略( )

A:错 B:对 答案:B

4. 用while和do—while循环时,循环变量初始化的操作应在while和do—

while语句之前完成。( ) A:错 B:对 答案:B

5. for语句可以在表达式1中实现循环变量的初始化。( )

A:错 B:对 答案:B

6. for(i=1;i<=100;i++) sum=sum+i;等价于i=1;while(i<=100){ sum=sum+i; i++; }

( ) A:错 B:对 答案:B

7. 下列说法错误的是( )。

A:break语句结束整个循环过程,需要判断执行循环的条件是否成立。 B:只希望提前结束本次循环,而接着执行下次循环,这时可以用continue语句。

C:break语句只能用于循环语句和switch语句之中,而不能单独使用。 D:break语句可以用来从循环体内跳出循环体,即提前结束循环。 答案:A

第四章测试

1. 在一个函数定义中,函数体的格式是一条复合语句。( )

A:对 B:错 答案:A

2. 一个函数必须返回一个值,不允许定义不返回任何值的函数。( )

A:对 B:错 答案:B

3. 在一个函数定义中,参数表中的参数定义之间是采用分号分开的。( )

A:错 B:对 答案:A

4. 函数调用参数表中的每个实参只能是常量或变量。( )

A:错 B:对 答案:A

5. 在C语言程序中,主函数也可以成为递归函数。( )

A:错 B:对 答案:A

6. 函数定义格式中的参数表被称为形参表。( )

A:错 B:对 答案:B

7. 对于标识为static属性的变量,若没有对它进行初始化,则默认的初值为0。

( ) A:错 B:对 答案:B

8. 在C语言的函数调用中,如果普通变量作为函数的参数,则调用函数时

( )。

A:实参和形参共用一个存储单元

B:由计算机系统确定是否共用一个存储单元 C:由用户确定是否共用一个存储单元

D:实参和形参分别占用一个的存储单元 答案:D

9. 在C语言的函数调用中,如果普通变量作为函数的实参,则它与对应形参

之间的传递方式是( )。 A:由用户指定传递方式

B:由实参传递给形参,再由形参传递给实参 C:地址传递 D:单向值传递 答案:D

第五章测试

1. 1字符数组的输入可通过逐个字符的方式,也可将整个字符串一次输入。

( ) A:对 B:错 答案:A

2. strcmp()是字符串连接的函数。( )

A:对 B:错 答案:B

3. strlen函数的作用是测试字符串长度( )

A:错 B:对 答案:B

4. 在定义数组并对其中各元素赋值后,就可以引用数组中的元素。( )

A:错 B:对 答案:A

5. 二维数组赋值需要借助循环语句( )

A:对 B:错 答案:A

6. 一维数组按行存贮,二维数组按列存贮( )

A:对 B:错 答案:B

7. int a[10]={0,1,2,3,4,5,6,7,8,9};a[7]元素值7。( )

A:对 B:错 答案:A

8. 若有定义:int a[][3]={1,2,3,4,5,6,7,8,9}; ,则a数组的行数为( )。

A:2 B:1 C:3

D:不能确定 答案:C

9. C语言中,数组名代表( )。

A:数组首地址 B:数组元素的个数 C:数组第一个元素的值 D:数组全部元素的值 答案:A

10. int a[ ]={5,8,7,6,2,7,3};数组a的长度是( )。

A:7 B:5 C:6 D:8 答案:A

第六章测试

1. 假定一个数据对象为x,则x的地址表示为*x。( )

A:错 B:对 答案:A

2. 一个指针指向一个数据对象时,指针值是这个对象的首字节地址。( )

A:对 B:错 答案:A

3. 假定p所指对象的值为25,p+1所指对象的值为42,则表达式*++p的值

为42。( ) A:错 B:对 答案:B

4. 指针变量的基类型用来指定此指针变量可以指向的变量的类型。( )

A:错 B:对 答案:B

5. 如果已经定义int x;,则对指针变量pointer进行说明和初始化正确的是

( )。

A:int pointer = B:int pointer = x;

C:int pointer = x; D:int *pointer = 答案:D

6. 如果已经定义int x, pointer;,则下面赋值语句正确的是( )。

A:pointer = B:pointer = x; C:pointer = D:pointer = x; 答案:A

7. 即使两个指针变量的类型相同,它们也不能( )。

A:比较 B:相加 C:相减

D:指向同一地址 答案:B

第七章测试

1. 结构体中的成员变量可以类型不同,共用体变量类型必须相同。( )

A:对 B:错 答案:B

2. 使几个不同的变量占用同一段内存空间的结构称共用体。( )

A:错 B:对 答案:B

3. 结构体变量占用空间为所有成员空间最大的那个。( )

A:对 B:错 答案:B

4. 共用体变量占用空间为所有成员空间最大的那个。( )

A:对 B:错 答案:A

5. 结构体指针变量可以指向共用体类型变量。( )

A:错 B:对 答案:A

6. struct Student{long int num;char name[20];char sex;float score}a={10101,“Li

Lin”,‘M’, 678.5};以上结构体赋值中,“10101”赋值给( )。 A:a.name B:a.num

C:a.sex D:a.score 答案:C

7. struct Person{char name[20];int count;}leader[3]={“Li”,0,“Zhang”,0,“Sun”,0};

以上结构体定义中,结构体数组名是( )。 A:leader B:leader[3] C:struct D:Person 答案:A

8. struct Student{int num;char name[20];char sex;int age;float score;}s1;以上结

构体定义中,Student为( )。 A:结构体名 B:变量的值 C:变量名

D:结构体的值 答案:A

第八章测试

1. 在定义指针变量的语句“int *p,pp;”中,p和pp具有相同的指针类型。( )

A:对 B:错 答案:B**

2. 向文本文件中输出数据时,需要调用系统函数fputc()或fputs()。( )

A:对 B:错 答案:A

3. 在数据文件打开方式字符串中,字符加号(+)只用于打开二进制文件的方式

中,不能用于打开文本文件的方式中。( ) A:对 B:错 答案:B

4. 在数据文件打开方式字符串中,字符r、w和a具有确定的含义,分别代表

读、写和追加方式。( ) A:对 B:错 答案:A

5. 在C语言中,下面关于文件的存取方式正确的叙述是( )。

A:不可以顺序存取,但可以随机存取 B:只能从文件的开头存取

C:可以顺序存取,也可以随机存取

6.

7.

8.

9.

10.

D:可以顺序存取,但不可以随机存取 答案:C

下列关于C语言数据文件的叙述中正确的是( )。

A:文件由ASCII码字符序列组成,C语言只能读写文本文件

B:文件由数据流形式组成,可按数据的存放形式分为二进制文件和文本文件 C:文件由记录序列组成,可按数据的存放形式分为二进制文件和文本文件 D:文件由二进制数据序列组成,C语言只能读写二进制文件 答案:B

在C语言中,读写操作时会进行自动转换的文件是( )。 A:文本文件 B:二进制文件

C:二进制文件和文本文件都需要转换 D:二进制文件和文本文件都不需要转换 答案:A

在C语言中,下面关于文件操作正确的叙述是( )。 A:对文件操作时打开和关闭文件的顺序没有要求

B:对文件操作时,必须先检查文件是否存在,然后再打开文件 C:对文件操作时需要先打开文件 D:对文件操作时需要先关闭文件 答案:C

为了进行写操作而打开二进制文件wr.dat的正确写法是( )。 A:fp = fopen(“wr.dat”, “wb”); B:fp = fopen(“wr.dat”, “r”); C:fp = fopen(“wr.dat”, “w”); D:fp = fopen(“wr.dat”, “rb”); 答案:A

下面的语句中,将fp定义为文件型指针的是( )。 A:file fp; B:file fp; C:FILE fp; D:FILE fp; 答案:D

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- huatuo0.cn 版权所有 湘ICP备2023017654号-2

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务