1、国家二级( C语言)笔试模拟试卷 255 及答案与解析 1 一个关系中属性个数为 1时,称此关系为 ( A)对应关系 ( B)单一关系 ( C)一元关系 ( D)二元关系 2 在软件生存周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是 ( )。 ( A)概要设计 ( B)详细设计 ( C)可行性分析 ( D)需求分析 3 下列程序的输出结果是 _。 #include stdio.h main() int i, j, k, a=3,b=2; i=(-a=b+)?-a; +b; j=a+; k=b; printf(“i=%d, j=%d, k=%dn“,i, j, k); ( A)
2、 i=2, j=1, k=3 ( B) i=1, j=1, k=2 ( C) i=4, j=2,k=4 ( D) i=1, j=1, k=3 4 在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。其中数据独立性最高的阶段是 ( A)数据库系统 ( B)文件系统 ( C)人工管理 ( D)数据项管理 5 下列有关数据库的描述,正确的是 ( ) ( A)数据库是一个 DBF文件 ( B)数据库是一个关系 ( C)数据库是一个结构化的数据集合 ( D)数据库是一组文件 6 一棵二叉树中共有 70个叶子结点与 80个度为 1的结点,则该二叉树中的总结点数为 ( )。 ( A
3、) 221 ( B) 219 ( C) 231 ( D) 229 7 在数据库设计的 4个阶段;为关系模式选择存取方法应该在 ( A)需求分析阶段 ( B)概念设计阶段 ( C)逻辑设计阶段 ( D)物理设计阶段 8 某二叉树共有 60个叶子结点与 50个度为 1的结点,则该二叉树中的总结点数为( )。 ( A) 148 ( B) 169 ( C) 182 ( D) 198 9 下列特征中不是面向对象方法的主要特征的是 ( )。 ( A)多态性 ( B)继承 ( C)封装性 ( D)模块化 10 下列程序的输出结果是 _。 main() int i=3; switch(i) case 1: c
4、ase2:printf (“%d“,i) case3: case4:break; default:printf(“OK“); ( A) 0 ( B) 3 ( C) OK ( D)没有任何输出 11 有以下程序: main() int m, n, p; scanf(“m=% dn=% dp=% d“, printf(“% d % d % dn“, m, n, p); 若想从键盘上输入数据,使变量 m中的值为 123, n中的值为 456, p中的 值为 789,则正确的输入是 _。 ( A) m=123n=456p=789 ( B) m=123 n=456 p=789 ( C) m=123, n
5、=456, p=789 ( D) 123 456 789 12 数字字符 0的 ASCII值为 48,若有以下程序: main() char a=1,b=2; printf(“%c,“,b+); printf(“%dn“,b-a); 程序运行后的输出结果是 _。 ( A) 3,2 ( B) 50,2 ( C) 2,2 ( D) 2,50 13 下列选项中,不属于数据管理员 (DBA)职责的是 ( )。 ( A)数据库维护 ( B)数据库设计 ( C)改善系统性能,提高系统效率 ( D)数据类型转换 14 C语言中的标识符分为关键字、预定义标识符和用户标识符,以下叙述正确的是 ( )。 ( A)
6、预定义标识符 (如库函数中的函数名 )可用做用户标识符,但失去原有含义 ( B)用户标识符可以由字母和数字任意顺序组成 ( C)在标识符中大写字母和小写字母被认为是相同的字符 ( D)关键字可用做用户标识符, 但失去原有含义 15 在 ASCII代码表中每一个大写字母比它相应的小写字母的 ASCII码 ( )。 ( A)小 32 ( B)小 64 ( C)大 32 ( D)大 1 16 ( A) (a+b)*h/2 ( B) (1/2)*(a+b)*h ( C) (a+b)*h*1/2 ( D) h/2*(a+b) 17 下列程序的输出结果是 _。 main() char*s=“1221“;
7、int k=0,a=0,b=0; do if(k%2=0) a=a+sk-0; continue; b=b+sk-0; while(s+k); printf(“k=%d a=%d b=%dn“,k,a,b); ( A) k=3 a=4 b=3 ( B) k=3 a=3 b=3 ( C) k=4 a=3 b=3 ( D) k=4 a=2 b=3 18 能将高级语言程序转换成目标语言程序的是 _。 ( A)调试程序 ( B)解释程序 ( C)编译程序 ( D)编辑程序 19 不是面向对象程序设计的可维护性的优点的是 ( ) ( A)用面向对象的方法开发的软件稳定性比较好 ( B)易于移植 ( C)
8、易于和调试 ( D)用面向对象的方法开发的软件比较容易理解 20 一个算法应该具有 “确定性 ”等 5个特性,下面对另外 4个特性的描述中错误的是 ( ) ( A)有零个或多个输入 ( B)有零个或多个输出 ( C)有穷性 ( D)可行性 21 若有定义: int a23;,以下选项中对 a数组元素正确引用的是 ( A) a2!1 ( B) a23 ( C) a03 ( D) a1 2!1 22 算法具有五个特性,以下选项中不属于算法特性的是 ( )。 ( A)有穷性 ( B)简洁性 ( C)可行性 ( D)确定性 23 有以下程序: #include stdio.h void fun(cha
9、r*t,char*s) while(*t!=0)t+; while(*t+=*s+)!=0); main() char ss10=“acc“,aa10=“bbxxyy“; fun(ss,Aa); printf(“%s,%sn“,ss,Aa); 程序的运行结果是 ( )。 ( A) accxyy, bbxxyy ( B) acc,bbxxyy ( C) accxxyy,bbxxyy ( D) accbbxxyy,bbxxyy 24 以下程序运行后的输出结果是 _。 ss(char*s) char*p=s; while(*p)p+; return(p-s); main() char*a=“abde
10、d“; int i; i=ss(a); printf(“%dn“, i); ( A) 8 ( B) 7 ( C) 6 ( D) 5 25 不合法的 main函数命令行参数表示形式是 ( A) main(inta,char *c) ( B) mmn(int arc,char *arv) ( C) main(int argc, char *argv) ( D) majn(int argv, char *atgc) 26 有以下程序 float fl(float n) return n*n; float f2(float n) return 2*n; main() float(*p1)(float)
11、, (*p2)(float), (*t)(float), y1, Y2; p1=f1; p2=f2; y1=p2(p1(2.O); t=p1; p1=p2; p2=t; y2=p2(pl(2.0); printf(“%3.0f, %3, Ofn“, y1, y2); 程序运行后的输出结果是 ( A) 8, 16 ( B) 8, 8 ( C) 16, 16 ( D) 4, 8 27 若有定义; int w35;,则以下不能正确表示该数组元素的表达式是 ( )。 ( A) *(*w+3) ( B) *(w+1)4 ( C) *(*(w+1) ( D) *( strcpy(str+2,strcat(
12、p1,p2); printf(“%sn“, str); ( A) xyzabcABC ( B) zabcABC ( C) yzabcABC ( D) xyabcABC 29 若已建立如下图所示的单向链表结构:在该链表结构中,指针 p、 s分别指向图中所示结点,则不能将 s所指的结点插入到链表末尾仍构成单向链表的语句组是 _。 ( A) p=p- next; s- next=p; p- next=s; ( B) p=p- next; s- next=p- next; p- next=s; ( C) s- next=NULL; p=p- next; p- next=s; ( D) p=(*p).n
13、ext; (*s).next=(*p).next; (*p).next=s; 30 若有以下定义的语句: struct student int age; int num; ; struct student stu3=1001, 20, 1002, 19, 1003, 21; main() struct student *p; p=stu; 则以下不正确的引用是 ( )。 ( A) (p+)- num ( B) p+ ( C) (*p).num ( D) P= int age; ; struct person class10=“John“,17,“Paul“,19,“Mary“,18,“Adam
14、“,16; ( A) printf(“%cn“,class3.name; ( B) printf(“%cn“,class2.name0); ( C) printf(“%cn“,class3.name1); ( D) printf(“%cn“,class2.name1); 34 以下程序中函数 scmp的功能是返 回形参指针 s1和 s2所指字符串中较小字符串的首地址 #include stdio.h #include string.h char *scmp(char *s1,char *s2) if(strcmp(s1,s2) 0) return(s1); else return(s2); m
15、ain() int i;char string20,str320; for(i=0;i 3;i+)gets(stri); strcpy(string, scmp(str0,str1); /*库函数 strcpy对字符串进行复制 */ strcpy(string, scmp(string, str2); printf(“%sn“,string); 若运行时依次输入: abcd、 abba和 abc三个字符串,则输出结果为 ( A) abcd ( B) adba ( C) abc ( D) abca 35 已有定义: int x=3, y=4, z=5,则表达式 !(x+y)+z-1 while(
16、i N) scanf(“%d“,_); 在下划线处应填入的是 ( A) x+i ( B) if(n=1)(n=2) s=2; else s=n+fun5(n-1); return(s); main() long x; x=fun5(4); printff“%1dn“,x); 46 在面向对象方法中,对象之间进行通信的构造称为 ( )。 47 以下程序的输出结果是【 】。 main() char s=“ABCD“, *p; for(p=s+1; p main() int i; for(i=a;if;i+,i+)printf(“%c“,i-a+A); printf(“n“); 50 下面程序的运行
17、结果是 _。 #include stdio.h main() int i, f10; f0=f1=1; for(i=2; i 10; i+) fi=fi-2+fi-1; for(i=0; i 10; i+) if(i%4=0)printf(“n“); printf(“%3d“, fi); 51 以下程序输出的最后一个值是 _。 int ff(int n) static int f=1; f=f*n; return f main() int i; for(i=1; i =5; i+) printf(“%d “, ff(i); 52 下列程序的输出结果是【 】。 int t(int x, int
18、y, int cp, int dp) cp=x*x+y*y; dp=x*x-y*y; main () int a=4, b=3, c=5, d=6; t (a,b, c,d); printf(“%d %d n“,c,d); 53 以下程序输出的结果是【 】。 main() int a=5, b=4, c=3, d; d=(a b c); printf(“%dn“, d); 54 以下程序运行后的输出结果是【 】。 #define S(x) 4*x*x+1 main() int i=6,j=8; printf(“%dn“, s(i+j); 55 以下涵数 rotate的功能是:将 a所指 N行
19、N列的二维数组中的最后一行放到 b所指二维数组的第 0列中,把 a所指二维数组中的第 0行放到 b所指二维数组的最后一列中, b所指二维数组中其他数据不变。 #define N 4 void rotade(int aN, int bN) int i, j; for(i=0; i N; i+) biN-1=【 】;【 】 =aN-1i; 国家 二级( C语言)笔试模拟试卷 255 答案与解析 1 【正确答案】 C 【试题解析】 在关系模型数据库中,基本结构是二维表,这种二维表称为关系。关系的列称为属性,一个具有 N个属性的关系称为 N元关系。 2 【正确答案】 D 【试题解析】 在需求分析阶段中
20、,根据可行性研究阶段所提交的文档,特别是从数据流图出发,对目标系统提出清晰、准确和具体的要求,即要明确系统必须做什么的问题。 3 【正确答案】 D 4 【正确答案】 A 【试题解析】 人工管理阶段是在 20世纪 50年代中期以前出现的, 数据不独立,完全依赖于程序;文件系统是数据库系统发展的初级阶段,数据独立性差;数据库系统具有高度的物理独立性和一定的逻辑独立性。 5 【正确答案】 C 6 【正确答案】 B 【试题解析】 二叉树中,叶子结点总比度为 2的结点多 1个,本题二叉树有 70个叶子结点,所以有 70-1即 69个度为 2的结点。总结点数为:度为 2的结点数 +度为 1的结点数 +度为
21、 0的结点数 =69+80+70=219。 7 【正确答案】 D 【试题解析】 需求分析阶段是分析用户的需求,显然不属于这个阶段。概念设计是将需求分析 得到的用户需求抽象为信息结构及概念模型的过程,涉及不到数据的存取。逻辑设计是在概念设计的基础上将 E-R图转换成数据库管理系统的逻辑数据模型表示的逻辑模式,也不涉及存取问题。 8 【正确答案】 B 【试题解析】 叶子结点总是比度为 2的结点多一个。所以,具有 60 个叶子结点的二叉树有 59个度为 2的结点。总结点数 =60个叶子结点 +59个度为 2的结点 +50个度为 1的结点 =169个结点。 9 【正确答案】 D 【试题解析】 面向对象
22、设计方法与面向过程设计方法有本质的不同,其基本原理是,使用现实世界 的概念抽象地思考问题从而自然地解决问题。其特点包括:分类性、多态性、封装性、模块独立性、继承和多态性等。模块化是结构化程序设计的特点。 10 【正确答案】 D 【试题解析】 在题中, i的值为 3,由于 “case 3:”后面没有 break 语句,所以继续向下执行 “case 4”后面的语句,由于 “case 4: ”后面的语句为 break 强行退出switch 语句,所以,本题没有任何输出。 11 【正确答案】 A 【试题解析】 输入变量的值的时候,输入的格式要和输入语句中那些控制格式字符串的格式一致 。 12 【正确答
23、案】 C 【试题解析】 b+是先使用 b 再给 b 赋值 1,因此是先输出 2,再将 b 加 1,b=3,则第一条语句输出 2,第二条语句输出 2。 13 【正确答案】 D 14 【正确答案】 A 【试题解析】 用户标识符不能以数字开头, C语言中标识符是区分大小写的,关键字不能用做用户标识符。 15 【正确答案】 A 【试题解析】 本题考查大小写字母的 ASCII码值的关系。大写字母比它相应的小写字母的 ASCII 码小 32。 16 【正确答案】 B 【试题解析】 由 于 1和 2都是整型,选项 B中 1/2的运算结果为 0,故整个表达式的值为 0,所以它的结果和题目中要求的代数式的计算结
24、果不相符。 17 【正确答案】 C 【试题解析】 将数字字符串中下标值能被 2整除的元素值 (字符 )转换为数字累加到变量 a中,将数字字符串中下标值不能被 2整除的元素值 (字符 )转换为数字累加到变量 b 中,循环结束时, a、 b 的值均为 3, k 是字符结束符的下标值,为 4。 18 【正确答案】 C 【试题解析】 用高级语言编写的程序称为 “源程序 ”;而计算机只能识别和执行由0和 1组成的二进制指令,所 以高级语言必须先用一种称为 “编译程序 ”的软件,把源程序翻译成二进制形式的 “目标程序 ”。 19 【正确答案】 B 20 【正确答案】 B 【试题解析】 算法应具有的 5个特
25、性:有穷性,确定性,可行性,有零个或多个输入,有一个或多个输出。 21 【正确答案】 D 【试题解析】 C语言中数组下标是从 0开始的,所以二维数组 a23的第一维下标取值为 0、 1;第二维的下标取值为 0、 1、 2,因而选项 A)、 B)、 C)都是错误的,选项 D)表示数组元素 a00。 22 【正确答案】 B 【试题解析】 一个算法应该具有以下 5个特性:有穷性、确定性、可行性、有零个或多个输入、有一个或多个输出。 23 【正确答案】 D 【试题解析】 本题考查的重点是数组与指针的关系。函数 fun()中用两个指针来访问实参的两个数组。而函数 fun 的功能是将第二个字符串合并到第一
26、个的末尾,因此选项 D是正确的。 24 【正确答案】 D 25 【正确答案】 C 【试题解析】 main()函数可以带有参数,并且参数只能有两个,第一个参数类型为整型,用来记下命令行的参数个数,第二个参数为一个字符 型指针数组,或字符型二级指针变量 (指向一个数组,数组元素又是一个一级字符指针 ),其各个元素用来记下从命令行各参数字符串的首地址故本题只有 C选项不符合要求。所以, 4个选项中 C为所选。 26 【正确答案】 A 【试题解析】 题目一开始定义了两个函数, f1()实现的是返回参数的平方; f2()实现的是返回参数的 2倍。接下来在主函数中定义了三个函数指针 p1,p2,t。语句p
27、1=f1; p2=f2;让指针 p1指向函数 n(), 指针 p2指向函数 9()。 然后调用 p2(p1(2.0),即让 2先平方再乘以 2,结果为 8并赋给 y1。然后语句序列 t=p1;p1=p2; p2=t;交换了 p1和 p2的值, 即 p1指向 f2(), p2指向 f1()。再调用 p2(p1(2.0),让 2先乘以 2再平方,结果为 16 赋给 y2最后输出 y1,y2的值为 8和 16,应该选择 A。 27 【正确答案】 B 【试题解析】 通过 维数组名或指向维数组元素的指针来引用数组元素有两种写法: ai和 *(a+i),它们是等价的。这是一种运算符之间的等价转换,就好像
28、a-(b-C) 等价于 a-b+c一样。知道了这种转换,我们可以将之扩展到二维 数组甚至任意维数组上来。因为 运算符的结合性是从左至右的,所以 wij等价于 (wij,此时可以先将任意一个 运算符转换为指针形式为: (*(w+i)j或 *(wi+j),或者同时转换: *(*(w+i)+j)。上述几种形式都完全等价于 wij。选项 A中, *(*w+3)可以看成 *(*(w+0)+3),即 w03,是正确的。选项 B 小,因为 运算符的优先级高于 *运算符,所以 *(w+1)4等价于 *(w+1)4等价于 *(*(w+1)+4),即 *(*(w+5)+0),它等价于 w50,很明显它超过数组的范
29、围了,故不正确。选项 C等价于 w10,是下确的。选项 D中, &w00是数组 w第 1个元素的地址,它等价于&*(*(w+0)+0),外面的 &和 *可以抵消,就好像先乘以个数,然后再除以这个数一样。所以, &w00等价于 *(w+0)+0。即 *w。所以原式就变为 *(*w+1)等价于w01,这个也是合法的。综上所述,本题应该选择 B。 28 【正确答案】 D 【试题解析】 strcat(p1,p2)将字符串 abcABC放到了 *p1所指向的存储单 元中;strcpy在本题将 abcABC复制到 sir+2所指向的存储单元中,即覆盖原 str数组中的字符 z及其后的所有字符,故 str的
30、值为 “xyabcABC”。 29 【正确答案】 A 【试题解析】 在答案 A中: p=p- next; s- next=p; p- next=s; s的确已插到了链表的末尾,但它的 next却并没有为 NULL,而是指向了它的直接前趋 p,这样它就不是一个单向链表 (单向链表最后一个结点的 next指针一定是一个NULL)。 30 【正确答案】 D 【试题解析】 结构体成员的引用 可以用 “结构体变量名成员名 ”或者 “结构体变量指针 -成员名 ”两种方式来引用。注意:结构体类型的变量、数组和指针变量的定义。 31 【正确答案】 B 32 【正确答案】 B 33 【正确答案】 B 【试题解析
31、】 在结构体数组 class10的初始化列表中只有第 5个初始值中包含大写字母 M,而该结构体只有两个成员变量,所以每两个初始值初始化一个数组元素,故第 5个初始值是属于第 3个数组元素 class2的前一个成员变量的,选项 A和 C不正确。又因为 M是 “Mary”的第一个元素,所以应该输出 class2的name0, B 是正确答案。 34 【正确答案】 A 【试题解析】 字符串比较大小的标准是从第一个字符开始依次向右比较,遇到某一个字符 ASCII码值较大时,该字符所在的字符串就是较大的字符串。主函数中调用了函数 scmp(),分析不难知道该函数的作用是返回参加比较的两个字符串中的较小的
32、字符串,它的主函数中定义了一个二维字符数组来存放三个字符串。接着通过 for循环给每个字符串赋值,赋值后三个字符串分别为 “abcd”、 “abba”、“abc”,接着比较 str0和 str1的大小 ,根据字符串大小比较标准可知 str0较小,然后通过函数 strcpy()把 str0中的字符串,拷贝到 string 中,然后比较 string和 str2)的大小,比较结果是 string较小,最后输出 string的值为 “abcd”。 35 【正确答案】 D 【试题解析】 本题中, &左边的表达式 !(x+y)为 !(3+7),结果为假,即为 0。再加上 z,然后减 1,相当于 0+5-
33、1。左边等于 4, &右边的表达式 y+z/2相当于4+5/2为 6,所以整个表达式相当于 4&6为真,即为 1。 36 【正确答 案】 A 【试题解析】 本题首先定义两个字符型指针变量 p和 q,通过 malloc()函数申请 20个字符的存储空间,并把它的首地址赋给 p,再把 p 的值赋给 q, p和 q 指向同一个存储区。在 scanf()语句中读取字符串到 p和 q 指向的字符串,先把 “abc”读取到 P指向的存储区中,第一个空格是结束标记,第二个空格是分隔符,再把 “def”存放到 q 指向的存储区,把原先的内容覆盖。所以 p和 q 指向的存储区中内容是“def”,所以最后输出为
34、def,def。 37 【正确答案】 D 【试题解析】 “|”为或运算符 ,当其左右表达式中只要一个为非零则整个表达式的值 1。是按位或, &是按位与, 是按位异或,这三位运算符是按值的二进制位来比较的。 38 【正确答案】 D 39 【正确答案】 C 40 【正确答案】 A 【试题解析】 因为变量的初始值分别为 “k=5, n =0”,所以程序第一次进入循环时,执行 default 语句,这时 k=4,执行 “case 4: ”这个分支,结果是 “n=2,k= 3”,打印出 2;程序然后进行第二次循环,这时 “n=2, k =3”,执行 “case 3: ”这个分支,结果是 “n=3, k=
35、2”,打印出 3;程序进行第三次循环,这时“n=3, k=2”,执行 “case 2: case 4: ”这两个分支,结果是 “n=5, k=1”,打印出 5,这时因为 n=5 不满足 n 5的循环条件,因此退出循环,程序运行结束。因此输出结果是 235。 40 【试题解析】 所谓排序是指将一个无序序列整理成按值非递减顺序排列成的有序序列,常用的排序方法有:交换排序、插入排序和选择排序。其中交换排序包括冒泡排序和快速排序,插入排序包括简单插入排序和希尔排序,选择排序包括直接选择排序和堆排序。 41 【正确答案】 存储结构 【试题解析】 数据的逻辑结构是指反映数据元素之间逻辑关系的数据结构;数据
36、的存储结构是指数据的逻辑结构在计算机存储空间中的存放形式。在数据的存储结构中,不仅要存放各数据元素的信息,还需要存放各数据元素之间前后件关系的信息。 42 【正确答案】 空间 【试题解析】 算法的复杂度主要包括时间复杂度和空间复杂度。所谓算法的时间复杂度,是指执行算法所需要的计算工作量。一个算法的空间复杂度,一般是指执行这个算法所需要的内存空间。 43 【正确答案】 格式化模型 【试题解析】 层次模型与网状模型 属于格式化模型。 44 【正确答案】 逻辑关系 【试题解析】 数据元素之间逻辑关系的整体称为逻辑结构。数据的逻辑结构就是数据的组织形式。 45 【正确答案】 9 【试题解析】 考查 i
37、f else语句, n=4不满足条件,所以 fun5(4)=4+fun5(3),n=3也不满足条件, fun5(3)=3+funS(2), n=2满足条件 fun5(2)=2,故x=4+3+2=9。 46 【正确答案】 消息 【试题解析】 对象之间进行通信的构造叫做消息,它请求对象执行某一处理或回答某一 要求的信息,它统一了数据流和控制流。 47 【正确答案】 BCD CD D 【试题解析】 本题考查指向字符串的指针的运算方法。指针变量 p首先指向字符串中的第一个字符 A,执行 p=s+1后 ,p 指向字符串中的第二个字符 B,然后输出值“BCD“并换行 ,依次执行循环语句。 48 【正确答案
38、】 a=2,b=3 【试题解析】 分析程序,程序从 x=1语句开始执行,之后执行第一个 switch 语句, switch(x)=switch(1),所以执行 case1, case1语句中包含一个复合 switch 语句;这时 执行第二个 switch 语句,此时 y=1,所以 switch(y)= switch(1),因此执行case 1,将 b 加 1,得到 b=2,遇到 break 语句,退出第二个 switch语句,则整个case 1的复合语句执行完毕,由于在这个 case 1的后面没有 break 语句使其退出第一个 switch 语句,所以接着执行下列的 case 2后面的语句,
39、即将 a、 b 各加 1,得到 a=2,b=3。 49 【正确答案】 ACE 【试题解析】 在本题中 ,for循环体每执行完一次 ,变量 i的值自加两次。 i的初值为 a,执行一次 循环后变为 c,之后再变成 e,当其变为 g时 ,循环条件若不满足 ,循环终止 ,故本题共输出 3个字符。表达式 “i- 即表示输出 i对应的大写字母 ,结果为 ACE。 50 【正确答案】 1 1 2 3 5 8 13 21 34 55 51 【正确答案】 1 2 6 24 120 52 【正确答案】 5, 6 53 【正确答案】 0 【试题解析】 本题的关键在于对变量 c的赋值运算: d=(a b c) d=(5 4 3) 先算 5 4,为真,得 1,即: d=(1 3),此时 1 3,为假,得 0。 54 【正确答案】 81 【试题解析】 本题考查带参数的宏定义。 S(i+j)=4*i+j*i+j+1=4*6+8*6+8+1=81。 55 【正确答案】 a0i bio 【试题解析】 biN-1=a0i实现把 a所指二维数组中的第 0行放到 b 所指二维数组的最后一列中, bi0=aN-1i实现将 a所指 N行 N列的二维数组中的最后一行放到 b所指二维数组的第 0列中。
copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1