一、選擇題
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 對各專業分包工程,總承...