任务20:二维数组的定义和使用 《编程语言-C语言》45分钟专题训练

| 2份
| 23页
| 100人阅读
| 2人下载

内容正文:

湖南省职教高考《编程语言—C语言》45分钟专题训练专辑,共43份试卷。试卷命题与高考紧密相关,精选具有代表性和典型性的高考常考题。旨在帮助学生系统地复习和巩固计算机类理论知识,熟悉高考题型和命题规律,提高解题能力和应试技巧,为高考取得优异成绩打下坚实的基础,本训练卷适用于即将参加计算机类高考的学生。与本专辑配套的还有湖南省职教高考《计算机应用基础》《计算机组装与维护》《计算机网络技术》45分钟专题训练专辑,欢迎同学和老师们下载使用。 《编程语言—C语言》 项目四: 数组 第20卷: 二维数组的定义和使用 时间:45分钟 总分:100分 班级___________ 姓名__________ 学号__________ 成绩________ 一、选择题(共23小题,每小题2分,共46分) 1.下列数组定义中,正确的是( ) A.int a[][2]={1,2,3,4} B.int a[][]={1,2,3,4} C.int a[2][]={1,2,3,4} D.int a[2,2]={1,2,3,4} 【答案】A。二维数组中,第一维长度可省,第二维不可省。 2.若有定义:int a[3][4];,则对a数组元素的正确引用是( ) A.a[3][4] B.a[1,3] C.a[1+1][0] D.a(2)(1) 【答案】C 3.以下能对二维数组a进行正确初始化的语句是( ) A.int a[2][ ]={{1,0,1},{5,2,3}}; B.int a[ ][3]={{1,0,1},{5,2,3}}; C.int a[2][4]={1,0,1},{5,4},{5}}; D.int a[ ][3]={{1,0,1,0},{ },{2,3}}; 【答案】B 4.若有初始化语句:int a[3][4]={0};,则下列叙述中,正确的一项是( ) A.只有元素a[0][0]可以得到初值0 B.此初始化语句不正确 C.数组a中各元素都可以得到初值,但其值不一定为0 D.数组a中每个元素均可得到初值0 【答案】D 5.若二维数组a有m列,则计算任一元素a[i][j]在数组中位置的公式为( )(假设a[0][0]位于数组的第一个位置上) A.i*m+j B.j*m+i C.i*m+j-1 D.i*m+j+1 【答案】D 6.若有说明语句:int a[ ][3]={1,2,3,4,5,6,7};,则a数组第一维的大小是( ) A.2 B.3 C.4 D.无确定值 【答案】B 7.设有一个M*N的矩阵已经存放在一个M行N列的数组x中,且有以下程序段,则该程序段的作用是计算( ) sum=0; for(i=0;i<M;i++) sum+=x[i][0]+x[i][N-1]; for(j=1;j<N-1;j++) sum+=x[0][j]+x[M-1][j]; A.矩阵两条对角线元素之和 B.矩阵所有不靠边元素之和 C.矩阵所有元素之和 D.矩阵所有靠边元素之和 【答案】D 8.设有定义:int x[2][3]; 则以下关于二维数组x的叙述中错误的是( ) A.x[0]可以看作是由3个整型元素组成的一维数组 B.x[0]和x[1]是数组名,分别代表不同的地址常量 C.数组x包含6个元素 D.可以用语句:x[0]=0;为数组所有元素赋初值0 【答案】D 9.若有定义语句:int m[ ][3]={1,2,3,4,5,6,7}; 则与该语句等价的是( ) A.int m[ ][3]={{1,2,3},{4,5,6},{7}}; B.int m[ ][3]={{1,2},{3,4},{5,6,7}}; C.int m[ ][3]={{1,2,3},{4,5},{6,7}}; D.int m[ ][3]={{1},{2,3,4},{5,6,7}}; 【答案】A 10.若有定义:int a[2][3];,则以下选项中对a数组元素正确引用的是( ) A.a[2][!1] B.a[2][3] C.a[0][3] D.a[1>2][!1] 【答案】D 11.执行以下程序段的输出结果是( ) int i,t[ ][3]={9,8,7,6,5,4,3,2,1}; for(i=0;i<3;i++) printf("%d,",t[2-i][i]); A.7,5,3, B.3,6,9 C.7,5,1, D.3,5,7, 【答案】D 12.执行以下程序段时输入:2 4 6<回车>,则输出结果是( ) int x[3][2]={0},i; for(i=0;i<3;i++) scanf("%d",x[i]); printf("%3d%3d%3d ",x[0][0],x[0][1],x[1][0]); A.2 0 4 B.2 0 0 C.2 4 0 D.2 4 6 【答案】A 13.执行以下程序段的输出结果是( ) int k,a[3][3]={1,2,3,4,5,6,7,8,9}; for(k=0;k<3;k++) printf("%d",a[k][2-k]); A.357 B.369 C.159 D.147 【答案】A 14.执行以下程序段的输出结果是( ) int a[3][3]={{3,5},{8,9},{12,35}},i,sum=0; for(i=0;i<3;i++) sum+=a[i][2-i]; printf("%d",sum); A.21 B.17 C.8 D.47 【答案】A 15.执行以下程序段的输出结果是( ) int a[3][3]={{1,2,9},{3,4,8},{5,6,7}},i,s=0; for(i=0;i<3;i++) s+=a[i][i]+a[i][3-i-1]; printf("%d ",s); A.28 B.29 C.30 D.32 【答案】C 16.以下程序段的功能是( ) int num[4][4]={{1,2,3,4},{5,6,7,8}, {9,10,11,12},{13,14,15,16}},i,j; for(i=0;i<4;i++) { for(j=1;j<=i;j++) printf("%4c",' '); for(j=j-1;j<4;j++) printf("%4d",num[i][j]); printf(" ");} A.输出数组num右上半角 B.输出数组num左上半角 C.输出数组num右下半角 D.输出数组num左下半角 【答案】A 17.执行以下程序段的输出结果是( ) int n[4][4],i,j; for(i=0;i<4;i++) for(j=0;j<4;j++) n[i][j]=i+j; for(i=0;i<3;i++) for(j=0;j<3;j++) n[i+1][j+1]+=n[i][j];printf("%d ",n[i][j]); A.10 B.12 C.16 D.18 【答案】B 18.执行以下程序段的输出结果是( ) char w[][10]={"ABCD","EFGH","IJLK","MNOP"},k; for(k=1;k<3;k++) printf("%s-",w[k]); A.ABCD-EFGH-IJLK- B.EFGH-IJLK C.EGGHIJLK D.EFGH-IJLK- 【答案】D 19.执行以下程序段的输出结果是( ) int m[][3]={1,4,7,2,5,8,3,6,9};int i,j,k=0; for(i=0;i<4;i++){ printf("%d ",m[k][i]); } A.5 8 3 6 B.1472 C.4 7 2 5 D.1 4 7 2 【答案】D 20.执行以下程序段的输出结果是( ) int i,t[][4]={9,8,7,6,5,4,3,2,1},sum=0; for(i=0;i<2;i++)sum+=t[2-i][i];printf("%d",sum); A.5 B.8 C.15 D.7 【答案】A 21.执行以下程序段后的输出结果是( ) int a[ ][4]={1,2,3,4,5,6,7,8,9},i,j,s=0; for (i=1;i<2;i++) for(j=0;j<=i;j++) s+=a[i][j];printf("%d ",s%2); A.0 B.-1 C.1 D.有有语法错误 【答案】C 22.执行以下程序段的输出结果是( ) int i,j,a[5][5]; for(i=1;i<5;i++) {a[i][i]=1; a[i][1]=1; } for(i=3;i<5;i++) for(j=2;j<=i-1;j++) a[i][j]=a[i-1][j-1]+a[i-1][j]; for(j=1;j<=4;j++) printf("%d",a[4][j]); A.1331 B.1441 C.1551 D.1313 【答案】A 23.执行以下程序段的输出结果是( ) int i,j,a[]={0,2,8,4,5}; for(i=1;i<=5;i++){j=5-i;printf("%2d",a[j]);} A.54820 B.5 4 8 2 0 C.5482 D.5 4 8 2 【答案】B 二、程序运行结果题(本题共7小题,每题3分,共21分) 24.以下程序的运行结果是( ) #include <stdio.h> #include<conio.h> main() {char a[5][10]={"one","two","three","four","five"}; int i,j;char t; for(i=0;i<4;i++) for(j=i+1;j<5;j++) {t=a[i][0]; a[i][0]=a[j][0]; a[j][0]=t;} puts(a[1]); getch();} 【答案】fwo 25.以下程序的运行结果是( ) #include <stdio.h> #include<conio.h> main() {int i,k; int array[4][2]={{1,2},{4,9},{6}}; for(i=0;i<2;i++) for(k=0;k<4;k++) printf("%d,",array[k][i]); printf(" "); getch();} 【答案】1,4,6,0,2,9,0,0, 26.以下程序的运行结果是( ) #include <stdio.h> #include<conio.h> main() { int b[3][3]={0,1,2,0,1,2,0,1,2},i,j,t=1; for(i=0;i<3;i++) for(j=i;j<=i;j++) t+=b[i][b[j][i]]; printf("%d ",t); getch();} 【答案】4 27.以下程序的运行结果是( ) #include <stdio.h> #include<conio.h> main() {int a[4][4]={{1,4,3,2},{8,6,5,7},{3,7,2,5},{4,8,6,1}}; int i,j,k,t; for(i=0;i<4;i++) for(j=0;j<3;j++) for(k=j+1;k<4;k++) if(a[j][i]>a[k][i]) {t=a[j][i];a[j][i]=a[k][i];a[k][i]=t;} for(i=0;i<4;i++) printf("%d",a[i][i]); getch();} 【答案】1657 28.以下程序的运行结果是( ) #include <stdio.h> #include<conio.h> main() {int a[4][4]={{1,4,3,2},{8,6,5,7},{3,7,2,5},{4,8,6,1}}; int i,k,t; for(i=0;i<3;i++) for(k=i+1;k<4;k++) if(a[i][i]<a[k][k]) {t=a[i][i];a[i][i]=a[k][k];a[k][k]=t;} for(i=0;i<4;i++) printf("%d",a[0][i]); getch();} 【答案】6432 29.以下程序的运行结果是( ) #include <stdio.h> #include<conio.h> main() {char a[4][4]={' '}; int i,j; for(i=0;i<4;i++) {a[i][0]=a[i][3]='#'; for(j=1;j<3;j++) {a[0][j]=a[3][j]='#'; if((i!=0)&&(i!=3)) a[i][j]='o';}} for(i=1;i<3;i++) {for(j=0;j<4;j++) printf("%2c",a[i][j]); printf(" ");}getch();} 【答案】 # o o # # o o # 30.以下程序的运行结果是( ) #include <stdio.h> #include<conio.h> main() {int i,j,row,col,min; int a[3][4]={{1,2,3,4},{9,8,7,6},{-1,-2,0,5}}; min=a[0][0]; for(i=0;i<3;i++) for(j=0;j<4;j++) if(a[i][j]<min) {min=a[i][j];row=i;col=j;} printf("min=%d, row=%d, col=%d ",min,row,col); getch();} 【答案】min=-2, row=2, col=1 三、阅读程序,修改程序中的错误,不得增行或删行,也不得更改程序结构。请指出错误代码所在的行号,并给出该行修改后的程序代码。每处3分,共9分) 31.下列程序的功能是将二维数组a中的每个元素向右移一列,最后一列换到最左一列,移动后的结果保存到b数组中,并按照矩阵形式输出a和b。程序中有三处错误,请改正。 L1 #include <stdio.h> L2 #include<conio.h> L3 main() L4 {int a[2][3]={{4,5,6},{1,2,3}},b[2][3],i,j; L5 for(i=0;i<2;i++) L6 {for(j=0;j<3;j++) L7 {printf("%5d",a[i][j]); L8 b[i][j++]=a[i][j];} L9 printf(" ");} L10 printf(" "); L11 for(i=0;i<2;i++) L12 b[i][2]=a[i][0]; L13 for(i=0;i<2;i++) L14 {for(j=0;j<3;j++) L15 {printf("%5d",b[j][j]);} L16 printf(" ");} L17 getch();} 答案: L8 b[i][j+1]=a[i][j];} L12 b[i][0]=a[i][2]; L15 {printf("%5d",b[i][j]);} 四、程序填空。按照题目要求,将正确的内容填入相应位置,使得程序完整(每空3分,共24分) 32.以下程序的功能是将一个3行3列的矩阵进行转置。请填空。 原矩阵 装置后变为: #include <stdio.h> #include<conio.h> main() {int n[3][3]={1,2,3,4,5,6,7,8,9};int i,j,temp; printf("原始矩阵: "); for(i=0;i<3;i++) {for(j=0;j<3;j++) printf("%d ",n[i][j]);printf(" ");} for(i=0;i<3;i++) for(j=0;j<3;j++) {if(【1】) {temp=【2】; n[i][j]=【3】; n[j][i]=temp;}} printf("转置矩阵: "); for(i=0;i<3;i++) {for(j=0;j<3;j++) printf("%d ",【4】); printf(" ");} getch();} 答案:①j>i ②n[i][j] ③n[j][i] ④n[i][j] 33.以下程序的功能是产生并输出杨辉三角形的前七行。请填空。 #include <stdio.h> #include<conio.h> main() {int a[7][7]; int i,j,k; for(i=0;i<7;i++) {a[i][0]=1; 【1】;} for(i=2;i<7;i++) for(j=1;【2】;j++) a[i][j]=【3】; for(i=0;i<7;i++) {for(j=0;【4】;j++) printf("%4d",a[i][j]); printf(" ");} getch();} 答案:①a[i][i]=1 ②j<i ③a[i-1][j]+a[i-1][j-1] ④j<=i 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 $$ 湖南省职教高考《编程语言—C语言》45分钟专题训练专辑,共43份试卷。试卷命题与高考紧密相关,精选具有代表性和典型性的高考常考题。旨在帮助学生系统地复习和巩固计算机类理论知识,熟悉高考题型和命题规律,提高解题能力和应试技巧,为高考取得优异成绩打下坚实的基础,本训练卷适用于即将参加计算机类高考的学生。与本专辑配套的还有湖南省职教高考《计算机应用基础》《计算机组装与维护》《计算机网络技术》45分钟专题训练专辑,欢迎同学和老师们下载使用。 《编程语言—C语言》 项目四: 数组 第20卷: 二维数组的定义和使用 时间:45分钟 总分:100分 班级___________ 姓名__________ 学号__________ 成绩________ 一、选择题(共23小题,每小题2分,共46分) 1.下列数组定义中,正确的是( ) A.int a[][2]={1,2,3,4} B.int a[][]={1,2,3,4} C.int a[2][]={1,2,3,4} D.int a[2,2]={1,2,3,4} 2.若有定义:int a[3][4];,则对a数组元素的正确引用是( ) A.a[3][4] B.a[1,3] C.a[1+1][0] D.a(2)(1) 3.以下能对二维数组a进行正确初始化的语句是( ) A.int a[2][ ]={{1,0,1},{5,2,3}}; B.int a[ ][3]={{1,0,1},{5,2,3}}; C.int a[2][4]={1,0,1},{5,4},{5}}; D.int a[ ][3]={{1,0,1,0},{ },{2,3}}; 4.若有初始化语句:int a[3][4]={0};,则下列叙述中,正确的一项是( ) A.只有元素a[0][0]可以得到初值0 B.此初始化语句不正确 C.数组a中各元素都可以得到初值,但其值不一定为0 D.数组a中每个元素均可得到初值0 5.若二维数组a有m列,则计算任一元素a[i][j]在数组中位置的公式为( )(假设a[0][0]位于数组的第一个位置上) A.i*m+j B.j*m+i C.i*m+j-1 D.i*m+j+1 6.若有说明语句:int a[ ][3]={1,2,3,4,5,6,7};,则a数组第一维的大小是( ) A.2 B.3 C.4 D.无确定值 7.设有一个M*N的矩阵已经存放在一个M行N列的数组x中,且有以下程序段,则该程序段的作用是计算( ) sum=0; for(i=0;i<M;i++) sum+=x[i][0]+x[i][N-1]; for(j=1;j<N-1;j++) sum+=x[0][j]+x[M-1][j]; A.矩阵两条对角线元素之和 B.矩阵所有不靠边元素之和 C.矩阵所有元素之和 D.矩阵所有靠边元素之和 8.设有定义:int x[2][3]; 则以下关于二维数组x的叙述中错误的是( ) A.x[0]可以看作是由3个整型元素组成的一维数组 B.x[0]和x[1]是数组名,分别代表不同的地址常量 C.数组x包含6个元素 D.可以用语句:x[0]=0;为数组所有元素赋初值0 9.若有定义语句:int m[ ][3]={1,2,3,4,5,6,7}; 则与该语句等价的是( ) A.int m[ ][3]={{1,2,3},{4,5,6},{7}}; B.int m[ ][3]={{1,2},{3,4},{5,6,7}}; C.int m[ ][3]={{1,2,3},{4,5},{6,7}}; D.int m[ ][3]={{1},{2,3,4},{5,6,7}}; 10.若有定义:int a[2][3];,则以下选项中对a数组元素正确引用的是( ) A.a[2][!1] B.a[2][3] C.a[0][3] D.a[1>2][!1] 11.执行以下程序段的输出结果是( ) int i,t[ ][3]={9,8,7,6,5,4,3,2,1}; for(i=0;i<3;i++) printf("%d,",t[2-i][i]); A.7,5,3, B.3,6,9 C.7,5,1, D.3,5,7, 12.执行以下程序段时输入:2 4 6<回车>,则输出结果是( ) int x[3][2]={0},i; for(i=0;i<3;i++) scanf("%d",x[i]); printf("%3d%3d%3d ",x[0][0],x[0][1],x[1][0]); A.2 0 4 B.2 0 0 C.2 4 0 D.2 4 6 13.执行以下程序段的输出结果是( ) int k,a[3][3]={1,2,3,4,5,6,7,8,9}; for(k=0;k<3;k++) printf("%d",a[k][2-k]); A.357 B.369 C.159 D.147 14.执行以下程序段的输出结果是( ) int a[3][3]={{3,5},{8,9},{12,35}},i,sum=0; for(i=0;i<3;i++) sum+=a[i][2-i]; printf("%d",sum); A.21 B.17 C.8 D.47 15.执行以下程序段的输出结果是( ) int a[3][3]={{1,2,9},{3,4,8},{5,6,7}},i,s=0; for(i=0;i<3;i++) s+=a[i][i]+a[i][3-i-1]; printf("%d ",s); A.28 B.29 C.30 D.32 16.以下程序段的功能是( ) int num[4][4]={{1,2,3,4},{5,6,7,8}, {9,10,11,12},{13,14,15,16}},i,j; for(i=0;i<4;i++) { for(j=1;j<=i;j++) printf("%4c",' '); for(j=j-1;j<4;j++) printf("%4d",num[i][j]); printf(" ");} A.输出数组num右上半角 B.输出数组num左上半角 C.输出数组num右下半角 D.输出数组num左下半角 17.执行以下程序段的输出结果是( ) int n[4][4],i,j; for(i=0;i<4;i++) for(j=0;j<4;j++) n[i][j]=i+j; for(i=0;i<3;i++) for(j=0;j<3;j++) n[i+1][j+1]+=n[i][j];printf("%d ",n[i][j]); A.10 B.12 C.16 D.18 18.执行以下程序段的输出结果是( ) char w[][10]={"ABCD","EFGH","IJLK","MNOP"},k; for(k=1;k<3;k++) printf("%s-",w[k]); A.ABCD-EFGH-IJLK- B.EFGH-IJLK C.EGGHIJLK D.EFGH-IJLK- 19.执行以下程序段的输出结果是( ) int m[][3]={1,4,7,2,5,8,3,6,9};int i,j,k=0; for(i=0;i<4;i++){ printf("%d ",m[k][i]); } A.5 8 3 6 B.1472 C.4 7 2 5 D.1 4 7 2 20.执行以下程序段的输出结果是( ) int i,t[][4]={9,8,7,6,5,4,3,2,1},sum=0; for(i=0;i<2;i++)sum+=t[2-i][i];printf("%d",sum); A.5 B.8 C.15 D.7 21.执行以下程序段后的输出结果是( ) int a[ ][4]={1,2,3,4,5,6,7,8,9},i,j,s=0; for (i=1;i<2;i++) for(j=0;j<=i;j++) s+=a[i][j];printf("%d ",s%2); A.0 B.-1 C.1 D.有有语法错误 22.执行以下程序段的输出结果是( ) int i,j,a[5][5]; for(i=1;i<5;i++) {a[i][i]=1; a[i][1]=1; } for(i=3;i<5;i++) for(j=2;j<=i-1;j++) a[i][j]=a[i-1][j-1]+a[i-1][j]; for(j=1;j<=4;j++) printf("%d",a[4][j]); A.1331 B.1441 C.1551 D.1313 23.执行以下程序段的输出结果是( ) int i,j,a[]={0,2,8,4,5}; for(i=1;i<=5;i++){j=5-i;printf("%2d",a[j]);} A.54820 B.5 4 8 2 0 C.5482 D.5 4 8 2 二、程序运行结果题(本题共7小题,每题3分,共21分) 24.以下程序的运行结果是( ) #include <stdio.h> #include<conio.h> main() {char a[5][10]={"one","two","three","four","five"}; int i,j;char t; for(i=0;i<4;i++) for(j=i+1;j<5;j++) {t=a[i][0]; a[i][0]=a[j][0]; a[j][0]=t;} puts(a[1]); getch();} 25.以下程序的运行结果是( ) #include <stdio.h> #include<conio.h> main() {int i,k; int array[4][2]={{1,2},{4,9},{6}}; for(i=0;i<2;i++) for(k=0;k<4;k++) printf("%d,",array[k][i]); printf(" "); getch();} 26.以下程序的运行结果是( ) #include <stdio.h> #include<conio.h> main() { int b[3][3]={0,1,2,0,1,2,0,1,2},i,j,t=1; for(i=0;i<3;i++) for(j=i;j<=i;j++) t+=b[i][b[j][i]]; printf("%d ",t); getch();} 27.以下程序的运行结果是( ) #include <stdio.h> #include<conio.h> main() {int a[4][4]={{1,4,3,2},{8,6,5,7},{3,7,2,5},{4,8,6,1}}; int i,j,k,t; for(i=0;i<4;i++) for(j=0;j<3;j++) for(k=j+1;k<4;k++) if(a[j][i]>a[k][i]) {t=a[j][i];a[j][i]=a[k][i];a[k][i]=t;} for(i=0;i<4;i++) printf("%d",a[i][i]); getch();} 28.以下程序的运行结果是( ) #include <stdio.h> #include<conio.h> main() {int a[4][4]={{1,4,3,2},{8,6,5,7},{3,7,2,5},{4,8,6,1}}; int i,k,t; for(i=0;i<3;i++) for(k=i+1;k<4;k++) if(a[i][i]<a[k][k]) {t=a[i][i];a[i][i]=a[k][k];a[k][k]=t;} for(i=0;i<4;i++) printf("%d",a[0][i]); getch();} 29.以下程序的运行结果是( ) #include <stdio.h> #include<conio.h> main() {char a[4][4]={' '}; int i,j; for(i=0;i<4;i++) {a[i][0]=a[i][3]='#'; for(j=1;j<3;j++) {a[0][j]=a[3][j]='#'; if((i!=0)&&(i!=3)) a[i][j]='o';}} for(i=1;i<3;i++) {for(j=0;j<4;j++) printf("%2c",a[i][j]); printf(" ");}getch();} 30.以下程序的运行结果是( ) #include <stdio.h> #include<conio.h> main() {int i,j,row,col,min; int a[3][4]={{1,2,3,4},{9,8,7,6},{-1,-2,0,5}}; min=a[0][0]; for(i=0;i<3;i++) for(j=0;j<4;j++) if(a[i][j]<min) {min=a[i][j];row=i;col=j;} printf("min=%d, row=%d, col=%d ",min,row,col); getch();} 三、阅读程序,修改程序中的错误,不得增行或删行,也不得更改程序结构。请指出错误代码所在的行号,并给出该行修改后的程序代码。每处3分,共9分) 31.下列程序的功能是将二维数组a中的每个元素向右移一列,最后一列换到最左一列,移动后的结果保存到b数组中,并按照矩阵形式输出a和b。程序中有三处错误,请改正。 L1 #include <stdio.h> L2 #include<conio.h> L3 main() L4 {int a[2][3]={{4,5,6},{1,2,3}},b[2][3],i,j; L5 for(i=0;i<2;i++) L6 {for(j=0;j<3;j++) L7 {printf("%5d",a[i][j]); L8 b[i][j++]=a[i][j];} L9 printf(" ");} L10 printf(" "); L11 for(i=0;i<2;i++) L12 b[i][2]=a[i][0]; L13 for(i=0;i<2;i++) L14 {for(j=0;j<3;j++) L15 {printf("%5d",b[j][j]);} L16 printf(" ");} L17 getch();} 四、程序填空。按照题目要求,将正确的内容填入相应位置,使得程序完整(每空3分,共24分) 32.以下程序的功能是将一个3行3列的矩阵进行转置。请填空。 原矩阵 装置后变为: #include <stdio.h> #include<conio.h> main() {int n[3][3]={1,2,3,4,5,6,7,8,9};int i,j,temp; printf("原始矩阵: "); for(i=0;i<3;i++) {for(j=0;j<3;j++) printf("%d ",n[i][j]);printf(" ");} for(i=0;i<3;i++) for(j=0;j<3;j++) {if(【1】) {temp=【2】; n[i][j]=【3】; n[j][i]=temp;}} printf("转置矩阵: "); for(i=0;i<3;i++) {for(j=0;j<3;j++) printf("%d ",【4】); printf(" ");} getch();} 33.以下程序的功能是产生并输出杨辉三角形的前七行。请填空。 #include <stdio.h> #include<conio.h> main() {int a[7][7]; int i,j,k; for(i=0;i<7;i++) {a[i][0]=1; 【1】;} for(i=2;i<7;i++) for(j=1;【2】;j++) a[i][j]=【3】; for(i=0;i<7;i++) {for(j=0;【4】;j++) printf("%4d",a[i][j]); printf(" ");} getch();} 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 $$

资源预览图

任务20:二维数组的定义和使用  《编程语言-C语言》45分钟专题训练-第1页
1
任务20:二维数组的定义和使用  《编程语言-C语言》45分钟专题训练-第2页
2
任务20:二维数组的定义和使用  《编程语言-C语言》45分钟专题训练-第3页
3

由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。