永发信息网

C语言编程题:滑雪 问题

答案:2  悬赏:60  手机版
解决时间 2021-03-01 06:19
#include
#include
void num(int x,int y);
int max(int c,int d);
int a[100][100],b[100][100];
void main()
{
int r,c,i,j,n;
scanf("%d %d",&r,&c);//r代表行数,c代表列数
for(i=1;i<=r;i++)
for(j=1;j<=c;j++)
{
a[i][j]=-1;b[i][j]=1;
}
for(i=1;i<=r;i++)
for(j=1;j<=c;j++)
scanf("%d",&a[i][j]);//高度
num(1,1);n=0;
for(i=1;i<=r;i++)
for(j=1;j<=c;j++)
n=max(n,b[i][j]);
printf("%d",n);
system("pause");
}
int max(int c,int d)
{
if(c>d) return c;
else return d;
}
void num(int x,int y)
{
if(a[x+1][y]!=-1&&a[x+1][y] {
b[x+1][y]==1?
b[x][y]=num(x+1,y):(b[x][y])=max(b[x+1][y],b[x][y]);
}
if(a[x-1][y]!=-1&&a[x-1][y] {
b[x-1][y]==1?
b[x][y]=num(x-1,y):(b[x][y])=max(b[x-1][y]+1,b[x][y]);
}
if(a[x][y+1]!=-1&&a[x][y+1] {
b[x][y+1]==1?
b[x][y+1]=num(x,y+1):(b[x][y])=max(b[x][y+1]+1,b[x][y]);
}
if(a[x][y-1]!=-1&&a[x][y-1] {
b[x][y-1]==1?
b[x][y-1]=num(x,y-1):(b[x][y])=max(b[x][y-1]+1,b[x][y]);
}
}//运行不了,怎么解决
最佳答案
你这里面问题太多了!
1、num()设置成了无返回值函数,但是你在实际应用的时候当成有返回值函数在用。
2、max函数名字要变一下,这个不给用
3、b[x][y-1]==1? 这算什么意思?是不是改成if(b[x][y-1]==1)
4、num(x,y-1):(b[x][y])这是什么意思?冒号运算符?看不懂!
全部回答
我。。知。。道 加。。我。。私。。聊
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
亮海美发在哪里啊,我有事要去这个地方
双井哪个地铁口出离首城国际近?
在总结国内外监管经验的基础上,银监会提出的
我没想过戒烟更谈不上为谁改变
肤得安治什么
霍家山怎么去啊,有知道地址的么
求个GBA火焰之纹章圣魔光石的动画修改版和圣
狗尾巴能不能拽
生产设备安全检查职责及内容
国内生产总值中第一、第二、第三产业产值之比
四会单词是什么意思
“如果你把所有的谬误关在门外,真理也将被关
金边也铁门,如何养
吃什么能让力气变大
德行寄卖我想知道这个在什么地方
推荐资讯
去除内衣磨人的妙招
光明渔具店怎么去啊,有知道地址的么
后头村在什么地方啊,我要过去处理事情
《赵威后问齐使》:“故有问,舍本而问末者耶
银行的存款记录算收入证明吗
【axure怎么读】axure这个词如何发音.怎么读.
1岁半的孩子去巴厘岛能适应吗
人民大药店在什么地方啊,我要过去处理事情
蜀安驾校(省建一公司第二卫生所东)地址在什么
鼠标垫如何清洗
2002年4月28日8点05分出生的男孩,五行缺什么
成语填空:( )百( )长
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?