大连理工大学C语言题库11(2)

2019-06-17 19:15

【参考代码】

long int s=0,t=0; int i;

for(i=1;i<=n;i++) { t=t+d; s=s+t; d=d*10; }

return s;

===============

五、程序改错

1./*------------------------------------------------------ 【程序改错】

--------------------------------------------------------

功能:删除 w 数组中下标为k的元素中的值。程序中,调用了 getindex、arrout和arrdel三个函数,getindex用以输入 所删元素的下标,函数中对输入的下标进行检查,若越界, 则要求重新输入,直到正确为止。arrout用以输出数组中 的数据,arrdel进行所要求的删除操作。

------------------------------------------------------*/

#include \#include \#define NUM 10

/**********ERROR**********/ void arrout ( int w, int m ) {

int k;

/**********ERROR**********/ for (k = 1; k < m; k++)

/**********ERROR**********/ printf (\ printf (\}

int arrdel ( int *w, int n, int k ) {

int i;

for ( i = k; i < n-1; i++ ) w[i] = w[i+1]; n--;

return n; }

int getindex( int n ) { int i; do

{ printf(\scanf (\

} while( i < 0 || i > n-1 ); return i; }

main( )

{ int n, d, a[NUM]={21,22,23,24,25,26,27,28,29,30}; n = NUM;

printf (\d = getindex( n ); n = arrdel ( a, n, d );

printf (\}

【改错1】 【参考答案】

void arrout ( int *w, int m ) void arrout ( int w[], int m )

============================================================

【改错2】 【参考答案】

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

============================================================

【改错3】 【参考答案】

printf (\

============================================================

2 /*------------------------------------------------------

【程序改错】

--------------------------------------------------------

功能:编写函数fun生成一个对角线元素为5,上三角元素为0, 下三角元素为1的3*3的二维数组。

------------------------------------------------------*/

#include \void fun(int arr[][3]) {

/**********ERROR**********/ int i,j

/**********ERROR**********/ for(i=1;i<3;i++) for(j=0;j<3;j++)

/**********ERROR**********/ if(i=j)

arr[i][j]=5; else if(j>i) arr[i][j]=0; else

arr[i][j]=1; }

main() {

int a[3][3],i,j; fun(a);

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

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

printf(\ printf(\ } }

【改错1】 【参考答案】 int i,j;

============================================================

【改错2】 【参考答案】

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

============================================================

【改错3】 【参考答案】 if(i==j)

============================================================

六、程序填空

1./*------------------------------------------------------- 【程序填空】

---------------------------------------------------------

功能:函数fun的功能是:有N×N矩阵,以主对角线为对称线, 对称元素相加并将结果存放在左下三角元素中,右上三角 元素置为0。请用下标法访问数组元素。 例如:若N=3,有下列矩阵: 1 2 3 4 5 6 7 8 9

计算结果为 1 0 0 6 5 0 10 14 9

注意:请在下划线处填入正确的内容并把下划线删除。 不得增行或删行,也不得更改程序的结构! -------------------------------------------------------*/ #include #define N 3

void fun(int (*t)[N]) {

int i,j;

for(i=1;i

/***********FILL***********/ for(j=0;_______;j++) {

/***********FILL***********/ _________=t[i][j]+t[j][i];

/***********FILL***********/ _________=0; }

} }

main() {

int t[][N]={1,2,3,4,5,6,7,8,9},i,j; printf(\ for(i=0;i

for(j=0;j

fun(t);

printf(\ for(i=0;i

for(j=0;j

【空1】

【参考答案】 jj

============================================================

【空2】

【参考答案】 t[i][j]=t[i][j]+t[j][i];

============================================================

【空3】

【参考答案】 t[j][i]

============================================================

2./*------------------------------------------------------- 【程序填空】

--------------------------------------------------------- 功能:根据整型参数m,计算如下公式的值


大连理工大学C语言题库11(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: