第 1 頁:選擇題 |
第 4 頁:基本操作題 |
第 5 頁:程序改錯(cuò)題 |
第 6 頁:程序設(shè)計(jì)題 |
第 7 頁:參考答案 |
11.以下敘述中錯(cuò)誤的是( )。
A.C語言編寫的函數(shù)源程序,其文件名后綴可以是C
B.C語言編寫的函數(shù)都可以作為一個(gè)獨(dú)立的源程序文件
C.C語言編寫的每個(gè)函數(shù)都可以進(jìn)行獨(dú)立的編譯并執(zhí)行
D.一個(gè)C語言程序只能有一個(gè)主函數(shù)
12.以下選項(xiàng)中關(guān)于程序模塊化的敘述錯(cuò)誤的是( )。
A.把程序分若干相對(duì)獨(dú)立的模塊,可便于編碼和調(diào)試
B.把程序分成若干相對(duì)獨(dú)立、功能單一的模塊,可便于重復(fù)使用這些模塊
C.可采用自低向上、逐步細(xì)化的設(shè)計(jì)方法把若干獨(dú)立模塊組裝成所要求的程序
D.可采用自頂向下、逐步細(xì)化的設(shè)計(jì)方法把若干獨(dú)立模塊組裝成所要求的程序
13.以下選項(xiàng)中關(guān)于C語言常量的敘述錯(cuò)誤的是( )。
A.所謂常量,是指在程序運(yùn)行過程中,其值不能被改變的量
B.常量分為整型常量、實(shí)型常量、字符常量和字符串常量
C.常量可分為數(shù)值型常量和非數(shù)值常量
D.經(jīng)常被使用的變量可以定義成常量
14.若有定義語句:“int a=10;double b=3.14;”,則表達(dá)式’A’+a+b值的類型是( )。
A.char
B.int
C.double
D.float
15.若有定義語句:“int x=12,y=8,z;”,在其后執(zhí)行語句“z=0.9+x/y;”,則2的值為( )。
A.1.9
B.1
C.2
D.2.4
16.若有定義:“int a,b;”,通過語句“scan[("%d;%d".,&a,&b);”,能把整數(shù)3賦給變量a,5賦給變量b的輸入數(shù)據(jù)是( )。
A.3 5
B.3,5
C.3;5
D.35
17.若有定義語句:“int kl一10,k2=20;”,執(zhí)行表達(dá)式(kl=kl>k2)&&(k2=k2>
k1)后,kl和k2的值分別為( )。
A.0和1
B.0和20
C.10和1
D.10和20
18.有以下程序:
#include
main()
{ int a=1,b=0;
if(--a)b++;
else if(a=0)b+=2;
else b+=3:
print[("%d\n",b);
}
程序運(yùn)行后的輸出結(jié)果是( )。
A.0
B.1
C.2
D.3
19.下列條件語句中,輸出結(jié)果與其他語句不同的是( )。
A.if(a)printf("%d n",x); else print[("%d\n",y)
B.if(a=0)pritf("%d n",y); else print[("%d\n",x)
C.if(a!一0)printf("%d n",x); else print[("%a\n",y)
D.if(a=O)print[("%d n",x); else printf("%d\n",y)
20.有以下程序:
#include
main()
{ int a=7;
while(a--);
print[("%d\n",a);
}
程序運(yùn)行后的輸出結(jié)果是( )。
A.-l
B.0
C.1
D.7
21.以下不能輸出字符A的語句是(注:字符A的ASCIl碼值為65,字符a的ASCIl碼
值為97)( )。
A.print[("%c\n",’a’-32);
B.print[("%d\n",’A’);
C.printf("%c\n",65);D.printf("%c\n",’B’-l);
22.有以下程序(注:字符a的ASCIl碼值為97)
#include
main()
{ char*s={"abc")
do
{printf("%d",*S%10");++S; }
while(*s);
}
隉序運(yùn)行后的輸出結(jié)果是( )。
A.abc
B.789
C.7890
D.979899
23.若有定義語句:double a,*p=&a;,以下敘述中錯(cuò)誤的是( )。
A.定義語句中的*號(hào)是一個(gè)間址運(yùn)算符
B.定義語句中的*號(hào)只是一個(gè)說明符
C.定義語句中的P只能存放double類型變量的地址
D.定義語句中,*p=&n把變量a的地址作為初值賦給指針變量P
24.有以下程序:
#include
double f(double x);
main()
{double a=0; int i;
for(i=0;i<30;i+=10)a+=f((double)i);
printf("%5.of\n",a);
}
double f(double x)
{ return x*x+1; }
程序運(yùn)行后的輸出結(jié)果是( )。
A.503
B.401
C.500
D.1404
25.若有定義語句:“int year=2009,*p=&year;”,以下不能使變量year中的值增至2010的語句是( )。
A.*p+=1;
B.(*p)++;
C.++(*p);
D.*++P
26.以下定義數(shù)組的語句錯(cuò)誤的是( )。
A.int num[]={1,2,3,4,5,6};
B.int num[][3]={{1,2},3,4,5,6};
C.int num[2][4]={{1,2},{3,4},{5,6}};
D.int num[][4]={1,2,3,4,5,6};
27.有以下程序:
#includc
void fun(int *p)
{printf("%d\n",p[5]);}
main()
{int a[10]={1,2,3,4,5,6,7,8,9,10};
fun(&a[3]);
}
程序運(yùn)行后的輸出結(jié)果是( )。
A.5
B.6
C.8
D.9
28.有以下程序:
#include
#define N 4
void fun(int a[][N],int[])
{ int i;
for(i=o;i }
main()
{int x[N][N]={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}},y[N],i;
fun(X,y);
for(i=0;i }
程序運(yùn)行結(jié)果為( )。
A.-l2,-3,0,0,
B.-3,-l,1,3,
C.0,1,2,3,
D.-3,-3,-3,-3,
29.有以下函數(shù)
int fun(char*X,char*y)
{ int n=0;
while((*x= = =*y)&&*x!=’\O’){x++; y++; n++;}
return n;
}
函數(shù)的功能是( )。
A.查找X和y所指字符串中是否有’\o’
B.統(tǒng)計(jì)x和Y所指字符串中最前面連續(xù)相同的字符個(gè)數(shù)
C.將Y所指字符串賦給X所指定存儲(chǔ)空間
D.統(tǒng)計(jì)X和Y所指字符串中相同的字符個(gè)數(shù)
30.若有定義語句:“char*s1=”0K”,*s2=”ok”;”,以下選項(xiàng)中,能夠輸出“OK”的語句是( )。
A.if(strcmp(sl,s2)= =0)puts(s1);
B.if(strcmp(sl,s2)!=0)puts(s2);
C.if(strcmp(sl,s2)= =l)puts(s1);
D.if(stremp(sl,s2)!=0)puts(s1);
相關(guān)推薦:
2015年計(jì)算機(jī)二級(jí)C語言測(cè)試題及答案解析匯總
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |