福建省二級C模擬題 1

2022-11-02 04:54:11 字數 3851 閱讀 6145

一、選擇題

1. 下面關於c語言的敘述中,正確的是(d )。

a)每行只能寫一條語句b)程式中必須包含有輸入語句

c)main函式必須位於檔案的開頭 d) 每條語句最後必須有乙個分號

2.在c語言中,正確的使用者識別符號是(b )。

a)3fb)_forc)struct d)_f.5

3.若有定義:int a=2; 則正確的賦值表示式是(a )。

a)a-=(a*3) b)double (-a) c)a*3d)a*4=3

4. 下面敘述正確的是( b)。

a)2/3與2.0/3.0等價 b)(int)2.0/3與2/3等價

c)++5與6等價d)』a』與」a」等價

5.若已定義:float m;擬從鍵盤輸入135.78這一資料給變數m,則應選用的語句是(d )。

a)scanf(」%5.2f」,&mb)scanf(」%3.2f」,&m);

c)scanf(」%6.2f」,&md)scanf(」%6f」,&m);

6. 若已定義:int a=3,b=15,c;則語句c=a>b;執行後c的值為( b)。

a)1b)0c).td).f.

7. 已知double a=5.2;則正確的賦值表示式是( a ).

a)a+=a-=(a=4)*(a=3b)a=a*3=2

c)a%3d)a=double (-3)

8. 以下的if語句中,x的值一定被重新賦值的是(b )。

a)if(x==y) x+=y;

b)if(x>y && x!=y)

x+=y;

c)if(x!=y)

scanf(」%d」,&x);

else

scanf(」%d」,&y);

d)if(x

9.設有整型變數x,下述語句(b )不會出現死迴圈。

a)for(;;x+=1b)for(;(x=getchar())!=』\n』;);

c)while(1),i,j,s=0;

for(i=0;i<3;i++)

for(j=0;j s=s+a[i][j];

則執行該程式段後,s的值是(c )。

a)0 b)1 c)2 d)3

12.設有以下變數定義:

char str1=」string」,str2[8],*str3,*str4=」string」;

(a )是正確的。

a)strcpy(str1,」chinab)str2=」china」;

c)strcpy(*str3,」chinad)strcpy(str4[0],」china」);

13. 設有如下函式定義:

int fun(char *str)

則以下語句執行後的輸出結果是( a)。

printf(」%d\n」,fun(」student」));

a)7 b)8 c)9 d)10

14. 若有以下巨集定義,

#define mod(x,y) x%y

則執行以下程式段後,z的值是(d )

int z,a=15,b=100;

z=mod(b,a);

a)100 b)15 c)11 d)10

15.設有以下語句,則(d )是對a陣列元素的不正確引用,其中0≤i<10。

int a[10]=,*p=a;

a)a[p-a] b)*(&a[ic)p[i] d)*(*(a+i))

16. 若有以下程式段,且0≤i<4,0≤j<3,則不能正確訪問a陣列元素的是(d )。

int i,j,(*p)[3];

int a[3]=;

p=a;

a)*(*(a+i)+j) b)p[i][j] c)(*(p+i))[j] d)p[i]+j

17. 以下程式段的執行結果是(b )。

union

s;printf(」%d」,

a)20 b)65 c)0 d)a

18. 若有以下定義:

struct link

*head,*p;

並已建立如下圖所示的鍊錶結構:

head

指標p指向如下結點:

p則能夠把p所指結點插入到鍊錶中成為鍊錶第2個結點的程式段是( a)。

a)p->next=head->next; head->next=p;

b)head->next=p; p->next=head->next;

c) d)(*head).next=p; (*p).next=(*head).next;

19.對列舉型別進行定義,不正確的是( a)。

a)enum b;

c)enum c;

20.以下程式的功能是(a )。

#include<>

main()

a)計算檔案的起始位址b)計算檔案的終止起始位址

c)計算檔案內容的位元組數 d)將檔案指標定位到檔案末尾

二、改錯題

改錯題:共2小題,每題10分,說明如下:

(1)修改程式在每對「/**/」之間存在的錯誤;

(2)不得刪改程式中所有的「/**/」注釋和其它**;

(3)源程式均在考生資料夾中,務必以原檔名儲存程式;

(4)按alt+tab鍵,切換考試程式與turbo c;按alt+enter鍵,切換turbo c視窗大小。

1.程式的功能是:從字串陣列str1中取出ascii碼值為偶數且下標為偶數的字元依次存放到字串t中。

例如,若str1所指的字串為:4az18c?ge9a0z!則t所指的字串為:4z8z

注意:陣列下標從0開始。

#include <>

#include <>

#include <>

#include <>

void main()

2.程式中,函式fun(int n)的功能是:根據引數n,計算機大於10的最小n個能被3整除的正整數的倒數之和。例如:

#include<>

#include<>

#include<>

#include<>

#define m 50

double fun(int n)

if(j==n) break;

}return y;

}void main()

三、填空題

填空題:共3小題,每題8分,說明如下:

(1)編寫程式,補充在每對「/**/」之間的空白處,以完成題目的要求;

(2)不得刪改程式中所有的「/**/」注釋和其它**;

(3)源程式均在考生檔案中;務必以原檔名儲存程式;

(4)按alt+tab鍵,切換考試程式與turbo c;按alt+enter鍵,切換turbo c視窗大小。

1.補充程式該程式的功能是計算階乘。

main()

p; int i;

p=1;

i=1;i<=8;i++)

p=p*i;

printf(「\np=%ld」,p);

getch();

}2.補充程式該程式的功能是對輸入的兩個整數,按實數相除,輸出它們的商和商的第二位小數。

#include<>

void main()

3.補充程式程式實現從10個數中找出最大值和最小值。

#include<>

#include<>

int max,min;

void find_max_min(int *p,int n)

{int *q;

max=min=*p;

福建省二級c語言考試試題程式設計題

開啟程式cprog502.完成其中的fun int a,int c 函式,將陣列a同元素依次存入陣列c中 列入陣列a為,則陣列c為 5,1,2,6,7,1 fun int a,int c c k 1 已有定義,file fp,要開啟c盤teap檔案下的檔案,開啟方式是既能讀又能寫正確的是c選項fp ...

福建省計算機二級考試C語言上機題庫改錯填空程式設計

二 改錯題 修改程式,用以計算1 100之間所有的偶數之和。include include void main printf sum is d n sum getch 修改程式,將二維陣列表示的方陣左下半三角 不含對角線 各元素加4,右上半三角 含對角線 各元素乘2。include define n...

2019二級福建省建造師施工管理考試答題技巧

答案 d 8 當時間非常緊迫時,宜採用下列哪種合同形式 p204 a.總價合同 b.成本加酬金合同 c.變動單價合同 d.單價合同 答案 b 9 一般情況下,在簽訂成本加酬金合同時,工程的 難以確定。p204 a.技術方案 b.實際成本 c.質量要求 d.進度 答案 b 10 對各專業分包工程,總承...