全国计算机二级考试C语言模拟试题(一).pdf
文本预览下载声明
1套 每一套题目都是按照“填空题--改错题编程题”顺序排列,填空题上面带有两
个划线的是人工做题时候多余划线,不要理睬!!
#include stdlib.h
#include stdio.h
#define N 10
double fun(double *x)
{ int i, j; double av, y[N];
av 0;
/**********found**********/
for(i 0; iN; i++) av + x[i]/N
for(i j 0; iN; i++)
if(x[i]av ){
/**********found**********/
y[j] x[i]; x[i] -1;__j++__;}
i 0;
while(iN)
{ if(x[i]! -1 ) y[j++] x[i];
/**********found**********/
__i++__;
}
for(i 0; iN; i++)x[i] y[i];
return av;
}
main()
{ int i; double x[N];
for(i 0; iN; i++){x[i] rand()%50;printf(%4.0f ,x[i]);}
printf(\n);
printf(\nThe average is:%f\n,fun(x));
printf(\nThe result :\n,fun(x));
for(i 0; iN; i++) printf(%5.0f ,x[i]);
printf(\n);
}
改错题
1
#include stdio.h
void fun ( char *s, int num[5] )
{ int k, i 5;
for (k 0;ki;k++ )
/**********found**********/
num[k] 0;
for (; *s; s++)
{ i -1;
/**********found**********/
switch (* s )
{ case a: case A: {i 0; break;}
case e: case E: {i 1; break;}
case i: case I: {i 2; break;}
case o: case O: {i 3; break;}
case u: case U: {i 4; break;}
}
if (i 0)
num[i]++;
}
}
main()
{ char s1[81]; int num1[5], i;
printf( \nPlease enter a string: ); gets( s1 );
fun ( s1, num1 );
for ( i 0; i 5; i++ ) printf (%d ,num1[i]);printf (\n);
}
编程题
#include stdio.h
2
#define M 4
#define N 5
int fun ( int a[M][N] )
{
int tot 0,i,j;
for(i 0;iN;i++)
{
tot+ a[0][i];
tot+ a[M-1][i];
}
for(i 1;iM-1;i++)
{
tot+ a[i][0];
tot+ a[i][N-1];
}
return tot;
}
main()
{ int aa[M][N] {{1,3,5,7,9},
{2,9,9,9,4},
{6,9,9,9,8},
{1,3,5,7,0}};
int i, j, y;void NONO ();
printf ( The original data is : \n );
for ( i 0; iM; i++ )
显示全部