设为首页 加入收藏

TOP

实验七 二维数组
2014-11-23 17:37:14 来源: 作者: 【 】 浏览:5
Tags:实验 二维数

实验七 二维数组


【目的与要求】


1.掌握二维数组的定义、赋值和输入输出的方法;


2.掌握字符数组的使用;


3.掌握与数组有关的算法(例如排序算法)。


【上机内容】


【一般示例】


【例1】有一个3×4的矩阵,要求输出其中值最大的元素的值,以及它的行号和列号。


#define M 3


#define N 4


main( )


{int max,i,j,r,c;


static int a[M][N]={{123,94,-10,218},{3,9,10,-83},{45,16,44,-99}};


max=a[0][0];


for(i=0;i

for(j=0;j

if ( a[i][j]>max)


{max= a[i][j];


r=i;


c=j;


}


printf(“max=%d , row =%d , colum=%d \n”,max , r, c);


}


【例2】打印以下图案:


* * * * *


* * * * *


* * * * *


* * * * *


* * * * *


main()


{char a[5]={' * ' , ' * ' , ' * ' , ' * ' , ' * '};


int i,j,k;


char space=' ';


for(i=0;i<5;i++) /*输出5行*/


{printf("\n"); /* 输出每行前先换行* /


printf(" "); /* 每行前面留5个空格 */


for (j=1;j<=i;j++)


printf("%c",space); /* 每行再留1个空格*/


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


printf("%c",a[k]); /*每行输入5个*号*/


}


}


【例3】求矩阵下三角形元素之和。


#define N 6


main()


{int i,j,sum=0;


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


printf("input 5×5 data:\n");


for(i=1;i

{ printf("Input the %d line data:\n",i);


for(j=1;j

scanf("%d",&a[i][j]);


}


for(i=1;i

{for(j=1;j

printf("%5d",a[i][j]);


printf("\n");


}


for(i=1;i

for(j=1;j<=i;j++)


sum=sum+a[i][j];


printf("sum=%d\n",sum);


}


【作业】


1. 求一个3×3矩阵对角线元素之和。


2. 打印出以下的杨辉三角形(要求打印出10行)。


1


1 1


1 2 1


1 3 3 1


1 4 6 4 1


1 5 10 10 5 1


…… …… ……


3. 有一篇文章,共有3行文字,每行有80个字符。要求分别统计出其中英文大写字母、小写字母、数字、空格以及其他字符的个数。



】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇实验八 函数 下一篇实验六 一维数组

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: