しんちゃん


私信TA

用户名:uq_62396503440

访问量:1444

签 名:

等  级
排  名 6413
经  验 1420
参赛次数 0
文章发表 8
年  龄 0
在职情况 学生
学  校
专  业

  自我简介:

注意事项:定义数组时下标不能为未知的变量:第一遍写的代码将a[n][n]定义在对n取值之前,答案出现问题。因为在定义数组时下标不能为未知的变量,因为在本题中是在全局定义中定义了数组,而编译器在编译时会提前在主存中为数组分配空间,但是因为分配空间数量不确定,导致出错。

参考代码:

#include<stdio.h>
#include<math.h>
void main(void)
{
    int n,y,p,q,i,j;
    scanf("%d",&n);
    int a[n][n];
    if(n < 1 || n > 6)
        printf("error");
    else
    {
        for(i = 0; i < n; i++)
            for(j = 0; j < n; j++)
                scanf("%d",&a[i][j]);      
    }
    y = a[0][0];   
    for(i = 0; i < n; i++)
           for(j = 0; j < n; j++)
           {
               if(pow(a[i][j],2) > pow(y,2))
               {
                   y = a[i][j];
                   p = i;
                   q = j;
               }
           }
    printf("%d %d %d",y,p + 1,q + 1);       
    
}


 

0.0分

0 人评分

  评论区

  • «
  • »