- 相關(guān)推薦
全國計算機二級c語(yǔ)言題庫試題及答案
計算和模擬作為一種新的研究手段,常使一些學(xué)科衍生出新的分支學(xué)科。以下是關(guān)于全國計算機二級c語(yǔ)言題庫試題及答案,歡迎大家參考!
一、選擇題(每小題1分,共40分)
1). 設有定義: struct {char mark[12]; int num1; double num2;} t1,t2; 若變量均已正確賦初值,則以下語(yǔ)句中錯誤的是 ( )
A.t2.num1=t1.num1;
B.t2.mark=t1.mark;
C.t1=t2;
D.t2.num2=t1.num2;
正確答案:B
答案解析:這個(gè)題目主要涉及到結構體的定義與賦值操作。根據題意結構體變量t1,t2的成員變量mark是字符數組,對于字符數組之間的賦值操作應該使用循環(huán)語(yǔ)句對每個(gè)字符進(jìn)行賦值,而選項A是用數組名實(shí)現字符數組之間的賦值操作,是錯誤的。
2). 若各選項中所用變量已正確定義,函數fun中通過(guò)return語(yǔ)句返回一個(gè)函數值,以下選項中錯誤的程序是( )
A.main() { …… x=fun(2,10); ……} float fun(int a,int B{……}
B.float fun(int a,int B{……} main() { …… x=fun(i,j); ……}
C.float fun(int ,int); main() { …… x=fun(2,10); …… } float fun(int a,int B{……}
D.main() { float fun(int i,int j); …… x=fun(i,j); …… } float fun(int a,int B{……}
正確答案:A
答案解析:C語(yǔ)言規定,函數必須先定義,后調用(函數的返回值類(lèi)型為int或char時(shí)除外)。在選項A中,調用的子函數在調用后面定義,所以不正確。在選項B、C中,被調用函數在主函數之前定義,再在主函數中調用,所以是正確的;在選項D中,在主函數中先對子函數float fun(int i,int j)進(jìn)行了聲明,然后進(jìn)行調用。
3). 數據庫設計包括兩個(gè)方面的設計內容,它們是
A.概念設計和邏輯設計
B.模式設計和內模式設計
C.內模式設計和物理設計
D.結構特性設計和行為特性設計
正確答案:A
答案解析:數據庫設計包括數據庫概念設計和數據庫邏輯設計兩個(gè)方面的內容。
4). 在設計程序時(shí),應采納的原則之一是
A.不限制goto語(yǔ)句的使用
B.減少或取消注解行
C.程序越短越好
D.程序結構應有助于讀者理解
正確答案:D
答案解析:濫用goto 語(yǔ)句將使程序流程無(wú)規律,可讀性差,因此A不選;注解行有利于對程序的理解,不應減少或取消,B也不選;程序的長(cháng)短要依照實(shí)際情況而論,而不是越短越好,C也不選。
5). 關(guān)系表中的每一行記錄稱(chēng)為一個(gè)( )。
A.字段
B.元組
C.屬性
D.關(guān)鍵碼
正確答案:B
答案解析:在關(guān)系表中,每一列稱(chēng)為一個(gè)屬性,對應表中的一個(gè)字段;每…行稱(chēng)為一個(gè)元組,對應表中的一條記錄。
二、操作題
【真題1】 下列給定程序中,函數fun()的功能是:通過(guò)某種方式實(shí)現兩個(gè)變量值的
交換,規定不允許增加語(yǔ)句和表達式。例如變量a初值為8,b 初值為3,程序運行
后a 中的值為3,b 中的值為8。 試題程序:
#include < conio.h >
#include < stdio.h >
int fun(int *x,int y)
{ __1___ t;
t=*x;*x=y;
return(t)__2__
}
main()
{int a=3,b=8;
printf("%d %d\n ",a,b);
b=fun(__3__,b);
printf("%d %d\n ",a,b);
}
解析: 填空1:根據題目的意思,這里應該是聲名一個(gè)新的變量t,由后面的賦
值語(yǔ)句以及返回語(yǔ)句可以明白這個(gè)變量應該是整型的(因為函數的返回值類(lèi)型
是int)。
填空2:根據題目的意思,此處是子函數的返回語(yǔ)句,由C 語(yǔ)言的知識,每個(gè)
語(yǔ)句的結尾都應該使用";" 。
填空3:fun()函數的調用方式說(shuō)明fun()函數的參數應當為指針類(lèi)型,即應該
把變量的地址作為參數傳遞(符號"&"是取地址操作)。
答案:【1】int 【2】; 【3】&a
【真題2】 給定程序modi.c 中函數fun的功能是:求兩個(gè)形參的乘積和商數,并
通過(guò)形參返回調用程序。 例如輸入:61.82 和 12.65,輸出為: c =
782.023000 d = 4.886957。 請改正 fun 函數中的錯誤,使它能得出正確的結
果。 注意:不要改動(dòng) main 函數,
#include < stdio.h >
#include < conio.h >
/**********found**********/
void fun ( double a, b, double x,y )
{/**********found**********/
x = a * b; y = a / b;
}
main ( )
{ double a, b, c, d;
clrscr( );
printf ( "Enter a , b : ");
scanf ( "%lf%lf", &a, &b );
fun ( a , b, &c, &d ) ;
printf (" c = %f d = %f\n ", c, d );
}
解析: 本題的考核點(diǎn)是C語(yǔ)言中函數的入口參數和指針的使用。
函數的參數表是由逗號分隔的變量表,變量表由變量類(lèi)型和變量名組成,與普
通的變量說(shuō)明不同,函數參數必須同時(shí)具有變量類(lèi)型和變量名,因此應該把程
序中"void fun ( double a, b, double x,y )"語(yǔ)句改為"void fun ( double a,
double b, double *x, double *y )"或相同作用的語(yǔ)句。
從主函數里的" fun ( a , b, &c, &d ) ; "語(yǔ)句可以看出,fun 函數后兩個(gè)參數
應為長(cháng)浮點(diǎn)型數據的指針,因此應該把程序中"x = a * b; y = a / b;"語(yǔ)句改
為"*x = a * b; *y = a / b;"或相同作用的語(yǔ)句。
【全國計算機二級c語(yǔ)言題庫試題及答案】相關(guān)文章:
計算機二級c語(yǔ)言題庫及答案03-28
國家計算機二級c語(yǔ)言題庫及答案03-08
計算機C語(yǔ)言試題及答案02-25
計算機二級C語(yǔ)言考試試題及答案03-08