选择题(30分,新题补充) 下载本文

for (i=0,1<2/n; 1++) { b[i] =a[j]; b[k]=a[j+1]; j +=2; k--; }

for (i=0; i

{ int c[10]={10,9,8,7,6,5,4,3,2,1},I; fun(c, 10)’

for (i=0;i<10; i++) printf(“&d,”, c[i]); printf(“\\n”); }

程序运行的结果是D A) 10,8,6,4,2,1,3,5,7,9, B) 1,2,3,4,5,6,7,8,9,10 C) 1,3,5,7,9,10,8,6,4,2 D) 10,9,8,7,6,5,4,3,2,1

55)有以下程序 #include int *f(int *5,int *t) { if (*s < *t) s=t;

return s; }

main()

{ int i=3, j=5, *p=&I, *q=&j, *r; r=f(p,q);

printf(“&d, &d, &d, &d, &d,\\n”, i, j, *p, *q, *r); }

程序运行结果是B A) 3,5,5,5,5, B) 3,5,3,5,5 C) 5,5,5,5,5 D) 5,3,3,3,5

56)若要使用c数学库整的sin函数,需要在源程序头部加上 #include

关于引用数学库,以下叙述正确的是C

A) 实际上,不用引用math.h文件也能正确调用sin函数

B) 将数学库整sin函数的源程序插入到引用楚,一遍进行编译连接

C) 通过引用math。和文件,说明shin函数的参数个数和类型,以及函数返回值类型 D)将数学库中的sin函数连接到编译生成的可执行性 文件中,一遍能正确运行

57)以下叙述错误的是B

A) 模块化的程序设计是采用自顶向下,逐步细化的原则 B) 程序的每个模块都可以通过三种比本的结构实现

C) 同一程序各模块可由一组人员同时进行编写调试,可以提高编写程序的效率

D) 在进行模块程序设计的时候应首先完成每个模块的编写调试,再集中考虑主流程中算法

58)有以下程序 #include #define N 4

void fun(int a[] [N]) { int b[N] [N],i,j; for(i=0; 1

main()

{ int x[N] [N]={{1, 2, 3, 4}, {5,6,7,7}, {9,10,11,12}, {13,14,15,16}}, i;

fun(x);

for (i=0;i

printf(“&d,”, x [i] [i] ); printf(“\\n”); }

程序的运行结果是B A) 4,7,10,13, B) 13,10,7,4, C) 1,5,9,13, D) 1,6,11,16

59)以下关于地址和指针的叙述中正确的是B A) 可以取常量的地址赋值给同类型的指针变量 B) 可以取变量的地址赋值给同类型的指针变量

C) 所有指针变量如果未赋初值,则自动赋空值NULL

D) 可以取一个指针变量的地址赋值给本指针变量,这样就使得指针变量指向自身

60)下列语句组中,正确的是C A) shar *s;s={“olympic”}; B) shar *s[7]s={“olympic”}; C) shar *s;s=“olympic”; D) shar *s[7]s=“olympic”;

61)有以下程序 #include main() {

int i = 1;

for (ptintf(“&d”, i); i<4; i++) printf(“&d”, i); printf(“\\n”); }

程序运行后的输出结果是C A) 001 B) 123 C) 1123 D) 0123

62)有以下程序 #include main() {

int x = 0x13;

if (x = 0x18) printf(“T”); printf(”F”); printf(“\\n”); }

程序运行后的输出结果是D A) TFT B) T C) F D) TF

63)有以下程序 #include main() {

int a = 0, b = 1; if (++a == b++) printf (“T”); else

printf(“F”)

printf(“a=&b,b=&d\\n,”, a, b); printf(“\\n”);

}

程序运行后的输出结果是B A) Ta=1,b=2 B) Ta=0,b=1 C) Fa=0,b=2 D) Fa=1,b=2

64) 以下程序中函数f的功能是:当flag为1时,进行由小到大排序。

#include

Void f(int b[],int n,int flag) {

int i,j,t;

for(i=0;i

if(flag ? b[i]>b[j]:b[i]

int a[10]={5,4,3,2,1,6,7,8,9,10},i; f(&a[2],5,0); f(a,5,1);

for(i=0;i<10;i++)

printf(“%d,”,a[i]); }

程序运行后的输出结果是 D

A 10,9,8,7,6,5,4,3,2,1, B 5,4,3,2,1,6,7,8,9,10, C 1,2,3,4,5,6,7,8,9,10, D 3,4,5,6,7,2,1,8,9,10,

65)有以下程序 #include main() {

shar ch = ‘M’; while (ch != ‘K’) {

ch --;

putchar(ch); }