第 1 頁(yè):試題 |
第 4 頁(yè):參考答案 |
(20)有以下程序
#include
main()
{ int x=1,y=0,a=0,b=0;
switch(x)
{ case 1:
switch(y)
{ case 0:a++; break;
case 1:b++; break;
}
case 2:a++; b++; break;
case 3:a++; b++;
}
printf("a=%d,b=%d\n",a,b);
}
程序的運(yùn)行結(jié)果是
A)a=1,b=0
B)a=2,b=2
C)a=1,b=1
D)a=2,b=1
(21)下列程序的輸出結(jié)果是
#include "stdio.h"
main()
{ int i,a=0,b=0;
for(i=1;i<10;i++)
{ if(i%2==0)
{a++;
continue;}
b++;}
printf("a=%d,b=%d",a,b); }
A)a=4,b=4
B)a=4,b=5
C)a=5,b=4
D)a=5,b=5
(22)已知
#int t=0;
while (t=1)
{...}
則以下敘述正確的是
A)循環(huán)控制表達(dá)式的值為0
B)循環(huán)控制表達(dá)式的值為1
C)循環(huán)控制表達(dá)式不合法
D)以上說(shuō)法都不對(duì)
(23)下面程序的輸出結(jié)果是
main()
{ int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;
printf("%d\n",*(p+2));}
A)3
B)4
C)1
D)2
(24)以下錯(cuò)誤的定義語(yǔ)句是
A)int x[][3]={{0},{1},{1,2,3}};
B)int x[4][3]={{1,2,3},{1,2,3},{1,2,3},{1,2,3}};
C)int x[4][]={{1,2,3},{1,2,3},{1,2,3},{1,2,3}};
D)int x[][3]={1,2,3,4};
(25)有以下程序
void ss(char *s,char t)
{ while(*s)
{ if(*s==t)*s=t-′a′+′A′;
s++; } }
main()
{ char str1[100]="abcddfefdbd",c=′d′;
ss(str1,c); printf("%s\n",str1);}
程序運(yùn)行后的輸出結(jié)果是
A)ABCDDEFEDBD
B)abcDDfefDbD
C)abcAAfefAbA
D)Abcddfefdbd
(26)有如下程序
main()
{ char ch[2][5]={"6937","8254"},*p[2];
int i,j,s=0;
for(i=0;i<2;i++)p[i]=ch[i];
for(i=0;i<2;i++)
for(j=0;p[i][j]>′\0′;j+=2)
s=10*s+p[i][j]-′0′;
printf("%d\n",s);}
該程序的輸出結(jié)果是
A)69825
B)63825
C)6385
D)693825
(27)有定義語(yǔ)句:char s[10];,若要從終端給s輸入5個(gè)字符,錯(cuò)誤的輸入語(yǔ)句是
A)gets(&s[0]);
B)scanf("%s",s+1);
C)gets(s);
D)scanf("%s",s[1]);
(28)以下敘述中錯(cuò)誤的是
A)在程序中凡是以"#"開(kāi)始的語(yǔ)句行都是預(yù)處理命令行
B)預(yù)處理命令行的最后不能以分號(hào)表示結(jié)束
C)#define MAX 是合法的宏定義命令行
D)C程序?qū)︻A(yù)處理命令行的處理是在程序執(zhí)行的過(guò)程中進(jìn)行的
(29)設(shè)有以下說(shuō)明語(yǔ)句
typedef struct
{ int n;
char ch[8];
} PER;
則下面敘述中正確的是
A)PER 是結(jié)構(gòu)體變量名
B)PER是結(jié)構(gòu)體類型名
C)typedef struct 是結(jié)構(gòu)體類型
D)struct 是結(jié)構(gòu)體類型名
(30)以下敘述中錯(cuò)誤的是
A)gets函數(shù)用于從終端讀入字符串
B)getchar函數(shù)用于從磁盤(pán)文件讀入字符
C)fputs函數(shù)用于把字符串輸出到文件
D)fwrite函數(shù)用于以二進(jìn)制形式輸出數(shù)據(jù)到文件
(31)以下能正確定義一維數(shù)組的選項(xiàng)是
A)int a[5]={0,1,2,3,4,5};
B)char a[]={′0′,′1′,′2′,′3′,′4′,′5′,′\0′};
C)char a={′A′,′B′,′C′};
D)int a[5]="0123";
(32)有以下程序
#include
main()
{ char p[]={′a′, ′b′, ′c′},q[10]={ ′a′, ′b′, ′c′};
printf("%d%d\n",strlen(p),strlen(q));}
以下敘述中正確的是
A) 在給p和q數(shù)組置初值時(shí),系統(tǒng)會(huì)自動(dòng)添加字符串結(jié)束符,故輸出的長(zhǎng)度都為3
B) 由于p數(shù)組中沒(méi)有字符串結(jié)束符,長(zhǎng)度不能確定,但q數(shù)組中字符串長(zhǎng)度為3
C) 由于q數(shù)組中沒(méi)有字符串結(jié)束符,長(zhǎng)度不能確定,但p數(shù)組中字符串長(zhǎng)度為3
D) 由于p和q數(shù)組中都沒(méi)有字符串結(jié)束符,故長(zhǎng)度都不能確定
(33)有以下程序
#include
#include
void fun(char *s[],int n)
{ char *t; int i,j;
for(i=0;i for(j=i+1;j if(strlen(s[i])>strlen(s[j])) {t=s[i];s[i]:s[j];s[j]=t;} } main() { char *ss[]={"bcc","bbcc","xy","aaaacc","aabcc"}; fun(ss,5); printf("%s,%s\n",ss[0],ss[4]); } 程序的運(yùn)行結(jié)果是 A)xy,aaaacc B)aaaacc,xy C)bcc,aabcc D)aabcc,bcc
計(jì)算機(jī)等級(jí)考試二級(jí)C語(yǔ)言三套全真預(yù)測(cè)試題
計(jì)算機(jī)等級(jí)考試二級(jí)C語(yǔ)言筆試四百經(jīng)典習(xí)題
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |