上机实验七答案请自行校对讲解Word文档格式.docx
- 文档编号:13850231
- 上传时间:2022-10-14
- 格式:DOCX
- 页数:14
- 大小:19.01KB
上机实验七答案请自行校对讲解Word文档格式.docx
《上机实验七答案请自行校对讲解Word文档格式.docx》由会员分享,可在线阅读,更多相关《上机实验七答案请自行校对讲解Word文档格式.docx(14页珍藏版)》请在冰豆网上搜索。
voidmain(){
inta[N][M];
inti,j,sum;
printf("
请输入%d*%d二维数组的值:
"
N,M);
for(i=0;
i<
N;
i++)
for(j=0;
j<
M;
j++)
scanf("
%d"
&
a[i][j]);
//先计算第1行和最后一行所有元素的和
sum=0;
sum+=a[0][i]+a[N-1][i];
//计算第1列和最后1列所有元素的和
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];
矩阵的外侧元素之和为%d\n"
sum);
}
第2题、已知一个3×
4矩阵a[3][4]={{1,2,3,4},{1,2,3,4},{1,2,3,4}},打印输出其转置矩阵。
inta[3][4]={{1,2,3,4},{1,2,3,4},{1,2,3,4}},b[4][3];
inti,j;
矩阵a为:
\n"
);
3;
i++){
4;
{
b[j][i]=a[i][j];
printf("
%5d"
a[i][j]);
}
printf("
}
矩阵b为:
for(j=0;
j++){
for(i=0;
b[j][i]);
第3题、给定一个N*N的方阵,求出其上三角元素之和。
上三角形是指主对角线右上角的所有元素
#defineN10
inta[N][N];
N,N);
//计算上三角形所有元素之和
//对于第i行,列是从i开始,直到N-1时结束
for(j=i;
sum+=a[i][j];
上三角形元素之和为:
%d\n"
第4题、打印杨辉三角形前10行(分别用二维数组和一维数组实现)。
1
11
121
1331
14641
15101051
……………………
//杨辉三角形(二维数组)
main()
{
inta[10][10];
inti,j,k;
10;
i++){
a[i][0]=1;
//第i行的第0个元素是1
a[i][i]=1;
//第i行的第i个元素是1
//其它列的元素是由前一行的当前列和前一列的和
for(j=1;
i;
j++)
a[i][j]=a[i-1][j-1]+a[i-1][j];
杨辉三角形为:
=i;
%d"
//杨辉三角形(一维数组)
main(){
inta[10];
for(i=1;
=10;
//处理第i行,下面计算第i行各列的值
a[i-1]=1;
//最后一列为1
for(j=i-2;
j>
0;
j--){
//第j列是其本身与前一列之和
a[j]=a[j]+a[j-1];
//打印第i行所有元素
a[j]);
第5题、假设一个班级有5名学生,每个学生有6门课的成绩,请求出每个学生的平均成绩和每门课的平均成绩。
#defineN5
#defineM6
floata[N][M];
//分数可能为实数
floatsum;
请输入学生的成绩(%d*%d):
%f"
//对每个学生,计算其平均成绩
sum=0;
sum=sum/M;
第%d个学生的平均成绩为:
%.2f\n"
i+1,sum);
//对每门课程,计算平均成绩
sum+=a[j][i];
sum=sum/N;
第%d门课的平均成绩为:
第6题、将一个整数字符串转换为整数输出。
(注:
整数字符串和整数是不同的,比如"
123"
是一个整数字符串,每个元素都是一个数字,但不能进行数值运算,而123是一个整数,可以进行数值运算。
两者外观形态相似,本质不同)
1、先输入一个字符串;
2、将字符串中每个字符分解,并通过ASCII码值转换成数字;
3、将转换后的数字进行合并,组合成一个整数。
string.h>
//处理字符串时,这个库文件必须包含进来
chara[N];
//字符数组
inti,k;
longsum;
请输入一个字符串:
gets(a);
//下面对字符串a从第0个,到最后一个字符逐个进行处理
a[i]!
='
\0'
;
k=a[i]-48;
//把字符的asc码值转换成对应的数字
sum=sum*10+k;
//把转换后的k和前面得到的数字进行合并
转换后,数值为:
%ld\n"
第7题、编写一个字符串复制程序,它的功能是把一个字符串的所有内容复制给另一个字符串,并输出复制后的字符串。
2、对字符串中每个字符,复制到另外一个数组中;
3、复制时,还需要复制字符串结束符'
。
#defineN100
chara[N],b[N];
inti;
//下面对字符串a从每个字符逐个进行复制
i<
N&
&
b[i]=a[i];
//把a[i]中的字符复制到b[i]中
if(i<
N)//此时还需要复制'
b[i]='
复制后的字符串为:
%s\n"
b);
第8题、编写一个求字符串长度的程序,它的功能求出一个字符串中有效字符的个数。
2、对字符串中每个字符进行计数,直到遇到字符串结束符'
时结束;
//下面的for语句也可以改为while语句
字符串长度为:
i);
第9题、编写一个字符串连接程序,它的功能是把两个不知道长度的字符串s1、s2的内容连接成为一个字符串,并保存在字符串s1中。
(提示:
要定义足够长的字符串s1)
1、先输入两个字符到a和b中;
2、判断字符串a的长度;
3、将b中字符,逐个复制到a中的结束符'
的位置上;
#defineN1000
intl,i;
请输入第一个字符串a:
请输入第二个字符串b:
gets(b);
//获取字符串a的长度:
用下面的循环语句,或是直接l=strlen(a);
l=0;
while(a[l]!
)
l++;
//此时a[l]='
下面将b[0]直接赋给a[l]
i=0;
while
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 上机 实验 答案 自行 校对 讲解