实验九 二维数组及字符数组程序设计1
更新时间:2023-07-29 20:29:01 阅读量: 实用文档 文档下载
- 实验九视图的使用推荐度:
- 相关推荐
实验九 二维数组及字符数组程序设计
姓名:周咪咪 班级:11数字媒体技术(2) 学号:2011329700214 实验目的:
1、 掌握二维数组的定义和引用方法。
2、 掌握字符数组的定义和使用方法。
3、 掌握正确使用一维数组及字符数组编程。
实验内容:
1、 编写程序,输入两个正整数m和n(1≤m,n≤6),然后输入该m行n列矩阵a中的元
素,分别求出各行元素之和,并输出。
2、 编写程序,输入一个正整数n(1≤n≤6)和n阶方阵a中的元素,如果找到a的鞍点(鞍
点的元素值在该行上最大,在该列上最小),就输出它的下标;否则输出“NO”(设a最多有一个鞍点)。
3、 编写程序,输入一个以回车符结束的字符串(少于80个字符),过滤去所有的非十六进
制字符后,组成一个新字符串(十六进制形式),然后将其转换为十进制数后输出。 实验过程:
一、实验一
1、 算法思路:
(1)先定义数组,输入数据显示行列式。
(2)再用循环实现各行元素之和。
2、 程序清单:
#include<stdio.h>
int main(void)
{
int i,j,m,n,sum;
printf("enter m,n:");
scanf("%d%d",&m,&n);
int a[6][6];
printf("enter digit:");
for(i=0;i<m;i++)
for(j=0;j<n;j++)
scanf("%d",&a[i][j]);
for(i=0;i<m;i++)
{
for(j=0;j<n;j++)
printf("%4d",a[i][j]);
printf("\n");
}
{
sum=0;
for(j=0;j<n;j++)
sum=sum+a[i][j];
printf("\n");
printf("sum=%d",sum);
}
return 0;
}
3、 原始数据:
m=3,n=3
Enter digit:1 2 3 4 5 6 7 8 9
4、 运行结果:
5、 分析与思考:
(1)sum不要忘输初值。
(2)数组的定义为a[6][6]表示最多为6行6列。
二、实验二
1、算法思路:
先通过循环在行中找到最大数,记下此时的列数。
再根据列数,找到该列中的最小数。
判断最大数和最小数是不是相等,是的话输出该元素的下标,不是的话输出“no”。
2、程序清单:
#include<stdio.h>
int main(void)
{
int i,j,n,max,min,row,col;
printf("enter n(n<=6):");
scanf("%d",&n);
int a[6][6];
printf("enter digit:");
for(i=0;i<n;i++)
for(j=0;j<n;j++)
scanf("%d",&a[i][j]);
{
for(j=0;j<n;j++)
printf("%4d",a[i][j]);
printf("\n");
}
for(i=0;i<n;i++)
{
max=a[i][0];
for(j=0;j<n;j++)
{
if(a[i][j]>max)
{
max=a[i][j];
row=i,col=j;
}
}
min=a[0][col];
for(j=col,i=0;i<n;i++)
{
if(a[i][j]<min)
min=a[i][j];
}
}
if(min==max)
{
printf("the row of number is:%d\n",row);
printf("the col of number is:%d\n",col);
}
else
printf("no\n");
return 0;
}
3、原始数据:
n=3
enter digit :2 4 8 2 3 9 4 5 70
4、运行结果:
5、分析与思考:
(1)在多重循环的程序中要注意加{ }的位置,否则会出错的。
(2)注意小错误,如:等于为"=="
三、实验三
1、算法思路:
(1)先定义数组a[81](前面80个为字符,最后一个为回车符)。
(2)再用循环判断语句实现滤去所有的非十六进制字符,形成新的字符串。
(3)再将字符型转换成十进制型输出。
2、程序清单:
#include<stdio.h>
int main(void)
{
char a[81],ch;
int b,i,j,sum=0,k=0,item=1;
i=0;
printf("enter string:");
ch=getchar();
while(ch!='\n')
{
if((ch>='0'&&ch<='9')||(ch>='a'&&ch<='f'))
{
a[i]=ch;
i++;
}
ch=getchar();
}
for(j=i-1;j>=0;j--)
{
if(a[j]>='0'&&a[j]<='9')
b=a[j]-'0';
else
b=10+a[j]-'a';
sum=sum+b*item;
item=item*16;
}
printf("%d\n",sum);
return 0;
}
3、原始数据:
输入123#ap
4、运行结果:
5、分析与思考:
(1)在转换数据类型时,要先对字符分类。
(2)要清楚十六进制字符的范围为"0~f"
正在阅读:
实验九 二维数组及字符数组程序设计107-29
某西餐厅装修改造工程监理细则 - 图文05-25
云南省大理州大理市2017年中考数学模拟试卷(Word版,含答案解析05-19
自学考试论文撰写要求07-20
告别拖拉作文800字07-08
江苏省徐州市贾汪区建平中学高中物理选修1-1:2.5磁性材料 教案03-12
父亲八十大寿庆典致辞(含祝寿词,敬酒词)02-13
市场营销试卷405-31
2016邓州二模03-21
- 教学能力大赛决赛获奖-教学实施报告-(完整图文版)
- 互联网+数据中心行业分析报告
- 2017上海杨浦区高三一模数学试题及答案
- 招商部差旅接待管理制度(4-25)
- 学生游玩安全注意事项
- 学生信息管理系统(文档模板供参考)
- 叉车门架有限元分析及系统设计
- 2014帮助残疾人志愿者服务情况记录
- 叶绿体中色素的提取和分离实验
- 中国食物成分表2020年最新权威完整改进版
- 推动国土资源领域生态文明建设
- 给水管道冲洗和消毒记录
- 计算机软件专业自我评价
- 高中数学必修1-5知识点归纳
- 2018-2022年中国第五代移动通信技术(5G)产业深度分析及发展前景研究报告发展趋势(目录)
- 生产车间巡查制度
- 2018版中国光热发电行业深度研究报告目录
- (通用)2019年中考数学总复习 第一章 第四节 数的开方与二次根式课件
- 2017_2018学年高中语文第二单元第4课说数课件粤教版
- 上市新药Lumateperone(卢美哌隆)合成检索总结报告
- 数组
- 二维
- 程序设计
- 字符
- 实验
- 小学五年级品德与社会上册复习资料
- 2015最新淘宝刷单教学
- 异步电动机的工作原理
- 计算电磁学研究进展_洪伟
- 佛子岭项目总监巡视检查记录本
- 2014年贵州省遵义市初中毕业生学业(升学)考试模拟数学试卷(二)
- 人教版二年级语文下册《寓言两则》教案
- 儿童水墨画教案(奇妙课程)
- 第一章 教育科学研究概述
- 人教版小学语文一年级上册《一去二三里》 教学设计
- 2010信息技术会考笔答试卷
- 走在前面 《驯龙战机3D》前期快速起步技巧分享
- 小学关爱留守儿童活动方案通用范本
- 冲击载荷作用下舰艇管路系统全局参数灵敏度分析
- 2011年注册会计师考试财务成本管理复习重点 2011
- 财务分析估算表(国内企业)
- 如何追回分手的恋人
- 食物中毒事件应急处理能力存在问题及对策
- 当代大学生就业形势分析必备
- 高考物理总复习检测:机械能守恒定律及其应用