上机实验八 二维数组与字符数组
学号: 姓名: 一.目的要求
1. 掌握二维数组的基本概念,如何定义二维数组,如何初始化二维数组。
2. 掌握二维数组的基本操作:引用数组元素、行(列)求和,行(列)最大最小值,整个数组的输入输出等。
3. 掌握与二维数组有关的算法,如找最大最小值(或位置)、矩阵转置等。
4. 掌握字符串与字符数组的基本应用方法
5. 掌握字符串有关的算法,如字符转换、查询、统计和进制转换等
二.实验内容
【实验题1】程序填空:输入一个4×4矩阵,求出主对角线上的元素之和sum1、副对角线上的元素之和sum2,并输出结果。
提示:每一行只有一个主对角线元素a[i][i](特征:i==j),也仅有一个副对角线元素a[i][n-i-1](特征:i+j==n-1,即j=n-1-i)
源程序:
运行程序,并输入数据: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
运行结果:sum1= 34 , sum2= 34
【实验题2】程序填空:打印杨辉三角形前10行:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
…… …… …… ……
算法提示:分析一个10行的杨辉三角,需要一个10×10的二维矩阵a,则:
1) 杨辉三角为下三角矩阵,只需要求出第i行(i=0,1,2,…,9)前i+1个元素,即a[i][j]!=0 (j=0,1,…i).
2) 每行的第0列元素均为1,即a[i][0]=1; (i=0,1,2,…,9)