1.若有以下定義:floatx;inta,b,c=2;,則正確的switch語句是()
A)
switch(x)
{ case1.0∶printf("*\n");
case2.0∶printf("**\n");
}
B)switch(int(x))
{ case1∶printf("*\n");
case2∶printf("**\n");
}
C)
switch(a+b)
{ case1∶printf("*\n");
case1+2∶printf("**\n");
}
D)switch(a+b)
{ case1∶printf("*\n");
casec∶printf("**\n");
}
2.執(zhí)行下面程序片段的結(jié)果是()
int x=123;
do
{ printf("=\n",x--);}
while(!x);
A)打印出321
B)打印出123
C)不打印任何內(nèi)容
D)陷入死循環(huán)
3.以下程序的輸出結(jié)果是()
# include
main()
{ int i=0,a=0;
while(i<20)
{ for(;;){ if((i)==0)break;else i--; }
i+=11;a+=i;
}
printf("%d\n",a);
}
A)21B)32C)33D)11
4.下列與表達式“b=(a<0?-1∶a>0?1∶0)”的功能等價選項是()
A)b=0;
if(a>=0)
if(a>0) b=1;
else b=-1;
B)if(a>0)b=1;
else if(a<0)b=-1;
elseb=0
C)if(a)
if(a<0) b=-1;
else if(a>0)b=1;
else b=0;
D) b=-1;
if(a)
if(a>0)b=1;
else if(a==0)b=0;
else b=-1;
5.若有以下定義:char a; int b; float c; double d; 則表達式“a*b+d-c”值的類型為()
A)float
B)int
C)char
D)double
6.以下敘述中正確的是()
A)在函數(shù)中必須要有return語句
B)在函數(shù)中可以有多個return語句,但只執(zhí)行其中的一個
C)return語句中必須要有一個表達式
D)函數(shù)值并不總是通過return語句傳回調(diào)用處
7.有以下程序
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));
}
程序運行后的輸出結(jié)果是()
A)編譯出錯
B)9
C)21
D)9.0
8.若已定義:
inta[]={0,1,2,3,4,5,6,7,8,9},*p=a,I;
其中0≤i≤9,則對a數(shù)組元素不正確的引用是()
A)a[p-a]
B)*(&a[i])
C)p[i]
D)a[10]
9.以下敘述中正確的是()
A)全局變量的作用域一定比局部變量的作用域大
B)靜態(tài)(static)類型變量的生存期貫穿于整個程序的運行期間
C)函數(shù)的形參都屬于全局變量
D)未在定義語句中賦初值的auto變量和static變量的初值都是隨機值
10.若有如下程序:
main()
{char a[][9]={"china","Japan","USA","France"};
printf("\′%s\′\n",a[2]);}
則程序運行后的輸出結(jié)果是()
A)′Japan′
B)′USA′
C)USA
D)′inaJapanUSAFrance′
答案:1.C 2.B 3.B 4.B 5.D 6.B 7.B 8.D 9.B 10.B
相關(guān)推薦:2010年9月計算機等級考試二級C語言考前預(yù)測題北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |