計算機二級C語言考試就要到了,下面yjbys小編爲大家分享的是最新的計算機二級C語言考試題及答案,希望對大家有所幫助!
1.程序填空題:
請補充main函數,該函數的功能是:計算每個學生成績的平均分,並把結果保存在數組bb中。
例如,當score[N][M]={{83.5,82,86,65,67},{80,?91.5?,84,99,95},{90.5,95,86,95,97}}時,三個學生的平均分爲76.7,89.9,92.7。
注意:部分源程序給出如下。
請勿改動main函數和其他函數中的任何內容,僅在main函數的橫線上填入所編寫的若干表達式或語句。
試題程序:
#include
#define N 3
#define M 5
void main()
{
int I,j;
static float score[N][M]={{83.5,82,86,65,67},{80,91.5,84,99,95},{90.5,95,86,95,97}};
float bb[N];
system("CLS");
for(I=0;I
【1】;
for(I=0;I
{
for(j=0;j
【2】;
bb[I]/=M;
}
for(I=0;I
printf("nstudent%dtaverage=%5.1f",I+1,bb[I]);
}
2.程序改錯題:
下列給定程序中,函數fun的功能是:判斷一個整數m是否是素數,若是返回1,否則返回0。在main函數中,若fun()返回1則輸出"YES",若fun()返回0則輸出"NO!"。
請改正程序中的'錯誤,使它能得出正確的結果。
注意:不要改動main函數,不得增行或刪行,也不得更改程序的結構。
試題程序:
#include
#include
#include
int fun(int m)
{ int k=2;
while (k<=m&&(m%k))
k++
if(m=k)
return 1;
else return 0;
}
void main()
{ int n;
system("CLS");
printf("nPlease enter n: ");
scanf("%d",&n);
if(fun(n)) printf("YESn");
else printf("NO!n");
}
3.程序設計題:
編寫函數fun,它的功能是:根據以下公式求p的值,結果由函數值帶回。m與n爲兩個正數且要求m>n。P=m!/(n!(m-n)!),例如,m=12,n=8時,運行結果爲495.000000。
注意:部分源程序給出如下。
請勿改動main函數和其他函數中的任何內容,僅在函數fun的花括號中填入所編寫的若干語句。
試題程序:
#include
#include
#include
float fun (int m, int n)
{
}
void main ()
{
FILE *wf;
system("CLS");
printf ("p=%fn",fun (12,8) ) ;
wf=fopen("","w");
fprintf (wf,"%f",fun(12,8));
fclose(wf);
}
【參考答案】:1.程序填空題:(1) bb[i]=0 (2) bb[i]+=score[i][j]
2.程序改錯題:(1)錯誤:k++ 正確:k++;
(2)錯誤:if(m=k) 正確:if(m==k)
3.程序設計題:float fun (int m, int n)
{
int i;
double p=1.0;
for(i=1;i<=m;i++)
p=p*i;
for(i=1;i<=n;i++)
p=p/i;
for(i=1;i<=m-n;i++)
p=p/i;
return p;
}