资源描述:
《c语言 实验五、数组程序设计解答》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、C语言实验五、数组程序设计解答实验五数组应用,二,一、实验目的1(掌握二维数组的定义和初始化。2(掌握二维数组元素的引用及其应用。3(掌握字符数组的定义和初始化。4(掌握字符数组元素的引用及其应用。二、实验内容1([目的]掌握二维数组的输出方法。[题目内容]已知有二维数组a的定义:inta[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}};编程序~以三行四列的形式输出a数组。[输入]无[输出]123456789101112[提示]利用二重for循环结构与printf()。#includevoidmain(){inta[3][4]={{1,2,3
2、,4},{5,6,7,8},{9,10,11,12}};inti,j;printf("二维数组:");for(i=0;i<3;i++){for(j=0;j<4;j++)printf("%6d",a[i][j]);printf("");}}2([目的]掌握二维数组的输入、输出方法。[题目内容]已知有一个3行2列的二维数组:897667985478编程序~从键盘输入数据存储在二维数组中~并以3行2列的形式输出。[输入]89~76~67~98~54~78[输出]897667985478[提示]利用二重for循环结构与scanf()、printf()及%4d格式输出。#include3、o.h>voidmain(){inta[3][2];inti,j;printf("请输入3行2列二维数组:");for(i=0;i<3;i++)for(j=0;j<2;j++)scanf("%d",&a[i][j]);for(i=0;i<3;i++){for(j=0;j<2;j++)printf("%4d",a[i][j]);printf("");}}3([目的]掌握二维数组的输入、输出、处理方法。[题目内容]编程序~生成一个5行5列的二维矩阵~并输出。1000001000001000001000001[输入]无[输出]1000001000001000001000001[提示]利用fo
4、r循环结构~生成原则:行下标与列下标相同的数组元素为1~其余为0。%4d格式输出。#includevoidmain(){inta[5][5];inti,j;for(i=0;i<5;i++)for(j=0;j<5;j++)if(i==j)a[i][j]=1;elsea[i][j]=0;for(i=0;i<5;i++){for(j=0;j<5;j++)printf("%4d",a[i][j]);printf("");}}4([目的]运用所学知识解决矩阵转置问题。×2矩阵~编程序~将a矩阵转置~生成矩阵b,2×3,~[题目内容]设a矩阵是3并输出。[输入]a矩阵[输出]b矩阵[
5、提示]利用不同矩阵行列下标的关系。,b=a,iiji#includevoidmain(){inta[3][2],b[2][3];inti,j;printf("请输入a数组:");for(i=0;i<3;i++)for(j=0;j<2;j++)scanf("%d",&a[i][j]);for(i=0;i<3;i++)for(j=0;j<2;j++)b[j][i]=a[i][j];printf("a数组:");for(i=0;i<3;i++){for(j=0;j<2;j++)printf("%4d",a[i][j]);printf("");}printf("b数组:
6、n");for(i=0;i<2;i++){for(j=0;j<3;j++)printf("%4d",b[i][j]);printf("");}}5([目的]运用所学知识解决矩阵相乘问题。[题目内容]设a矩阵是3×2矩阵~b矩阵是2×3矩阵~满足矩阵相乘条件~编程序~将a矩阵×b矩阵生成c矩阵,3×3,~并输出。[输入]a矩阵、b矩阵[输出]c矩阵2c,a,b,ijikkj[提示]计算公式:,1k#includevoidmain(){inta[3][2],b[2][3],c[3][3]={0};inti,j,k;printf("请输入a数组:");for(i=0;i<3
7、;i++)for(j=0;j<2;j++)scanf("%d",&a[i][j]);printf("请输入b数组:");for(i=0;i<2;i++)for(j=0;j<3;j++)scanf("%d",&b[i][j]);for(i=0;i<3;i++)for(j=0;j<3;j++)for(k=0;k<2;k++)c[i][j]=c[i][j]+a[i][k]*b[k][j];");