第一范文网 - 专业文章范例文档资料分享平台

全国计算机二级C语言上机练习题及答案(三)

来源:用户分享 时间:2025/7/10 13:43:57 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

(2) 改错题

给定程序modi.c中函数fun的功能是:求两个形参的乘积和商数,并通过形参返回调用程序。 例如输入:61.82 和 12.65,输出为: c = 782.023000 d = 4.886957。 请改正 fun 函数中的错误,使它能得出正确的结果。

注意:不要改动 main 函数,不得增行或删行,也不得更改程序的结构!

#include #include #include

/**********found**********/

void fun(double a,b,double x,y)

{

/**********found**********/

x=a*b; y=a/b;

}

main ( )

{ double a, b, c, d; system(\

printf ( \ a , b : \ scanf ( \ fun ( a , b, &c, &d ) ;

printf (\ d = %f\\n \ }

第1 处:void fun(double a,b,double x,y) 改为void fun ( double a, double b, double *x, double *y )

第2 处:x=a*b; y=a/b; 改为 *x=a*b;*y=a/b;

(3) 程序设计

请编制函数void Mtrx(int n),输出一个如下的n阶方阵。变量n从文件c9670503.in中读取。 例如,若读入4,则输出 1 2 3 4 8 7 6 5 9 10 11 12 16 15 14 13

注意:此程序存贮在prog.c中。

请勿改动主程序main中的任何内容,仅在函数Mtrx的横线处填入适当的内容并删除横线。

#include #include #include #define M 4

/* 本程序中的fopen、fprintf和fclose与考生无关 */ void Mtrx( int n ) {

int a[M]={0},d=0, i, j, k;

FILE *fp ;

fp=fopen(\ for( i = 1 ; i <= n; i++ ) { for( j=0; j

for( k=0; k < n ; k++ )

{ printf( \ else

for( k=n-1;k>=0;k-- ) { printf( \ a[k] ); fprintf(fp, \ printf(\ fprintf(fp, \ }

fclose(fp) ; }

main() {

int n;

FILE *fp ; system(\

fp=fopen(\ fscanf(fp, \ fclose(fp); Mtrx( n ); }

第九套

(1) 填空题

给定程序的功能是根据形参m(2≤m≤9),在二维数组中存放一张m行m列的表格,由main()函数输出。 例如,若输入2 | 若输入4 则输出: | 则输出:

1 2 | 1 2 3 4 2 4 | 2 4 6 8 | 3 6 9 12 | 4 8 12 16

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意:源程序存放在考生文件夹下的BLANK1.C中。 不得增行或删行,也不得更改程序的结构!

#include #define M 10

int a[M][M] = {0} ;

fun(int a[][M], int m) { int j, k ;

for (j = 0 ; j < m ; j++ )

for (k = 0 ; k < m ; k++ )

/**************found**************/ ___1___ = (k+1)*(j+1); }

main ( )

{ int i, j, n ;

printf ( \ scanf (\/**************found**************/ fun ( ___2___ ) ;

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

{ for (j = 0 ; j < n ; j++)

/**************found**************/ printf ( \ printf ( \ } }

第1 处:a[j][k] = (k+1)*(j+1); 第2 处:fun ( a, n );

第3 处:printf ( \

(2) 改错题

给定程序modi.c中函数fun的功能是:计算并输出high以内最大的10个素数之和。high由主函数传给fun函数。

若high的值为100,则函数的值为732。

请改正函数fun中的错误,使程序能输出正确的结果。

注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!

#include #include #include #include int fun( int high )

{ int sum = 0, n=0, j, yes;

/************found************/ while ((high >= 2) && (n < 10) { yes = 1;

for (j=2; j<=high/2; j++ )

/************found************/ if (high % j ==0 ){yes=0; break } if (yes) { sum +=high; n++; } high--; }

return sum ;

}

main ( )

{ system(\

printf(\}

第1 处:while ((high >= 2) && (n < 10) 改为 while((high>=2)&&(n<10))

第2 处:if (high % j ==0 ){yes=0; break } 改为 if(high % j==0){yes=0;break;} (3) 程序设计

请编写一个函数fun,它的功能是:计算n门课程的平均分,计算结果作为函数值返回。 例如:若有5门课程的成绩是:90.5, 72, 80, 61.5, 55则函数的值为:71.80。 注意: 部分源程序存在文件prog.c中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。

#include

float fun ( float *a , int n ) { float ave=0; int i; for(i=0;i

main()

{ float score[30]={90.5, 72, 80, 61.5, 55}, aver; aver = fun( score, 5 );

printf( \ is: %5.2f\\n\}

全国计算机二级C语言上机练习题及答案(三).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c0khxe1fi7e5zpak1bu50_2.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top