程式設計往往以某種程式設計語言為工具,給出這種語言下的程式。程式設計過程應當包括分析、設計、編碼、測試、排錯等不同階段。本站小遍小編整理了一套計算機c語言二級考試試題及答案,希望可以幫助大家!
一、單項選擇
1 下列資料中,為字串常量的是()。 D
A、'A'
B、How do you do.
C、$abc
D、"house"
2 以下所列的C語言常量中,錯誤的是( )。 B
A、0xFF
B、1.2e0.5
C、2L
D、'72'
3 以下程式的輸出結果是()。 D
main()
{float x=3.6;
int i;
i=(int)x;
printf("x=%f,i=%dn",x,i);
}
A、x=3.600000,i=4
B、x=3 i=3.600000
C、x=3,i=3
D、x=3.600000,i=3
4 若k是整型,則以下程式段的執行結果是:( ) B
k=-3;
if(k<=0) printf("####")
else printf("&&&&");
A、####
B、有語法錯誤,無結果
C、&&&&
D、####&&&&
5 若x=2,y=3則x||y的結果是( )。 C
A、3
B、0
C、1
D、2
6 針對下列程式段回答問題( B ).
for(t=1;t<=100;t++)
{
scanf("%d",&x);
if(x<0) continue;
printf("=",t);
}
A、x>=0時什麼也不輸出
B、最多允許輸出100個非負整數
C、printf函式永遠也不執行
D、當x<0時整個迴圈結束
7 以下程式的執行結果是( )。 B
main()
{ int num = 0;
while( num <= 2 ) { num++; printf( "%d,",num ); } }
A、0,1,2
B、1,2,3,
C、1,2,3,4,
D、1,2,
8 選擇正確的輸入語句( D )。:(其中:char string[20];)使得string的內容為"I am student".
A、scanf("%s", string);
B、scanf("%c", &string);
C、scanf("%s", &string);
D、gets(string);
9 對以下說明語句 int a[10]={6,7,8,9,10}; 的正確理解是()。 B
A、將5個初值依次賦給a[6]至a[10]
B、將5個初值依次賦給a[0]至a[4]
C、因為陣列長度與初值的個數不相同,所以此語句不正確
D、將5個初值依次賦給a[1]至a[5]
10 以下識別符號中可以作為使用者函式名的是( ). D
A、struct
B、int
C、union
D、go_to
11 以下敘述錯誤的是( ). B
A、函式呼叫可以出現在一個表示式中
B、函式呼叫可以作為一個函式的形參
C、函式呼叫可以作為一個函式的實參
D、函式允許遞迴呼叫
12 若用陣列名作為函式的實參,傳遞給形參的是()。 B
A、陣列第一個元素的值
B、陣列的首地址
C、陣列元素的個數
D、陣列中全部元素的值
13 在C語言程式中()。 B
A、函式的定義可以巢狀,但函式的呼叫不可以巢狀
B、函式的'定義不可以巢狀,但函式的呼叫可以巢狀
C、函式的定義和函式呼叫不可以巢狀
D、函式的定義和函式呼叫均可以巢狀
14 下列說法中正確的是( ). B
A、函式呼叫不佔執行時間,只佔編譯時間.
B、巨集替換不佔執行時間,只佔編譯時間.
C、有引數的巨集定義,就是函式.
D、在定義巨集時,巨集名與帶引數的括弧之間可以加空格.
15 若有說明:int *p,m=5,n;以下正確的程式段是()。D
A、scanf("%d",&n);*p=n;
B、p=&n;scanf("%d",*p)
C、p=&n;scanf("%d",&p);
D、p=&n;scanf("%d",p);
16 對於下述定義,不正確的敘述是( ). B
union data
{int i;
char c;
float f;
}a,b;
A、變數a的地址和它的各成員地址都是相同的
B、可以在定義型別的同時定義變數a,並對a的任意成員初始化
C、變數a所佔記憶體的長度等於成員f的長度
D、如果有定義語句 union data a={6};則對變數a的初始化是正確的