补充试题库 - 答案

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.二维数组a有m行n列,则在a[i][j]之前的元素个数为()。

A. j*n+i √

B. i*n+j

C. i*n+j-1

D. i*n+j+1

2.#include

#include

main()

{

printf("%d\n", strlen("IBM\n012\t\"\\\0"));

}

则程序运行后的输出结果是。

√A) 10 B) 11 C) 16 D) 12

3.有如下程序片段:

int i = 0;

while(i++ <= 2);

printf("%d", i);

则正确的执行结果是:

A)2B) 3√C) 4D) 程序陷入死循环

4.下面哪个定义是合法的。

A)char a[8] = "language";

B) int a[5] = {0,1,2,3,4,5};

√C) char *a = "string";

D) int a[2][] = {0,1,2,3,4,5,6};

5.若有定义int (*p)[4],则标识符p是一个。

A)指向整型变量的指针变量

B)指向函数的指针变量

√C)指向有四个整型元素的一维数组的指针变量

D)指针数组名,有四个元素,每个元素均为一个指向整型变量的指针6.下列对字符串的定义中,错误的是:。

√A) char str[7] = "FORTRAN";

B) char str[] = "FORTRAN";

C) char *str = "FORTRAN";

D) char str[] = {'F','O','R','T','R','A','N',0};

7.针对下面程序段,下面哪些说法是正确的?

#include

void Swap(int *x, int *y);

main()

{

int a, b;

a = 5;

b = 9;

Swap(&a, &b);

printf("a=%d,b=%d",a,b);

}

void Swap(int *x, int *y)

{

int *pTemp;

*pTemp = *x;

*x = *y;

*y = *pTemp;

}

A) 程序运行结果为乱码;

B) 程序运行后将导致程序崩溃;

C) 程序编译时出错导致程序无法运行;

√D) 程序执行了危险的操作;

8. 要使下面程序的输出1, 2, 34,则从键盘输入的数据格式应为。

#include

main()

{

char a,b;

int c;

scanf("%c%c%d",&a,&b,&c);

printf("%c,%c,%d\n",a,b,c);

}

A)1 2 34 B)1, 2, 34

C)’1’,’2’,34√D)12 34

9.对于一个正常运行和正常退出的C程序,以下叙述正确的是。

√A)程序是从main函数第一条可执行语句开始执行,在main函数结束

B)程序的执行总是从程序的第一个函数开始,在main函数结束

C)程序的执行总是从main函数开始,在最后一个函数中结束

D)从程序的第一个函数开始,在程序的最后一个函数中结束

10.对于以下程序片段,描述正确的是。

int x= -1;

do

{

x=x*x;

}while(!x);

A)是死循环

B)循环执行两次

√C)循环执行一次

D)有语法错误

11.一个指针数组的定义为。

A) int (*ptr)[5];√B) int *ptr[5];

C) int *(ptr[5]); D) int ptr[5];

一、单项选择题:(10分,每题2分,评分标准:正确得2分,错误扣2分)12.以下不能对二维数组a进行正确初始化的语句是

A)int a[2][3]={0};

B)int a[][3]={{1,2},{0}};

√C)int a[2][3]={{1,2},{3,4},{5,6}};

D)int a[][3]={1,2,3,4,5,6};

13.有以下程序片断

float fun(int x,int y)

{

return(x+y);

}

main(){

int a=2,b=5,c=8;

printf("%3.0f\n",fun((int)fun(a+c,b),a-c));

}

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

A)编译出错√B)9

C)21 D)9.0

14.若有以下调用语句,则不正确的fun函数的函数原型是main()

{ …

int a[50],n;

fun(n, &a[9]);

}

A)void fun(int m, int x[]);

B)void fun(int s, int h[41]);

C)void fun(int p, int *s);

√D)void fun(int n, int a);

15.下面程序片段的执行结果是:

#define MAX 10

int a[MAX], i;

main( )

{

printf("\n");

sub1( );

sub3(a);

sub2( );

sub3(a);

}

sub2( )

{

int a[MAX], i, max=5;

for(i=0; i

}

sub1( )

{

for(i=0; i

}

sub3(int a[ ])

{

int i;

for(i=0; i

printf("\n");

相关文档
最新文档