當前位置:才華齋>英語>等級考試>

計算機二級C語言真題選擇題

等級考試 閱讀(2.93W)
計算機二級C語言真題選擇題
1)軟體是指 A)程式 B)程式和文件C)演算法加資料結構 D)程式、資料和相關文件的集合
2)軟體除錯的目的是 A)發現錯誤 B)改正錯誤C)改善軟體的效能 D)驗證軟體的正確性
3)在面向物件方法中,實現資訊隱蔽是依靠 A)物件的繼承 B)物件的多型C)物件的封裝 D)物件的分類
4)下列敘述中,不符合良好程式設計風格的是
A)程式的效率第一,清晰第二 B)程式的可讀性好C)程式中有必要的註釋 D)輸入資料前要有提示資訊
5)下列敘述中正確的是 A)程式執行的效率與資料的儲存結構密切相關B)程式執行的效率只取決於程式的控制結構
C)程式執行的效率只取決於所處理的資料量D)以上三種說法都不對
6)下列敘述中正確的是A)資料的邏輯結構與儲存結構必定是一一對應的
B)由於計算機儲存空間是向量式的儲存結構,因此,資料的儲存結構一定是線性結構
C)程式設計語言中的陣列一般是順序儲存結構,因此,利用陣列只能處理線線結構 D)以上三種說法都不對
7)氣泡排序在最壞情況下的比較次數是 A)n(n+1)/2 B)nlog2n C)n(n-1)/2 D)n/2
(8)一棵二叉樹中共有70個葉子結點與80個度為1的結點,則該二叉樹中的總結點數為
A)219 B)221 C)229 D)231
9)下列敘述中正確的是A)資料庫系統是一個獨立的系統,不需要作業系統的支援
B)資料庫技術的根本目標是要解決資料的共享問題 C)資料庫管理系統就是資料庫系統 D)以上三種說法都不對
10)下列敘述中正確的是 A)為了建立一個關係,首先要構造資料的邏輯關係
B)表示關係的二維表中各元組的每一個分量還可以分成若干資料項
C)一個關係的屬性名錶稱為關係模式 D)一個關係可以包括多個二維表
(11)C語言源程式名的字尾是 A) B).C C) D)
(12)可在C程式中用做使用者識別符號的一組識別符號是 A)and B)Date C)Hi D)case_2007 y-m-d Bigl
(13)以下選項中,合法的一組C語言數值常量是 A)028 B)12. C).177
D)0x8A. 5e-3 OXa23 4c1.5 10,000-0xf 4.5e0 Oabc 3.e5
(14)以下敘述中正確的是 A)C語言程式將從源程式中第一個函式開始執行
B)可以在程式中由使用者指定任意一個函式作為主函式,程式將從此開始執行
C)C語言規定必須用main作為主函式名,程式將從此開始執行,在此結束
D)main可作為使用者識別符號,用以命名任意一個函式作為主函式
(15)若在定義語句:int a,b,c,*p=&c;之後,接著執行以下選項中的語句,則能正確執行的語句是
A)scanf("%d",a,b,c); B)scanf("%d%d%d",a,b,c); C)scanf("%d",p); D)scanf("%d",&p);
(16)以下關於long、int和short型別資料佔用記憶體大小的敘述中正確的是
A)均佔4個位元組 B)根據資料的大小來決定所佔記憶體的位元組數 C)由使用者自己定義 D)由C語言編譯系統決定
(17)若變數均已正確定義並賦值,以下合法的C語言賦值語句是
A)x=y==5; B)x=n%2.5; C)x+n=I; D)x=5=4+1;
(18)有以下程式段
int j; float y; char name[50];
scanf("%2d%f%s",&j,&y,name); 當執行上述程式段,從鍵盤上輸入55566 7777abc後,y的值為
A)55566.0 B)566.0 C)7777.0 D)566777.0
(19)若變數已正確定義,有以下程式段
i=0;
do printf("%d,",i);while(i++);
printf("%dn",i) 其輸出結果是 A)0,0 B)0,1 C)1,1 D)程式進入無限迴圈
(20)有以下計算公式 若程式前面已在命令中包含math.h檔案,不能夠正確計算上述公式的程式段是
A)if(x>=0) y=sqrt(x); B)y=sqrt(x)else y=sqrt(-x); if(x<0) y=sqrt(-x);
C)if(x>=0)y=sqrt(x); D)y=sqrt(x>=0?x:-x);If(x<0)y=sqrt(-x);
(21)設有條件表示式:(EXP)?i++;j--,則以下表達式中(EXP)完全等價的是
A)(EXP= =0) B)(EXP!=0) C)(EXP= =1) D)(EXP!=1)
(22)有以下程式
#include
main()
{int y=9;
for( y>0;y--)
if(y%3= =0) printf("%d",--y);0} 程式的'執行結果是 A)741 B)963 C)852 D)875421
(23)已有定義:char c; ,程式前面已在命令列中包含ctype.h檔案,不能用於判斷c中的字元是否為大寫字母的表示式是 A)isupper(c) B)’A’<=c<=’Z’C)’A’<=c&&c<=’Z’ D)c<=(‘2’-32)&&(‘a’-32)<=c
(24)有以下程式
#include
main()
{int i,j,m=55;
for(i=1;i<=3;i++)
for(j=3;j<=i;j++) m=m%j;
printf("%dn",m);} 程式的執行結果是 A)0 B)1 C)2 D)3
(25)若函式呼叫時的實參為變數時,以下關於函式形參和實參的敘述中正確的是
A)函式的實參和其對應的形參共佔同一儲存單元 B)形參只是形式上的存在,不佔用具體儲存單元
C)同名的實參和形參佔同一儲存單元 D)函式的形參和實參分別佔用不同的儲存單元
(26)已知字元’A’的ASCⅡ程式碼值是65,字元變數c1的值是’A’,c2的值是’D’。執行語句printf("%d,%d",c1,c2-2);後,輸出結果是 A)A,B B)A,68 C)65,66 D)65,68
(27)以下敘述中錯誤的是 A)改變函式形參的值,不會改變對應實參的值
B)函式可以返回地址值 C)可以給指標變數賦一個整數作為地址值
D)當在程式的開頭包含檔案stdio.h時,可以給指標變數賦NULL
(28)以下正確的字串常量是 A)"" B)’abc’ C)OlympicGames D)""
(29)設有定義:char p[]={’1’,’2’,’3’},*q=p; ,以下不能計算出一個char型資料所佔位元組數的表示式是
A)sizeof(p) B)sizeof(char) C) sizeof(*q) D)sizeof(p[0])
(30)有以下函式
int aaa(char *s)
{char *t=s;
while(*t++);
t--;
return(t-s);} 以下關於aaa函式的功能敘述正確的是
A)求字串s的長度 B)比較兩個串的大小 C)將串s複製到串t D)求字串s所佔位元組數
(31)若有定義語句:int a[3][6]; ,按在記憶體中的存放順序,a陣列的第10個元素是
A)a[0][4] B)a[1][3] C)a[0][3] D)a[1][4]
(32)有以下程式
#include
void fun(char **p)
{++p; printf("%sn",*p);}
main()
{char *a[]={"Morning","Afternoon","Evening","Night"};
fun(a);} 程式的執行結果是 A)Afternoon B)fternoon C)Morning D)orning
33)若有定義語句:int a[2][3],*p[3]; ,則以下語句中正確的是
A)p=a; B)p[0]=a; C) p[0]=&a[1][2]; D)p[1]=&a;
(34)有以下程式
#include
void fun(int *a,int n)/*fun函式的功能是將a所指陣列元素從大到小排序*/
{int t,i,j;
for(i=0;i<N-1;I++)
for(j=i+1;j<N;J++)
if (a}
main()
{int c[10]={1,2,3,4,5,6,7,8,9,0},i;
fun(c+4,6);
for (i=0;i<10;i++) printf("%d,",c);
printf("n");} 程式執行的結果是
A)1,2,3,4,5,6,7,8,9,0, B)0,9,8,7,6,5,1,2,3,4, C) 0,9,8,7,6,5,4,3,2,1, D)1,2,3,4,9,8,7,6,5,0,
(35)有以下程式
#include
int fun(char s[])
{int n=0;
while(*s<=’9’&&*s>=’0’) {n=10*n+*s-’0’;s++;}
return(n);}
main()
{char s[10]={’6’,’1’,’*’,’4’,’*’,’9’,’*’,’0’,’*’};
printf("%dn",fun(s));} 程式執行的結果是 A)9 B)61490 C)61 D)5
36)當用戶要求輸入的字串中含有空格時,應使用的輸入函式是 A)scanf() B)getchar() C)gets() D)getc()
(37)以下關於字串的敘述中正確的是
A)C語言中有字串型別的常量和變數 B)兩個字串中的字元個數相同時才能進行字串大小的比較
C)可以用關係運算符對字串的大小進行比較 D)空串一定比空格打頭的字串小
(38)有以下程式:
#include
void fun(char *t,char *s)
{while(*t!=0)t++;
while((*t++=*s++)!=0);}
main()
{ char ss[10]=”acc”,aa[10]=”bbxxyy”;
fun(ss,aa);
printf(“%s,%sn”,ss,aa);}程式執行結果是
A) accxyy , bbxxyy B) acc, bbxxyy C) accxxyy,bbxxyy D) accbbxxyy,bbxxyy
(39)有以下程式
#include
#include
void fun(char s[][10],int n)