1、二级 C语言-(二)及答案解析(总分:100.00,做题时间:90 分钟)一、B选择题/B(总题数:46,分数:100.00)1.设有定义:struct complexint real.unreal; data1=1,8,data2;则以下赋值语句中错误的是_。 A.data2=data1; B.data2=(2,6); C.data2.real=data1.real; D.data2.real=data1.unreal;(分数:2.00)A.B.C.D.2.有以下程序:#includestdio.hmain() int a=2,b=2,c=2;printf(“%d/n“,a/b程序运行后的输
2、出结果是_。 A.0 B.1 C.2 D.3(分数:2.00)A.B.C.D.3.变量 a中的数据用二进制表示的形式是 01011101,变量 b中的数据用二进制表示的形式是 11110000。若要求将 a的高 4位取反,低 4位不变,所要执行的运算是_。 A.ab B.a|b C.ac=c_;printf(“%d/n“,c);若要使程序的运行结果为 248,应在下画线处填入的是_。 A.2 B.| 248 C.后,以下针对文本文件 file操作叙述的选项中正确的是_。 A.写操作结束后可以从头开始读 B.只能写不能读 C.可以在原有内容后追加写 D.可以随意读和写(分数:2.00)A.B.C
3、.D.7.读取二进制文件的函数调用形式为:fread(buffer,size,count,fp);,其中 buffer代表的是_。 A.一个文件指针,指向待读取的文件 B.一个整型变量,代表待读取的数据的字节数 C.一个内存块的首地址,代表读入数据存放的地址 D.一个内存块的字节数(分数:2.00)A.B.C.D.8.以下叙述中正确的是_。 A.简单 C语句必须以分号结束 B.C程序中的每一行只能写一条语句 C.C语言程序中的注释必须与语句写在同一行 D.C语句必须在一行内写完(分数:2.00)A.B.C.D.9.下列叙述中错误的是_。 A.C程序可以由多个程序文件组成 B.一个 C语言程序只
4、能实现一种算法 C.C程序可以由一个或多个函数组成 D.一个 C函数可以单独作为一个 C程序文件存在(分数:2.00)A.B.C.D.10.C语言源程序名的后缀是_。 Aobj Bexe CC Dcp(分数:2.00)A.B.C.D.11.我们所写的每条 C语句,经过编译最终都将转换成二进制的机器指令。关于转换以下说法错误的是_。 A.一条 C语句对应转换成一条机器指令 B.一条 C语句可能会被转换成多条机器指令 C.一条 C语句可能会被转换成零条机器指令 D.某种类型和格式的 C语句被转换成机器指令的条数是固定的(分数:2.00)A.B.C.D.12.关于算法,以下叙述中错误的是_。 A.任
5、何算法都能转换成计算机高级语言的程序,并在有限时间内运行完毕 B.同一个算法对于相同的输入必能得出相同的结果 C.一个算法对于某个输入的循环次数是可以事先估计出来的 D.某个算法可能会没有输入(分数:2.00)A.B.C.D.13.以下叙述中正确的是_。 A.在 C程序中,模块化主要是通过函数来实现的 B.程序的主函数名除 main外,也可以使用 Main或 main C.程序可以包含多个主函数,但总是从第一个主函数处开始执行 D.书写源程序时,必须注意缩进格式,否则程序会有编译错误(分数:2.00)A.B.C.D.14.设变量已正确定义并赋值,以下正确的表达式是_。 A.x=y+z+5,+y
6、 B.int(15.8%5) C.x=y*5=x+z D.x=25%5.0(分数:2.00)A.B.C.D.15.若有定义语句:int x=10;则表达式 x-=x+x的值为_。 A.-20 B.-10 C.0 D.10(分数:2.00)A.B.C.D.16.若变量 x、y 已正确定义并赋值,以下符合 C语言语法的表达式是_。 A.x+1=y B.+x,y=x- C.x=x+10=x+y D.double(x)/10(分数:2.00)A.B.C.D.17.若变量均已正确定义并赋值,以下合法的 C语言赋值语句是_。 A.x+n=i; B.x=n%2.5; C.x=y=5; D.x=5=4+1;(
7、分数:2.00)A.B.C.D.18.以下关于 C语言的叙述中正确的是_。 A.C语言中的变量可以在使用之前的任何位置进行定义 B.C语言中的注释不可以夹在变量名或关键字的中间 C.在 C语言算术表达式的书写中,运算符两侧的运算数类型必须一致 D.C语言的数值常量中夹带空格不影响常量值的正确表示(分数:2.00)A.B.C.D.19.表达式 a+=a-=a=9的值是_。 A.0 B.-9 C.18 D.9(分数:2.00)A.B.C.D.20.关于 C语言的符号常量,以下叙述中正确的是_。 A.符号常量是指在程序中通过宏定义用一个符号名来代表一个常量 B.符号常量的符号名是标识符,但必须大写
8、C.符号常量在整个程序中其值都不能再被重新定义 D.符号常量的符号名必须是常量(分数:2.00)A.B.C.D.21.以下叙述中错误的是_。 A.数值型常量有正值和负值的区分 B.常量可以用一个符号名来代表 C.定义符号常量必须用类型名来设定常量的类型 D.常量是在程序运行过程中值不能被改变的量(分数:2.00)A.B.C.D.22.设有定义:double x=2.12;,以下不能完整输出变量 x值的语句是_。 A.printf(“x=%5.0f/n“,x); B.printf(“x=%f/n“,x); C.printf(“x=%1f/n“,x); D.printf(“x=%0.5f/n“,x
9、);(分数:2.00)A.B.C.D.23.若变量已正确定义为 int型,要通过语句 scanf(“%d,%d,%d“,给 a赋值 1、给 b赋值 2、给 c赋值 3,以下输入形式中错误的是(注:代表一个空格符)_。 A.1,2,3回车 B.1,2,3回车 C.1,2,3回车 D.123回车(分数:2.00)A.B.C.D.24.以下叙述中正确的是_。 A.由 printf输出的数据的实际精度是由格式控制中的域宽和小数的域宽来完全决定的 B.scanf和 printf是 C语言提供的输入和输出语句 C.由 printf输出的数据都隐含左对齐 D.赋值语句是一种执行语句,必须放在函数的可执行部分
10、(分数:2.00)A.B.C.D.25.以下叙述中正确的是_。 A.在 scanf函数的格式串中,必须有与输入项一一对应的格式转换说明符 B.只能在 printf函数中指定输入数据的宽度,而不能在 scanf函数中指定输入数据占的宽度 C.scanf函数中的字符串,是提示程序员的,输入数据时不必管它 D.复合语句也被称为语句块,它至少要包含两条语句(分数:2.00)A.B.C.D.26.若有定义 int x,y;并已正确给变量赋值,则以下选项中与表达式(x-y)?(x+):(y+)中的条件表达式(x-y)等价的是_。 A.(x-y=0) B.(x-y0) C.(x-y0) D.(x-y0|x-
11、y0)(分数:2.00)A.B.C.D.27.有以下程序段#includestdio.hint a,b,c;a=10;b=50;c=30;if(ab) a=b,b=c;c=a;printf(“a=%d b=%d c=%d/n“,a,b,c);程序的输出结果是_。 A.a=10 b=50 c=30 B.a=10 b=50 c=10 C.a=10 b=30 c=10 D.a=50 b=30 c=50(分数:2.00)A.B.C.D.28.设有定义:int a=1,b=2,c=3;以下语句中执行效果与其他三个不同的是_。 A.if(ab)c=a;a=b;b=c; B.if(ab)c=a,a=b,b=
12、c; C.if(ab)c=a,a=b,b=c; D.if(ab)c=a;a=b;b=c;(分数:2.00)A.B.C.D.29.以下叙述中正确的是_。 A.不能在 else子句中再嵌套 if语句 B.if语句只能嵌套一层 C.if子句和 else子句中可以是任意的合法的 C语句 D.改变 if-else语句的缩进格式,会改变程序的执行流程(分数:2.00)A.B.C.D.30.有以下程序段scanf(“%d%d%d“,if(ab)a=b;if(ac)a=c;printf(“%d/n“,a);该程序段的功能是_。 A.输出 a、b、c 中值相等的数值 B.输出 a、b、c 中的最大值 C.输出
13、a、b、c 中的最小值 D.输出 a的原始值(分数:2.00)A.B.C.D.31.以下程序段中的变量已正确定义for(i=0;i4;i+,i+)for(k=1;k3;k+);printf(“*“);该程序段的输出结果是_。 A.* B.* C.* D.*(分数:2.00)A.B.C.D.32.关于“while(条件表达式)循环体“,以下叙述正确的是_。 A.循环体的执行次数总是比条件表达式的执行次数多一次 B.条件表达式的执行次数总是比循环体的执行次数多一次 C.条件表达式的执行次数与循环体的执行次数一样 D.条件表达式的执行次数与循环体的执行次数无关(分数:2.00)A.B.C.D.33.
14、关于Do循环体 while(条件表达式);以下叙述中正确的是_。 A.条件表达式的执行次数总是比循环体的执行次数多一次 B.循环体的执行次数总是比条件表达式的执行次数多一次 C.条件表达式的执行次数与循环体的执行次数一样 D.条件表达式的执行次数与循环体的执行次数无关(分数:2.00)A.B.C.D.34.下列叙述中正确的是_。 A.在 switch语句中必须使用 default B.在 switch语句中,不一定使用 break语句 C.break语句必须与 switch语句中的 case配对使用 D.break语句只能用于 switch语句(分数:2.00)A.B.C.D.35.有以下程序
15、#include stdio.hmain() int a=1,b=2;for(;a8;a+)b+=a;a+=2;printf(“%d,%d/n“,a,b);程序运行后的输出结果是_。 A.7,11 B.8,11 C.10,14 D.9,18(分数:2.00)A.B.C.D.36.以下叙述中正确的是_。 A.break语句只能用于 switch语句体中 B.continue语句的作用是:使程序的执行流程跳出包含它的所有循环 C.在循环体内使用 break语句和 continue语句的作用相同 D.break语句只能用在循环体内和 switch语句体内(分数:2.00)A.B.C.D.37.若有以
16、下程序#includestdio.hmain() int a=-2,b=0;while(a+) +b;printf(“%d,%d/n“,a,b);则程序的输出结果是_。 A.2,3 B.0,2 C.1,3 D.1,2(分数:2.00)A.B.C.D.38.以下叙述中正确的是_。 A.在 while语句和 do-while语句中无法使用 continue语句 B.当 break出现在循环体中的 switch语句体内时,其作用是跳出该 switch语句体,并中止循环体的执行 C.continue语句的作用是:在执行完本次循环体中剩余语句后,中止循环 D.只能在循环体内和 switch语句体内使用
17、break语句(分数:2.00)A.B.C.D.39.若变量已正确定义for(x=0,y=0;(y! =99x+)则以上 for循环_。 A.执行无限次 B.执行 3次 C.执行 4次 D.执行次数不定(分数:3.00)A.B.C.D.40.以下叙述中正确的是_。 A.函数调用时,不必区分函数名称的大小写 B.调用函数时,函数名必须与被调用的函数名完全一致 C.函数名允许用数字开头 D.在函数体中只能出现一次 return语句(分数:3.00)A.B.C.D.41.设有某函数的说明为int*func(int a10,int n);则下列叙述中,正确的是_。 A.形参 a对应的实参只能是数组名
18、B.说明中的 a10写成 a或*a 效果完全一样 C.func的函数体中不能对 a进行移动指针(如 a+)的操作 D.只有指向 10个整数内存单元的指针,才能作为实参传给 a(分数:3.00)A.B.C.D.42.有以下程序#includestdio.hvoid fun(int *p,int *q) int t;t=*p; *p=*q; *q=t;*q=*p;main() int a=0,b=9;fun(printf(“%d?%d/n“,a,b);程序的输出结果是_。 A.0 9 B.0 0 C.9 0 D.9 9(分数:3.00)A.B.C.D.43.有以下程序#includestdio.h
19、int k=5;void f(int *s) *s=k;main() int m=3,*p=f(p);printf(“%d,%d“,m,*p);程序的运行结果是_。 A.3,3 B.5,5 C.3,5 D.5,3(分数:3.00)A.B.C.D.44.以下关于 C语言函数参数传递方式的叙述正确的是_。 A.数据可以在实参和形参之间双向传递 B.数据只能从实参单向传递给形参 C.数据只能从形参单向传递给实参 D.C语言的函数参数既可以从实参单向传递给形参,也可以在实参和形参之间双向传递,可视情况选择使用(分数:3.00)A.B.C.D.45.以下叙述正确的是_。 A.C语言函数不可以单独编译 B
20、.C语言程序是由过程和函数组成的 C.C语言函数可以嵌套调用,例如:fun(fun(x) D.C语言中除了 main函数,其他函数不可作为单独文件形式存在(分数:3.00)A.B.C.D.46.若有以下函数首部int fun(double x10,int *n)则下面针对此函数的函数声明语句中正确的是_。 A.int fun(double *x,int n); B.int fun(double,int?); C.int fun(double *,int *); D.int fun(double x,int *n);(分数:3.00)A.B.C.D.二级 C语言-(二)答案解析(总分:100.0
21、0,做题时间:90 分钟)一、B选择题/B(总题数:46,分数:100.00)1.设有定义:struct complexint real.unreal; data1=1,8,data2;则以下赋值语句中错误的是_。 A.data2=data1; B.data2=(2,6); C.data2.real=data1.real; D.data2.real=data1.unreal;(分数:2.00)A.B. C.D.解析:解析 选项 B需要强制转换数据类型,应改为(struct complex)2,6;。2.有以下程序:#includestdio.hmain() int a=2,b=2,c=2;pr
22、intf(“%d/n“,a/b程序运行后的输出结果是_。 A.0 B.1 C.2 D.3(分数:2.00)A. B.C.D.解析:解析 对于 a/bc=c_;printf(“%d/n“,c);若要使程序的运行结果为 248,应在下画线处填入的是_。 A.2 B.| 248 C.后,以下针对文本文件 file操作叙述的选项中正确的是_。 A.写操作结束后可以从头开始读 B.只能写不能读 C.可以在原有内容后追加写 D.可以随意读和写(分数:2.00)A.B. C.D.解析:解析 在题目中函数 fopen以“只写”方式打开文件 file。7.读取二进制文件的函数调用形式为:fread(buffer
23、,size,count,fp);,其中 buffer代表的是_。 A.一个文件指针,指向待读取的文件 B.一个整型变量,代表待读取的数据的字节数 C.一个内存块的首地址,代表读入数据存放的地址 D.一个内存块的字节数(分数:2.00)A.B.C. D.解析:解析 fread 函数中的参数 buffer是一个指针,其值为 fread函数读入数据后在内存中的存放地址。故本题答案为 C。8.以下叙述中正确的是_。 A.简单 C语句必须以分号结束 B.C程序中的每一行只能写一条语句 C.C语言程序中的注释必须与语句写在同一行 D.C语句必须在一行内写完(分数:2.00)A. B.C.D.解析:9.下列
24、叙述中错误的是_。 A.C程序可以由多个程序文件组成 B.一个 C语言程序只能实现一种算法 C.C程序可以由一个或多个函数组成 D.一个 C函数可以单独作为一个 C程序文件存在(分数:2.00)A.B. C.D.解析:10.C语言源程序名的后缀是_。 Aobj Bexe CC Dcp(分数:2.00)A.B.C. D.解析:11.我们所写的每条 C语句,经过编译最终都将转换成二进制的机器指令。关于转换以下说法错误的是_。 A.一条 C语句对应转换成一条机器指令 B.一条 C语句可能会被转换成多条机器指令 C.一条 C语句可能会被转换成零条机器指令 D.某种类型和格式的 C语句被转换成机器指令的
25、条数是固定的(分数:2.00)A. B.C.D.解析:12.关于算法,以下叙述中错误的是_。 A.任何算法都能转换成计算机高级语言的程序,并在有限时间内运行完毕 B.同一个算法对于相同的输入必能得出相同的结果 C.一个算法对于某个输入的循环次数是可以事先估计出来的 D.某个算法可能会没有输入(分数:2.00)A. B.C.D.解析:13.以下叙述中正确的是_。 A.在 C程序中,模块化主要是通过函数来实现的 B.程序的主函数名除 main外,也可以使用 Main或 main C.程序可以包含多个主函数,但总是从第一个主函数处开始执行 D.书写源程序时,必须注意缩进格式,否则程序会有编译错误(分
26、数:2.00)A. B.C.D.解析:14.设变量已正确定义并赋值,以下正确的表达式是_。 A.x=y+z+5,+y B.int(15.8%5) C.x=y*5=x+z D.x=25%5.0(分数:2.00)A. B.C.D.解析:15.若有定义语句:int x=10;则表达式 x-=x+x的值为_。 A.-20 B.-10 C.0 D.10(分数:2.00)A.B. C.D.解析:16.若变量 x、y 已正确定义并赋值,以下符合 C语言语法的表达式是_。 A.x+1=y B.+x,y=x- C.x=x+10=x+y D.double(x)/10(分数:2.00)A.B. C.D.解析:17.
27、若变量均已正确定义并赋值,以下合法的 C语言赋值语句是_。 A.x+n=i; B.x=n%2.5; C.x=y=5; D.x=5=4+1;(分数:2.00)A.B.C. D.解析:18.以下关于 C语言的叙述中正确的是_。 A.C语言中的变量可以在使用之前的任何位置进行定义 B.C语言中的注释不可以夹在变量名或关键字的中间 C.在 C语言算术表达式的书写中,运算符两侧的运算数类型必须一致 D.C语言的数值常量中夹带空格不影响常量值的正确表示(分数:2.00)A.B. C.D.解析:19.表达式 a+=a-=a=9的值是_。 A.0 B.-9 C.18 D.9(分数:2.00)A. B.C.D.
28、解析:20.关于 C语言的符号常量,以下叙述中正确的是_。 A.符号常量是指在程序中通过宏定义用一个符号名来代表一个常量 B.符号常量的符号名是标识符,但必须大写 C.符号常量在整个程序中其值都不能再被重新定义 D.符号常量的符号名必须是常量(分数:2.00)A. B.C.D.解析:21.以下叙述中错误的是_。 A.数值型常量有正值和负值的区分 B.常量可以用一个符号名来代表 C.定义符号常量必须用类型名来设定常量的类型 D.常量是在程序运行过程中值不能被改变的量(分数:2.00)A.B.C. D.解析:22.设有定义:double x=2.12;,以下不能完整输出变量 x值的语句是_。 A.
29、printf(“x=%5.0f/n“,x); B.printf(“x=%f/n“,x); C.printf(“x=%1f/n“,x); D.printf(“x=%0.5f/n“,x);(分数:2.00)A. B.C.D.解析:23.若变量已正确定义为 int型,要通过语句 scanf(“%d,%d,%d“,给 a赋值 1、给 b赋值 2、给 c赋值 3,以下输入形式中错误的是(注:代表一个空格符)_。 A.1,2,3回车 B.1,2,3回车 C.1,2,3回车 D.123回车(分数:2.00)A.B.C.D. 解析:24.以下叙述中正确的是_。 A.由 printf输出的数据的实际精度是由格式
30、控制中的域宽和小数的域宽来完全决定的 B.scanf和 printf是 C语言提供的输入和输出语句 C.由 printf输出的数据都隐含左对齐 D.赋值语句是一种执行语句,必须放在函数的可执行部分(分数:2.00)A.B.C.D. 解析:25.以下叙述中正确的是_。 A.在 scanf函数的格式串中,必须有与输入项一一对应的格式转换说明符 B.只能在 printf函数中指定输入数据的宽度,而不能在 scanf函数中指定输入数据占的宽度 C.scanf函数中的字符串,是提示程序员的,输入数据时不必管它 D.复合语句也被称为语句块,它至少要包含两条语句(分数:2.00)A. B.C.D.解析:26
31、.若有定义 int x,y;并已正确给变量赋值,则以下选项中与表达式(x-y)?(x+):(y+)中的条件表达式(x-y)等价的是_。 A.(x-y=0) B.(x-y0) C.(x-y0) D.(x-y0|x-y0)(分数:2.00)A.B.C.D. 解析:27.有以下程序段#includestdio.hint a,b,c;a=10;b=50;c=30;if(ab) a=b,b=c;c=a;printf(“a=%d b=%d c=%d/n“,a,b,c);程序的输出结果是_。 A.a=10 b=50 c=30 B.a=10 b=50 c=10 C.a=10 b=30 c=10 D.a=50
32、b=30 c=50(分数:2.00)A.B. C.D.解析:28.设有定义:int a=1,b=2,c=3;以下语句中执行效果与其他三个不同的是_。 A.if(ab)c=a;a=b;b=c; B.if(ab)c=a,a=b,b=c; C.if(ab)c=a,a=b,b=c; D.if(ab)c=a;a=b;b=c;(分数:2.00)A.B.C.D. 解析:29.以下叙述中正确的是_。 A.不能在 else子句中再嵌套 if语句 B.if语句只能嵌套一层 C.if子句和 else子句中可以是任意的合法的 C语句 D.改变 if-else语句的缩进格式,会改变程序的执行流程(分数:2.00)A.B
33、.C. D.解析:30.有以下程序段scanf(“%d%d%d“,if(ab)a=b;if(ac)a=c;printf(“%d/n“,a);该程序段的功能是_。 A.输出 a、b、c 中值相等的数值 B.输出 a、b、c 中的最大值 C.输出 a、b、c 中的最小值 D.输出 a的原始值(分数:2.00)A.B.C.D. 解析:31.以下程序段中的变量已正确定义for(i=0;i4;i+,i+)for(k=1;k3;k+);printf(“*“);该程序段的输出结果是_。 A.* B.* C.* D.*(分数:2.00)A.B.C.D. 解析:32.关于“while(条件表达式)循环体“,以下
34、叙述正确的是_。 A.循环体的执行次数总是比条件表达式的执行次数多一次 B.条件表达式的执行次数总是比循环体的执行次数多一次 C.条件表达式的执行次数与循环体的执行次数一样 D.条件表达式的执行次数与循环体的执行次数无关(分数:2.00)A.B. C.D.解析:33.关于Do循环体 while(条件表达式);以下叙述中正确的是_。 A.条件表达式的执行次数总是比循环体的执行次数多一次 B.循环体的执行次数总是比条件表达式的执行次数多一次 C.条件表达式的执行次数与循环体的执行次数一样 D.条件表达式的执行次数与循环体的执行次数无关(分数:2.00)A.B.C. D.解析:34.下列叙述中正确的
35、是_。 A.在 switch语句中必须使用 default B.在 switch语句中,不一定使用 break语句 C.break语句必须与 switch语句中的 case配对使用 D.break语句只能用于 switch语句(分数:2.00)A.B. C.D.解析:35.有以下程序#include stdio.hmain() int a=1,b=2;for(;a8;a+)b+=a;a+=2;printf(“%d,%d/n“,a,b);程序运行后的输出结果是_。 A.7,11 B.8,11 C.10,14 D.9,18(分数:2.00)A.B.C. D.解析:36.以下叙述中正确的是_。 A.
36、break语句只能用于 switch语句体中 B.continue语句的作用是:使程序的执行流程跳出包含它的所有循环 C.在循环体内使用 break语句和 continue语句的作用相同 D.break语句只能用在循环体内和 switch语句体内(分数:2.00)A.B.C.D. 解析:37.若有以下程序#includestdio.hmain() int a=-2,b=0;while(a+) +b;printf(“%d,%d/n“,a,b);则程序的输出结果是_。 A.2,3 B.0,2 C.1,3 D.1,2(分数:2.00)A.B.C.D. 解析:38.以下叙述中正确的是_。 A.在 wh
37、ile语句和 do-while语句中无法使用 continue语句 B.当 break出现在循环体中的 switch语句体内时,其作用是跳出该 switch语句体,并中止循环体的执行 C.continue语句的作用是:在执行完本次循环体中剩余语句后,中止循环 D.只能在循环体内和 switch语句体内使用 break语句(分数:2.00)A.B.C.D. 解析:39.若变量已正确定义for(x=0,y=0;(y! =99x+)则以上 for循环_。 A.执行无限次 B.执行 3次 C.执行 4次 D.执行次数不定(分数:3.00)A.B.C. D.解析:40.以下叙述中正确的是_。 A.函数调
38、用时,不必区分函数名称的大小写 B.调用函数时,函数名必须与被调用的函数名完全一致 C.函数名允许用数字开头 D.在函数体中只能出现一次 return语句(分数:3.00)A.B. C.D.解析:41.设有某函数的说明为int*func(int a10,int n);则下列叙述中,正确的是_。 A.形参 a对应的实参只能是数组名 B.说明中的 a10写成 a或*a 效果完全一样 C.func的函数体中不能对 a进行移动指针(如 a+)的操作 D.只有指向 10个整数内存单元的指针,才能作为实参传给 a(分数:3.00)A.B. C.D.解析:42.有以下程序#includestdio.hvoi
39、d fun(int *p,int *q) int t;t=*p; *p=*q; *q=t;*q=*p;main() int a=0,b=9;fun(printf(“%d?%d/n“,a,b);程序的输出结果是_。 A.0 9 B.0 0 C.9 0 D.9 9(分数:3.00)A.B.C.D. 解析:43.有以下程序#includestdio.hint k=5;void f(int *s) *s=k;main() int m=3,*p=f(p);printf(“%d,%d“,m,*p);程序的运行结果是_。 A.3,3 B.5,5 C.3,5 D.5,3(分数:3.00)A.B. C.D.解析
40、:44.以下关于 C语言函数参数传递方式的叙述正确的是_。 A.数据可以在实参和形参之间双向传递 B.数据只能从实参单向传递给形参 C.数据只能从形参单向传递给实参 D.C语言的函数参数既可以从实参单向传递给形参,也可以在实参和形参之间双向传递,可视情况选择使用(分数:3.00)A.B. C.D.解析:45.以下叙述正确的是_。 A.C语言函数不可以单独编译 B.C语言程序是由过程和函数组成的 C.C语言函数可以嵌套调用,例如:fun(fun(x) D.C语言中除了 main函数,其他函数不可作为单独文件形式存在(分数:3.00)A.B.C. D.解析:46.若有以下函数首部int fun(double x10,int *n)则下面针对此函数的函数声明语句中正确的是_。 A.int fun(double *x,int n); B.int fun(double,int?); C.int fun(double *,int *); D.int fun(double x,int *n);(分数:3.00)A.B.C. D.解析: