第十四,十五周作业

题目:第十五周第二次作业第二题

代码:

#include<stdio.h>
int main()
{
int s[20][20]={0},a,b,m,n,flag=1,flag_=0;
scanf("%d %d",&m,&n);
for(a=0;a<m;a++)
{
for(b=0;b<n;b++)
{
scanf("%d",&s[a][b]);
}
}
for(a=1;a<(m-1);a++)
{
for(b=1;(b<n-1);b++)
{
if(s[a][b]>s[a-1][b]&&s[a][b]>s[a+1][b]&&s[a][b]>s[a][b+1]&&s[a][b]>s[a][b-1])
{
flag=0;
flag_=1;
}
if(flag==0)
{
printf("%d %d %d\n",s[a][b],a+1,b+1);
flag=1;
}
}
}
if(flag_)
flag=0;
if(flag)
printf("None %d %d",m,n);
}

思路:

第一步:创建二位数列

第二步:按题目要求输入

第三步:创建循环,计算每一个数周围的数是否有这个数大,若是则输出这个数,若不是跳到下一个数

第四步:判断是否有局部最大数,若没有则输出None

流程图:

错误:刚开始审题错误,以为是要找没一行中的极大值,导致输出结果始终是None,重新审题后,没想明白如何判断是否有数输出。

在这周的学习中我学习到了二维数组的使用,对循环的使用更加熟练

刘炜旗:

史泽文:

王鑫宇:http://www.cnblogs.com/wxy5336/p/7966876.html

posted @ 2017-12-03 21:58  计科-刘宇  阅读(99)  评论(1编辑  收藏  举报