- 1、本文档共12页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
(上机实验七答案请自行校对
上机实验七 二维数组
学号: 姓名:
一.目的要求
掌握二维数组的基本概念,如何定义二维数组,如何初始化二维数组。
掌握与数组有关的算法,如最大最小值(或位置)、转置数组等。
掌握gets(s)、put(s)等字符串函数的作用:把以回车结束的键盘输入的字符串赋值给字符数组s。
二.实验内容
求一个3×4矩阵的所有靠外侧的的元素之和。
/*
解题思路: 矩阵外侧元素总共有4部分组成:
第一行、最后一行、第一列和最后一列
*/
#define N 3
#define M 4
#include stdio.h
void main() {
int a[N][M];
int i, j, sum;
printf(请输入%d*%d二维数组的值:, N, M);
for (i=0; iN; i++)
for (j=0; jM; j++)
scanf(%d, a[i][j]);
//先计算第1行和最后一行 所有元素的和
sum = 0;
for (i=0; iM; i++)
sum += a[0][i]+a[N-1][i];
//计算第1列和最后1列 所有元素的和
for (i=0; iN; i++)
sum += a[i][0] + a[i][M-1];
//再减去4个角落的元素,因为它们重复计算了一次
sum -= a[0][0] + a[0][M-1] + a[N-1][0] + a[N-1][M-1];
printf(矩阵的外侧元素之和为%d\n, sum);
}
已知一个3×4矩阵a[3][4]={{1,2,3,4},{1,2,3,4},{1,2,3,4}},打印输出其转置矩阵。
#include stdio.h
void main() {
int a[3][4]={{1,2,3,4},{1,2,3,4},{1,2,3,4}}, b[4][3];
int i, j;
printf(矩阵a为:\n);
for (i=0; i3; i++) {
for (j=0; j4; j++)
{
b[j][i] = a[i][j];
printf(%5d, a[i][j]);
}
printf(\n);
}
printf(矩阵b为:\n);
for (j=0; j4; j++) {
for (i=0; i3; i++)
{
printf(%5d, b[j][i]);
}
printf(\n);
}
}
给定一个N*N的方阵,求出其上三角元素之和。
/*
解题思路:
上三角形是指主对角线右上角的所有元素
*/
#define N 10
#include stdio.h
void main() {
int a[N][N];
int i, j, sum;
printf(请输入%d*%d二维数组的值:\n, N, N);
for (i=0; iN; i++)
for (j=0; jN; j++)
scanf(%d, a[i][j]);
// 计算上三角形所有元素之和
sum = 0;
for (i=0; iN; i++) {
// 对于第i行,列是从i开始,直到N-1时结束
for (j=i; jN; j++)
sum += a[i][j];
}
printf(上三角形元素之和为:%d\n, sum);
}
打印杨辉三角形前10行(分别用二维数组和一维数组实现)。
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
…… …… …… ……
//杨辉三角形(二维数组)
#include stdio.h
main()
{
int a[10][10];
int i, j, k;
for (i=0; i10; i++){
a[i][0] = 1; // 第i行的第0个元素是1
a[i][i] = 1; // 第i行的第i个元素是1
// 其它列的元素是由前一行的当前列和前一列的和
for (j=1; ji; j++)
a[i][j] = a[i-1][j-1]+a[i-1][j];
}
printf(杨辉三角形为:\n);
for (i=0; i10; i++) {
for (j=0; j=i; j++)
printf(%d , a[i][j]);
printf(\n);
}
printf(\n);
}
//杨辉三角
您可能关注的文档
最近下载
- 部编版道德与法治三年级上8.安全记心上(教学设计)册.docx
- 2024年《信访工作条例》知识竞赛题库及答案.pdf VIP
- 2次供水单位试题.doc VIP
- 第8课 在实践中提高认识能力 课件-2023-2024学年中职高教版(2023)哲学与人生_46364012.pptx VIP
- GB_T50795-2012:光伏发电工程施工组织设计规范.pdf VIP
- 中国大唐集团公司电力生产事故调查规程(新版).docx
- GB50794-2012:光伏发电站施工规范.pdf VIP
- 健康教育特色幼儿园.pptx
- 新能源汽车专业的职业生涯规划书.pdf
- 人教版六年级上册数学全册课时练习(含答案).pdf
文档评论(0)