- 相關推薦
2014年計算機二級考試C語言選擇題
1.結構化分析方法是面向( )的自頂向下、逐步求精進行需求分析的方法
A.對象
B.數據結構
C.數據流
D.目標
2.對線性表進行二分法檢索,其前提條件是( )。
A.線性表以順序方式存儲,并按關鍵碼值排好序
B.線性表以順序方式存儲,并按關鍵碼的檢索頻率排好序
C.線性表以鏈式方式存儲,并按關鍵碼值排好序
D.線性表以鏈式方式存儲,并按關鍵碼的檢索頻率排好序
3.結構化程序設計的3種結構是( )。
A.順序結構、選擇結構、轉移結構
B.分支結構、等價結構、循環結構
C.多分支結構、賦值結構、等價結構
D.順序結構、選擇結構、循環結構
4.已知數據表A中每個元素距其最終位置不遠,為了節省時間,應采用的算法是( )。
A.堆排序
B.直接插入排序
C.快速排序
D.直接選擇排序
5.在數據管理技術的發展過程中,經歷了人工管理階段、文件系統階段和數據庫系統階段。其中數據獨立性最高的階段是( )。
A.數據庫系統
B.文件系統
C.人工管理
D.數據項管理
6.設有二元關系R和三元關系s,下列運算合法的是( )。
A.R∩S
B.R∪S
C.R-S
D.R×S
7.兩個或兩個以上模塊之間聯系的緊密程度稱為( )。
A.耦合性
B.內聚性
c.復雜性
D.數據傳輸特性
8.設a=l,b=2,c=3,d=4,則表達式:“a A.4
B.3
C.2
D.1
9.若有定義:“int a=4,b=5;float x=3.4,y=2.1;”,則下列表達式的值為( )。
(float)(a+b)/2+(int)x%(int)y;
A.5.5
B.55
C.5.500000
D.55.00000
10.下列程序的輸出結果是( )。
main()
{ int a,b,d=25;
a=d/10%9;
b=a&&(一1);
printf("%d,%d\n",a,b);}
A.6,1
B.2,1
C.6,0
D.2,0
11.數據庫DB、數據庫系統DBS、數據庫管理系統DBMS之間的關系是( )。
A.DB包含DBS和DBMS
B.DBMS包含DB和DBS
C.DBS包含DB和DBMS
D.沒有任何關系
12.下列合法的聲明語句是( )。
A.int abc=50;
B.double int=3+5e2.5;
C.long do=1L;
D.float 3 asd=3e一3;
13.設x、y和z是int型變量,且x=4,y=6,z=8,則下列表達式中值為0的是( )。
A.x&&y
B.x<=y
C.x||y+z&&y—Z
D.!((x 14.若ch為char型變量,k為int型變量(已知字符a的
ASCII碼是97),則執行下列語句后輸出的結果為( )。
cb=’b’;
k=10;
printf("%X,%o,”,ch,ch,k);
printf("k=%%d\n",k);
A.因變量類型與格式描述符的類型不匹配,輸出無定值
B.輸出項與格式描述符個數不符,輸出為0值或不定值
C.62,142,k=%d
D.62,142,k=%10
15.有下列程序:
fun(int X,int y){return(x+y);}
main()
{int a=1,b=2,C=3,sum;
sum=fun((a++,b++,a+b),c++);
printf("%d\n",sum);
}
執行后的輸出結果是( )。
A.6
B.7
C.8
D.9
16.假設a和b為int型變量,則執行以下語句后b的值為( )。
a=1;b=10;
do
{ b-=a;a++;}
while(b--<0);
A.9
B.-2
C.-l
D.8
17.下列程序執行后的輸出結果是( )。
main()
{ int a[3][3],*p,i};
p=&a[0][0];
for(i=p;i<9;i++)p[i]=i+1;
printf("%d\n",a[1][2]);
}
A.3
B.6
C.9
D.隨機數
18.以下程序的輸出結果是( )。
int f(int A)
{ return a%2; }
main()
{int s[8]={1,3,5,2,4,6},i,d=0;
for(i=0;f(s[8]);i++)d+=s[i];
printf("%d\n",d);
}
A.9
B.11
C.19
D.21
19.s1和s2已正確定義并分別指向兩個字符串。若要求:當s1所指串大于s2所指串時,執行語句s;則以下選項中正確的是( )。
A.if(s1>s2)S;
B.if(strcmp(s1,s2))S;
C.if(strcmp(s2,sl)>O)S;
D.if(stremp(s1,s2)>O)S;
20.有以下函數:
char fun(char*p)
{return P;}
該函數的返回值是( )。
A.無確切的值
B.形參p中存放的地址值
c.一個臨時存儲單元的地址
D.形參p自身的地址值
21.下列程序執行后的輸出結果是( )。
main()
{ char x=0xFFFF;printf("%d\n",x--);}
A.-32767
B.FFFE
C.1
D.32768
22.下面的函數調用語句中func函數的實參個數是( )。
func((f2v1,v2),(v3,v4,v5),(v6,max(v7,v8)))
A.3
B.4
C.5
D.8
23.語句“printf("akbre"\’hi\’y\\\bou\n")”;的輸出結果是( )。
A.akbre\’hi\’y ’\\\bou
B.a\bre\’hi\\y\bou
C.re ’hi’you
D.abre’hi’y\bou
24.下面程序輸出的是( )。
main()
{ int t=l;fun(fun(t));}
fun(int h)
{ static int a[3]={1.2.3};
int k;
for(k=0;k<3;k++)a[k]+=a[k]-h;
for(k=0;k<3;k++)printf("%d",a[k]);
printf("\n");
return(a[h]);}
A.1,2,3,
1,5,9,
B.1,3,5,
1,3,j,
C.1,3,5,
0,4,8,
D.1,3。5,
-1,3,7,
25.以下敘述中正確的是( )。
A.預處理命令行必須位于C源程序的起始位置
B.在C語言中,預處理命令行都以“#”開頭
c.每個C程序必須在開頭包含預處理命令行:#include
D.C語言的預處理不能實現宏定義和條件編譯的功能
26.為了避免在嵌套的條件語句if else中產生二義性,C語言規定,else子句總是與( )配對。
A.縮排位置相同if
B.其前面最近的if
C.其后面最近的if
D.同一行上的if
27.設有下列程序段:
char str[]="HelloWorld":
char* plr;
ptr=str:
執行上面的程序段后,*(ptr+10)的值為( )。
A.’\0 ’
B.’0’
C.不確定的值
D.’0’的地址
28.有以下程序:
void swap(char*x,char*y)
{ char t;
t=*x;*x=*y;*y=t;
}
main()
{ char*s1="abe",*s2="123":
swap(s1,s2);
printf("%s,%s\n",s1,s2);
}
程序執行后的輸出結果是( )。
A.123,abe
B.abc.123
C.1bc,a23
D.321,cba
29.下列程序的運行結果是( )。
#include
main()
{ static char a[]="Languagef",b[]="programe":
char*p1,*p2;int k;
p1=a;p2=b;
for(k=0;k<=8;k++)
if(*(p1+k)==*(p2+k))
printf("%c",*(p1+k)):
}
A.gae
B.ang
C.program
D.有語法錯
30.下列程序的運行結果為( )。
#define MAX(x,y)(x)>(y)?(x):(y)
main()
{ int a=2,b=3,C=1,d=3,t:
printf("%d\n",(MAX(a+h,c+d))*100):
}
A.500
B.5
C.4
D.400
31.設int x=7,則~x的值是( )。
A.-8
B.7
C.-1
D.1
32.有以下程序:
void fun(char*a,char*b)
{a=b; (*a)++; }
main( )
{char c1=’A ’,c2=’a’,*p1,*p2;
p1=&c1;p2=*c2;fun(p1,p2);
printf("%C%c\n",c1,c2);
}
程序運行后的輸出結果是( )。
A.Ab
B.aa
C.Aa
D.Bb
33.有以下程序:
int fun(int n)
{if(n==l)return l;
else return(n+fun(n一1)):
}
main( )
{int x;
scanf("%d",&x);x=fun(x);printf("%d\n",
x):
}
執行程序時,給變量X輸入10,程序的輸出結果是( )。
A.55
B.54
C.65
D.45
34.有以下程序:
void f(int x,int y)
{int t;
if(x }
main( )
{int a=4,b=3,c=5;
f(a,b);f(a,c);f(b,c);
printf("%d,%d,%d\n",a,b,c);
}
執行后輸出結果是( )。
A.3,4,5
B.5,3,4
C.5,4,3
D.4,3,5
35.以下程序的輸出結果是( )。
main( )
{char*s="12134211";
int v[4]=(0,0,0,0),k,i;
for(k=0;s[k];k++)
{switch(s[k])
{case’1’:i=0;
case’2’:i=1;
case’3’:i=2;
case’4’:i=3;}
}
v[i]++:
}
for(k=0;k<4;k++)printf("%d",v[k]);
A.4 2 1 1
B.0 0 0 8
C.4 6 7 8
D.8 8 8 8
36.有以下程序:
main( )
{int x=102,y=012;
printf("%2d,%2d\n",x,y);
}
執行后輸出結果是( )。
A.10,01
B.02,12
C.102,10
D.02,10
37.有以下程序:
main( )
{int x=0,y=5,z=3;
while(z-->0&&++x<5)y=y-l;
printf("%d,%d,%d\n",x,y,z);
}
程序執行后的輸出結果是( )。
A.3,2,0
B.3。2. 1
C.4,3,-1
D.5,2.-5
38.有以下程序:
main( )
{int i,n=0:
for(i=2;i<5;i++)
{do
{if(i%3) continue:
n++:
}while(!i);
n++:
}
printf("n=%d\n",n);
}
程序執行后輸出結果是( )。
A.n=5
B.n=2
C.n=3
D.n=4
39.下面程序的功能是輸出以下形式的金字塔圖案:main( )
{int i,j; *
for(i=l;i<-4;i++)***
{for(j=1;j<=4-i;j++)printf("");
*****
for(j=1;j<=____;j++)printf("
*"); *******
printf("\n");
}
}
在下劃線處應填入的是( )。
A.i
B.2*i一1
C.n=2*i+1
D.i+2
40.函數ftell(fp)的作用是( )。
A.得到fp所指向文件的當前讀寫位置
B.初始化流式文件的位置指針
c.移動流式文件的位置指針
D.以上答案均正確
【計算機二級考試C語言選擇題】相關文章:
計算機二級考試C語言試題與答案(選擇題)07-06
計算機二級《C語言》選擇題題庫及答案11-16
計算機二級考試C語言考試技巧05-13
計算機二級C語言考試技巧09-24
全國計算機二級考試C語言選擇題練習及答案07-01
計算機二級C語言考試必看技巧09-30
計算機等級考試二級C++筆試選擇題06-27