菜鸟答题网

2021智慧树知到(山东理工大学)《C语言编程新思路》章节测试答案共14章(6)

A、#define POWER(x) x*x cainiaojianzhan.com

B、#define POWER(x) (x)*(x) 内容来自cainiaojianzhan.com

C、#define POWER(x) (x*x)

内容来自cainiaojianzhan.com

D、#define POWER(x) ((x)*(x)) 内容来自cainiaojianzhan.com

答案:D

cainiaojianzhan.com

5、在“文件包含”预处理语句的使用形式中,当#include后面的文件名用” ”(双引号)括起时,寻找被包含文件的方式是()。

内容来自cainiaojianzhan.com

A、直接按系统设定的标准方式搜索目录

内容来自cainiaojianzhan.com

B、现在源程序所在目录搜索,再按系统设定的标准方式搜索 cainiaojianzhan.com

C、仅仅搜索源程序所在目录 本文来自菜鸟建站网

D、仅仅搜索当前目录 cainiaojianzhan.com

答案:B

内容来自cainiaojianzhan.com

6、有以下程序: #define ADD(x) x+x #include "stdio.h" int main(void) { int m=1,n=2,k=3; int sum=ADD(m+n)*k; printf("sum=%d",sum); return 0; } 该程序的运行结果是()。 内容来自cainiaojianzhan.com

A、sum=9 本文来自菜鸟建站网

B、sum=10

本文来自菜鸟建站网

C、sum=12

内容来自cainiaojianzhan.com

D、sum=18

内容来自cainiaojianzhan.com

答案:B cainiaojianzhan.com

7、若有如下宏定义: #define X 5 #define Y X+1 #define Z Y*X/2 则执行以下printf语句后,输出结果是()。 int a; a=Y; printf("%d ",Z); printf("%d ",- -a); cainiaojianzhan.com

A、7 6 cainiaojianzhan.com

B、12 6 本文来自菜鸟建站网

C、12 5 内容来自cainiaojianzhan.com

D、7 5

cainiaojianzhan.com

答案:D

cainiaojianzhan.com

8、以下程序的运行结果是()。 #define MAX(A,B) (A)>(B)?(A): (B) #define PRINT(Y) printf(“Y=%d ”,Y) #include “stdio.h” int main(void) { int a=1,b=2,c=3,d=4,t; t=MAX(a+b,c+d) PRINT(t); return 0; }

内容来自cainiaojianzhan.com

A、Y=3

cainiaojianzhan.com

B、Y=7 本文来自菜鸟建站网

C、Y=0

本文来自菜鸟建站网

D、存在语法错误

内容来自cainiaojianzhan.com

答案:B 本文来自菜鸟建站网

9、以下程序的输出结果是()。 #include <stdio.h> #define MUL(x,y) (x)*y #include “stdio.h” int main(void) { int a=3,b=4,c; c=MUL(a++,b++); printf("%d",c); return 0; } 本文来自菜鸟建站网

A、12

本文来自菜鸟建站网

B、15

内容来自cainiaojianzhan.com

C、20 本文来自菜鸟建站网

D、16

cainiaojianzhan.com

答案:A

本文来自菜鸟建站网

10、用宏替代计算多项式4*x*x+3*x+2之值的函数f,正确的宏定义是()。

内容来自cainiaojianzhan.com

A、#define f(x) 4*x*x+3*x+2 内容来自cainiaojianzhan.com

B、#define f 4*x*x+3*x+2

本文来自菜鸟建站网

C、#define f(a) (4*(a)*(a)+3*(a)+2) 内容来自cainiaojianzhan.com

D、#define (4*a*a+3*a+2) f(a) cainiaojianzhan.com

答案:C 本文来自菜鸟建站网

第十二章测试

本文来自菜鸟建站网

1、C语言规定结构体变量系统分配给它的存储空间是()。 本文来自菜鸟建站网

A、该结构体中最后一个成员所需的存储空间

内容来自cainiaojianzhan.com

B、该结构体中所有成员所需存储空间的总和

内容来自cainiaojianzhan.com

C、该结构体中第一个成员所需的存储空间

本文来自菜鸟建站网

D、该结构体中占用最大存储空间的成员所需的存储空间 内容来自cainiaojianzhan.com

答案:B

cainiaojianzhan.com

2、以下对结构体变量s 中成员age的合法法引用是()。 #include<string.h> struct student {int age; int num; } s,*p; p=&s; 内容来自cainiaojianzhan.com

A、student.s.age

本文来自菜鸟建站网

B、student.age 内容来自cainiaojianzhan.com

C、p->age

内容来自cainiaojianzhan.com

D、s->age 内容来自cainiaojianzhan.com

答案:C

本文来自菜鸟建站网

3、有如下定义: struct date {int y ; int m ; int d ;}; struct person { char name[20]; char sex; struct date birthday; }a; 对结构体变量a的出生年份进行赋值时,下面正确的赋值语句是()。 内容来自cainiaojianzhan.com

A、y =1958

本文来自菜鸟建站网

B、birthday.y=1958

内容来自cainiaojianzhan.com

C、a.birthday.y =1958

内容来自cainiaojianzhan.com

D、a.y =1958

内容来自cainiaojianzhan.com

答案:C 内容来自cainiaojianzhan.com

4、设有以下说明语句 struct stu { int a; float b; }stutype; 则以下叙述不正确的是()。

cainiaojianzhan.com

A、struct 是结构体类型的关键字

cainiaojianzhan.com

B、struct stu 是用户定义的结构体类型名

cainiaojianzhan.com

C、stutype 是用户定义的结构体类型名 本文来自菜鸟建站网

D、a 和 b 都是结构体成员名 内容来自cainiaojianzhan.com

答案:B 本文来自菜鸟建站网

5、以下结构体类型说明和变量定义中正确的是()。

cainiaojianzhan.com

A、typedef struct {int n; char c;} REC; REC x,y;

内容来自cainiaojianzhan.com

B、struct REC; {int n; char c;}; REC x,y; 本文来自菜鸟建站网

C、typedef struct REC ; {int n=0; char c=’A’; } x,y; 内容来自cainiaojianzhan.com

D、struct {int n; char c; } REC x,y;

本文来自菜鸟建站网

答案:A cainiaojianzhan.com

6、下面程序的运行结果是()。 struct st { int n; int a[20]; }; void f(int *a, int n) { int i; for(i=0;i<n;i++) a+=I; } int main() { int i; struct st x={10,{2,3,1,6,8,7,5,4,10,9}}; f(x.a, x.n); for(i=0;i<s.n;i++) printf(”%d,”,x.a); } cainiaojianzhan.com

A、2,4,3,9,12,12,11,11,18,18, 内容来自cainiaojianzhan.com

B、3,4,2,7,9,8,6,5,11,10,

内容来自cainiaojianzhan.com

C、2,3,1,6,8,7,5,4,10,9, 内容来自cainiaojianzhan.com

D、1,2,3,6,8,7,5,4,10,9,

cainiaojianzhan.com

答案:A cainiaojianzhan.com

7、以下关于typedef 的叙述错误的是()。 本文来自菜鸟建站网

A、typedef只是将已存在的类型用一个新的名字来代表

内容来自cainiaojianzhan.com

B、用typedef可以增加新类型

本文来自菜鸟建站网

C、用typedef可以为各种类型说明一个新名,但不能用来为变量说明一个新名 本文来自菜鸟建站网

D、用typedef为类型说明一个新名,通常可以增加程序的可读性

内容来自cainiaojianzhan.com

答案:B

cainiaojianzhan.com

8、下面程序的运行结果是()。 #include <stdio.h> #include <string.h> typedef struct{ char name[9];char sex; float score[2]; } stu; stu f(stu a) {stu b={“zhao”,’m’,85.0,90.0}; int i; strcpy(a.name,b.name); a.sex=b.sex; for(i=0;i<2;i++) a.score=b.score; return a; } int main() {stu c={"qian",'f',95.0,92.0},d; d=f(c); printf(“%s,%c,%2.0f,%2.0f\n”,d.name,d.sex,d.score[0],d.score[1]); }

内容来自cainiaojianzhan.com

A、qian,f,95,92 cainiaojianzhan.com

B、qian,m,85,90

本文来自菜鸟建站网

C、zhao,m,85,90 内容来自cainiaojianzhan.com

D、zhao,f,95,92 内容来自cainiaojianzhan.com

答案:C cainiaojianzhan.com

9、以下程序运行后的输出结果是()。 #include <stdio.h> struct S {int n; int a[20];}; void f(struct S *p) { int i,j,t; for(i=0;i<p->n-1;i++) for(j=i+1;j<p->n;j++) if(p->a>p->a[j]) { t=p->a; p->a=p->a[j]; p->a[j]=t; } } int main() { int i; struct S s={10,{2,3,1,6,8,7,5,4,10,9}}; f(&s); for(i=0;i<s.n;i++) printf(”%d,”,s.a); } cainiaojianzhan.com

A、10,9,8,7,6,5,4,3,2,1,

cainiaojianzhan.com

B、1,2,3,4,5,6,7,8,9,10, cainiaojianzhan.com

C、2,3,1,6,8,7,5,4,10,9, 本文来自菜鸟建站网

D、10,9,8,7,6,1,2,3,4,5, cainiaojianzhan.com

答案:B

cainiaojianzhan.com

10、有以下程序段 typedef struct node { int data; struct node *next; }NODE; NODE *p; 以下叙述正确的是()。

本文来自菜鸟建站网

A、NODE *p;语句出错 内容来自cainiaojianzhan.com

B、p 是指向struct node 结构体变量的指针的指针

cainiaojianzhan.com

C、p 是struct node 结构体变量

本文来自菜鸟建站网

D、p 是指向struct node 结构体变量的指针 本文来自菜鸟建站网

答案:D 本文来自菜鸟建站网

11、若定义如下结构,则能打印出字母M的语句是()。 struct person{ char name[9]; int age;}; struct person class[10]={"Wujun",20, "Liudan",23, "Maling",21, "zhangming",22}; 内容来自cainiaojianzhan.com

A、printf("%c\n",class[3].name); 内容来自cainiaojianzhan.com

B、printf("%c\n",class[2].name[0]);

本文来自菜鸟建站网

C、printf("%c\n",class[2].name[1]); 本文来自菜鸟建站网

D、printf("%c\n",class[3].name[1]);

本文来自菜鸟建站网

答案:B

内容来自cainiaojianzhan.com

12、以下程序段的运行结果是()。 union { int n; char str[2]; }t; t.n=80; t.str[0]='a'; t.str[1]=0; printf("%d\n", t.n); 本文来自菜鸟建站网

A、80

内容来自cainiaojianzhan.com

B、a 内容来自cainiaojianzhan.com

C、0

内容来自cainiaojianzhan.com

D、97 本文来自菜鸟建站网

答案:D

内容来自cainiaojianzhan.com

13、以下对C语言中共用体类型数据的叙述正确的是()。

内容来自cainiaojianzhan.com

A、可以对共用体变量名直接赋值

本文来自菜鸟建站网

B、一个共用体变量中可以同时存放其所有的成员 内容来自cainiaojianzhan.com

C、一个共用体变量中不能同时存放其所有成员 内容来自cainiaojianzhan.com

D、共用体类型定义中不能出现结构体类型的成员

本文来自菜鸟建站网

答案:C

cainiaojianzhan.com

14、若有以下说明和定义语句,则下面引用形式中不正确的是 ()。 struct student { int age; int num; }; struct student stu[3]={{1001,20},{1002,19},{1003,21}}; struct student *p; p=stu;

cainiaojianzhan.com

A、(p++)->num cainiaojianzhan.com

B、p++

内容来自cainiaojianzhan.com

C、(*p).num 内容来自cainiaojianzhan.com

D、p=&stu.age

内容来自cainiaojianzhan.com

答案:D 本文来自菜鸟建站网

15、以下scanf函数调用语句中,对结构体变量成员的不正确引用是()。 struct pupil {char name[20 ]; int age ; int sex; }pup[5],*p; p=pup; cainiaojianzhan.com

A、scanf(“%s“,pup[0].name);

本文来自菜鸟建站网

B、scanf(“%d“,&pup[0].age); 本文来自菜鸟建站网

C、scanf(“%d“,&sex); 内容来自cainiaojianzhan.com

D、scanf(“%d“,P->age); 内容来自cainiaojianzhan.com

答案:C 内容来自cainiaojianzhan.com

16、当说明一个共用体变量时系统分配给它的内存是()。 本文来自菜鸟建站网

A、各成员所需内存量的总和 内容来自cainiaojianzhan.com

B、结构中第一个成员所需内存量 内容来自cainiaojianzhan.com

C、成员中占内存量最大者所需的容量 内容来自cainiaojianzhan.com

D、结构中最后一个成员所需内存量

内容来自cainiaojianzhan.com

答案:C cainiaojianzhan.com

17、设有以下说明,则下面不正确的叙述是()。 union data { int i; char c; float f; }un; cainiaojianzhan.com

A、un所占的内存长度等于成员f的长度 内容来自cainiaojianzhan.com

B、un的地址和它的各成员地址都是同一地址 内容来自cainiaojianzhan.com

C、un可以作为函数参数

cainiaojianzhan.com

D、不能对un赋值,但可以在定义un时对它初始化 内容来自cainiaojianzhan.com

答案:C

cainiaojianzhan.com

18、定义结构体类型变量teach1,不正确的是()。

内容来自cainiaojianzhan.com

A、struct teacher {int num; int age; }; struct teacher teach1;

cainiaojianzhan.com

B、struct teacher {int num; int age; }teach1;

cainiaojianzhan.com

C、struct {int num; int age; }teach1; 本文来自菜鸟建站网

D、struct {int num; int age; }teacher; struct teacher teach1; cainiaojianzhan.com

答案:D 内容来自cainiaojianzhan.com

19、下面程序的运行结果是()。 #include <stdio.h> union data { int i; char c; double d; }a[2]; void main() {printf("%d\n",sizeof(a)); }

本文来自菜鸟建站网

A、16 内容来自cainiaojianzhan.com

B、8 cainiaojianzhan.com

C、4 cainiaojianzhan.com

D、2

本文来自菜鸟建站网

答案:A

内容来自cainiaojianzhan.com

20、以下对结构体变量stul中成员age的非法引用是()。 struct student {int age; int num; }stul,*p; p=&stul; cainiaojianzhan.com

A、stul.age 内容来自cainiaojianzhan.com

B、student.age

cainiaojianzhan.com

C、p->age

cainiaojianzhan.com

D、(*p).age 本文来自菜鸟建站网

答案:B cainiaojianzhan.com

第十三章测试 cainiaojianzhan.com

1、运行下列程序,输出结果为()。 #include <stdio.h> int main() { int x=040; printf("%d\n",x=x<<1); return 0;} cainiaojianzhan.com

A、100 内容来自cainiaojianzhan.com

B、160

内容来自cainiaojianzhan.com

C、120 本文来自菜鸟建站网

D、64 内容来自cainiaojianzhan.com

答案:D

本文来自菜鸟建站网

2、如有short int a,b,若要通过a=a&b使a的低8位置0,高8位不变,则b应该是()。 本文来自菜鸟建站网

A、0xff00 内容来自cainiaojianzhan.com

B、0x0000 本文来自菜鸟建站网

C、0x00ff

内容来自cainiaojianzhan.com

D、0xffff cainiaojianzhan.com

答案:A

内容来自cainiaojianzhan.com

3、下列描述正确的是()。 本文来自菜鸟建站网

A、用C语言可直接进行位运算,因此C语言是一种低级语言。 内容来自cainiaojianzhan.com

B、参加位运算的数据可以是任何类型的数据。

内容来自cainiaojianzhan.com

C、在一个数左移时被溢出的高位中不包含1的情况下,左移1位相当于该数乘以2。

cainiaojianzhan.com

D、有表达式y=~5,则y的值等于-5. 本文来自菜鸟建站网

答案:C

本文来自菜鸟建站网

4、若有short int a=0x5566; 则执行a= a|0xff00 后,a的值是()。 内容来自cainiaojianzhan.com

A、0x5500

本文来自菜鸟建站网

B、0x0066 内容来自cainiaojianzhan.com

C、0x5566 内容来自cainiaojianzhan.com

D、0xff66 本文来自菜鸟建站网

答案:D

内容来自cainiaojianzhan.com

5、a为任意整数,能将变量a清零的表达式为()。

内容来自cainiaojianzhan.com

A、a=~a 本文来自菜鸟建站网

B、a=a^a 本文来自菜鸟建站网

C、a=a&a

cainiaojianzhan.com

D、a=a|a

cainiaojianzhan.com

答案:B 内容来自cainiaojianzhan.com

6、如有short int a,b; ,若要通过a=a|b使a的低8位置1,高8位不变,则b应该是 ()。 本文来自菜鸟建站网

A、0xff00 cainiaojianzhan.com

B、0x0000

本文来自菜鸟建站网

C、0x00ff cainiaojianzhan.com

D、0xffff

内容来自cainiaojianzhan.com

答案:C cainiaojianzhan.com

7、运行下列程序,输出结果为()。 #include <stdio.h> int main() { printf("%d\n",12>>2); return 0; }

cainiaojianzhan.com

A、0

本文来自菜鸟建站网

B、1

内容来自cainiaojianzhan.com

C、3 内容来自cainiaojianzhan.com

D、4

内容来自cainiaojianzhan.com

答案:C

本文来自菜鸟建站网

8、若有short int a=0x5566; 则执行a= a&0x00ff 后,a的值是()

本文来自菜鸟建站网

A、0x0066 cainiaojianzhan.com

B、0x5500 内容来自cainiaojianzhan.com

C、0x00ff 内容来自cainiaojianzhan.com

D、0x5566 本文来自菜鸟建站网

答案:A

cainiaojianzhan.com

9、表达式5+3<<2的值为()。 cainiaojianzhan.com

A、32

内容来自cainiaojianzhan.com

B、17

内容来自cainiaojianzhan.com

C、16

本文来自菜鸟建站网

D、11 内容来自cainiaojianzhan.com

答案:A cainiaojianzhan.com

10、若有short int a=0x7700; ,则执行a=a^0x00ff后,a的值是()。

cainiaojianzhan.com

A、0x0000

cainiaojianzhan.com

B、0x7700

内容来自cainiaojianzhan.com

C、0x77ff cainiaojianzhan.com

D、0xffff 内容来自cainiaojianzhan.com

答案:C cainiaojianzhan.com

第十四章测试 本文来自菜鸟建站网

1、关于文件,下列理解不正确的是()。

本文来自菜鸟建站网

A、C语言把文件看作是字节的序列,即由一个个字节数据顺序组成

cainiaojianzhan.com

B、所谓文件一般指存储在外部介质上数据的集合

cainiaojianzhan.com

C、系统自动在内存区为每一个正在使用的文件开辟一个缓冲区

以上相关的更多内容请点击智慧树知到查看,该题目的答案为网上收集整理仅供参考!

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。


展开《问答》更多﹀

Tags:智慧树   山东理工大学   章节测试答案   智慧树知到   C语言编程新思路  

相关内容

热点文章

Copyright © 2019-现在 Cainiaojianzhan.com. 菜鸟答题网
联系方式 E-mail:h2014vivi#163.com
ICP备案号:渝ICP备17001729号-1 | 渝公网安备 50022602000627号