CHN_WZY2121_yuyu 2017-12-15 04:48 采纳率: 50%
浏览 3691
已采纳

PTA提交一个用C语言写的程序 出现段错误,帮忙看看是哪的问题。谢谢

#include

int m, n;

int main()
{
int h_l[10];
int i, j, pos_i = 0, pos_j = 0;
int h_i = 0, len = 0;
while (1)
{
int L[10][10];
int min = 65535;
if ((scanf("%d %d", &m, &n)) == 2) //输入数据
{
for (i = 0; i < m; i++)
{
for (j = 0; j < n; j++)
{
if ((scanf("%d", &L[i][j])) == 1)
;
else
break;
}
}
}
else
break;

    if (m == 0 && n == 0)
        break;

    for (i = 0; i < m; i++)
    {
        for ( j = 0; j < n; j++)
        {
            if (L[i][j]<min)
            {
                min = L[i][j];
                pos_i = i;
                pos_j = j;
            }
        }
        if (min == 0)
            break;
    }
    len++;
    h_l[h_i] = pos_i;
    h_l[h_i + 1] = pos_j;
}

for (int k = 0; k < len; k = k + 2)
    printf("%d %d\n", h_l[k] + 1, h_l[k + 1] + 1);

return 0;

}

  • 写回答

5条回答 默认 最新

  • threenewbee 2017-12-15 04:51
    关注

    m和n会不会大于10了,那样超过你数组的容量,越界就会出现段错误。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

悬赏问题

  • ¥15 ads仿真结果在圆图上是怎么读数的
  • ¥20 Cotex M3的调试和程序执行方式是什么样的?
  • ¥20 java项目连接sqlserver时报ssl相关错误
  • ¥15 一道python难题3
  • ¥15 用matlab 设计一个不动点迭代法求解非线性方程组的代码
  • ¥15 牛顿斯科特系数表表示
  • ¥15 arduino 步进电机
  • ¥20 程序进入HardFault_Handler
  • ¥15 oracle集群安装出bug
  • ¥15 关于#python#的问题:自动化测试