糯米文學吧

位置:首頁 > IT認證 > 計算機等級

計算機二級c語言題庫及答案

計算機二級考試之際,yjbys小編為同學們提供了最新計算機二級C語言考試題庫,希望能幫助到大家!

計算機二級c語言題庫及答案

1.若以下對fun函數的調用是正確的:

x=fun(fun(a,b,c),(a+b,a+c),a+b+c);

則fun函數的形參個數為()

A)3 B)4 C)5 D)6

2.若有説明:int*p, m=5; n;,以下正確的程序段是()

A)p=&m;

scanf("%d",&p)

B)p=&n;

scanf("%d",&p)

C)scanf("%d",&p)

p=&n;

D)p=&n;

p=&m;

3.以下程序調用findmax函數返回數組中的最大值

findmax(int*a,int n)

{ int*p,*s;

for(p=a,s=a;p-a  if()s=p;

return(*s);

}

main()

{ intx[5]={12,21,13,6,18};

printf("%dn",findmax(x,5));

}

在下劃線處應填入的是()

A)p>s B)*p>*s C)a[p]>a[s] D)p-a>p-s

4.若指針p已正確定義,要使p指向兩個連續的整型動態存儲單元,則正確語句是()

A)p=2*(int*)malloc(sizeof(int));

B)p=(int*)calloc(2*sizeof(int));

C)p=(int*)malloc(2* sizeof(int));

D)p=2*(int*)calloc(sizeof(int));

5.下列程序的輸出結果是()

main()

{char *p1,*p2,str[50]="xyz";

p1="abcd";

p2="ABCD";

strcpy(str+2,strcat(p1+2,p2+1));

printf("%s",str);

}

A)xyabcAB B)abcABz C)Ababcz D)XycdBCD

6.以下敍述中不正確的是()

A)一個變量的作用域完全取決於變量定義語句的位置

B)全局變量可以在函數以外的任何部位進行定義

C)局部變量的“生存期”只限於本次函數調用,因此不可能將局部變量的運算結果保存至下一次調用

D)一個變量説明為static存儲類是為了限制其他編譯單位的'引用

7.交換兩個變量的值,不允許用臨時變量,應該使用下列哪一個位運算符()

A)~ B)& C)^ D)|

8.下面的説法不正確的是()

A)函數調用時,先求出實參表達

B)函數調用是在程序運行時處理的,分配臨時的內存單元。而宏展開則是在編譯時進行的,在展開時也要分配內存單元,進行值傳遞

C)對於函數中的實參和形參都要定義類型,二者的類型要求一致,而宏不存在類型問題,宏名有類型

D)調用函數只可得到一個返回值,而用宏可以設法得到幾個結果

nf函數的正確調用形式是()

A)fscanf(fp,格式字符串,輸出表列);

B)fscanf(格式字符串,輸出表列,fp);

C)fscanf(格式字符串,文件指針,輸出表列);

D)fscanf(文件指針,格式字符串,輸入表列);

10.以下程序的運行結果是()

# define MAX 10

int a[MAX],i;

main()

{ printf("n");sub1();sub3(a);sub2();sub3(a);

}

sub2()

{ int a[MAX],i,max;

max=5;

for(i=0;i  }

sub1()

{for(i=0;i  }

sub3(int a[])

{ int i;

for(i=0;i  printf("n");

}

A)0 2 4 6 8 10 12 14 16 18

0 1 2 3 4

B)0 1 2 3 4

0 2 4 6 8 10 12 14 16 18

C)0 1 2 3 4 5 6 7 8 9

0 1 2 3 4

D)0 2 4 6 8 10 12 14 16 18

0 2 4 6 8 10 12 14 16 18

參考答案】:1.A 2.D 3.B 4.C 5.D 6.B 7.C 8.B 9.D 10.D