| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3195 人关注过本帖, 1 人收藏
标题:怎样才写一个二维数组的代码啊?怎样才能输出这个二维数组的最大值和它的的 ...
只看楼主 加入收藏
震中地带
Rank: 5Rank: 5
等 级:职业侠客
威 望:2
帖 子:171
专家分:359
注 册:2012-3-26
结帖率:100%
收藏(1)
已结贴  问题点数:10 回复次数:10 
怎样才写一个二维数组的代码啊?怎样才能输出这个二维数组的最大值和它的的下标啊?
输入一个4*3的整数矩阵,输出 其中最大值、最小值和他们的下标。
哪位前辈给俺看下俺的程序哪儿错了。。哪位好心人能给个正确代码啊?
#include"stdio.h"
    main()
    {
          int a[4][3],i,j,max,min;
    for(i=0;i<4;i++)
   
   
   { printf("请输入一个4*3的整数矩阵:\n");
    for(j=0;j<3;j++)
      scanf("%d",&a[i][j]);
      printf("%d",a[i][j]);
      getchar();}
      
     for(j=0;j<3;j++)
     {max=min=a[0][0];
     if(max<a[i][j])
     max=a[i][j];
    printf("请输入最大值的下标:i=%d,j=%d\n",i,j);
    if(min<a[i][j])
    min=a[i][j];
    printf("请输入最小值的下标:i=%d,j=%d\n",i,j);
                                                }
    printf("max=%d\n",max);
    printf("min=%d\n",min);
    getch();
}
搜索更多相关主题的帖子: max include 最大值 
2012-03-27 16:56
巴克
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:93
专家分:199
注 册:2012-2-8
收藏
得分:8 
#include<stdio.h>
int main()
{
    int sum[3][4];
    int i,j;
    int col=0,row=0,max_sum=0;

    //输入矩阵
    for(i=0;i<3;i++)
        for(j=0;j<4;j++)
            scanf("%d",&sum[i][j]);
    //寻找最大值及其下标
    for(i=0;i<3;i++)
    {
        for(j=0;j<4;j++)
        {
            if(sum[i][j] > max_sum)
            {col = i+1; row = j+1; max_sum = sum[i][j];}
        }
    }

    printf("最大值在第%d行  第%d列  这个数字是%d\n",col,row,max_sum);
    return 0;
}
2012-03-27 21:52
水晰
Rank: 3Rank: 3
来 自:新疆
等 级:论坛游侠
帖 子:39
专家分:113
注 册:2011-4-6
收藏
得分:0 
程序代码:
#include <stdio.h>
int main(void)
{
    int i,j;
    int a[4][3]={5,4,9,45,6,37,45,12,85,9,8,33};
    int max,imax,jmax;
    int min,imin,jmin;
   
    max=a[0][0];
    min=a[0][0];
    for(i=0; i<4; ++i)
    {
        for(j=0;j<3; ++j)
        {
            if(max < a[i][j])
            {
                max = a[i][j];
                imax = i;
                jmax = j;
            }
            if(min > a[i][j])
            {
                min = a[i][j];
                imin = i;
                jmin = j;
            }

        }
    }
       
    printf("min: a[%d][%d] = %d\n",imin,jmin,min);
    printf("max: a[%d][%d] = %d\n",imax,jmax,max);
    return 0;
}
2012-03-27 22:15
震中地带
Rank: 5Rank: 5
等 级:职业侠客
威 望:2
帖 子:171
专家分:359
注 册:2012-3-26
收藏
得分:0 
为什么对row ,它们赋值啊
前辈,能给解释一下,为什么要对row ,col,max _sum 赋值0值吗?
2012-03-27 22:40
Eilliot
Rank: 6Rank: 6
等 级:侠之大者
帖 子:41
专家分:418
注 册:2012-3-26
收藏
得分:0 
二维和一维区别不大吧丶这就是抽象的问题丶楼主好好思考啊
2012-03-27 22:40
巴克
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:93
专家分:199
注 册:2012-2-8
收藏
得分:0 
回复 4楼 震中地带
max_sum 赋值是为了寻找最大值,一开始是0然后比0大就把数值赋给max_sum,不过这样有个漏洞就是有可能出现负数.
至于 col 和row是我的编译器问题如果不赋值的话就会报错.
2012-03-28 22:42
巴克
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:93
专家分:199
注 册:2012-2-8
收藏
得分:2 
对于max_sum 赋值为sum[0][0]保险一点
2012-03-28 22:43
布丁熊
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2018-4-7
收藏
得分:0 
回复 6楼 巴克
#include<stdio.h>
 int main()
 {
     int a[3][4];
     int i,j;
     int col=0,row=0,max_a=0,min_a=0;
     
     //输入矩阵
    for(i=0;i<3;i++)
         for(j=0;j<4;j++)
             scanf("%d",&a[i][j]);
     //寻找最大(小)值及其下标
    for(i=0;i<3;i++)
     {
         for(j=0;j<4;j++)
         {
             if(a[i][j] > max_a)
             {col = i+1; row = j+1; max_a = a[i][j];}
         }
         for(j=0;j<4;j++)
         {
             if(a[i][j] < min_a)
             {col = i+1; row = j+1; min_a = a[i][j];}
         }
     }
可以运行,但有负数,运行结果是错的
2018-04-07 12:07
布丁熊
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2018-4-7
收藏
得分:0 
回复 6楼 巴克
#include<stdio.h>
 int main()
 {
     int a[3][4];
     int i,j;
     int col=0,row=0,max_a=0,min_a=0;
     
     //输入矩阵
    for(i=0;i<3;i++)
         for(j=0;j<4;j++)
             scanf("%d",&a[i][j]);
     //寻找最大(小)值及其下标
    for(i=0;i<3;i++)
     {
         for(j=0;j<4;j++)
         {
             if(a[i][j] > max_a)
             {col = i+1; row = j+1; max_a = a[i][j];}
         }
         for(j=0;j<4;j++)
         {
             if(a[i][j] < min_a)
             {col = i+1; row = j+1; min_a = a[i][j];}
         }
     }
可以运行,但有负数,运行结果是错的
2018-04-07 12:07
布丁熊
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2018-4-7
收藏
得分:0 
回复 6楼 巴克
#include<stdio.h>
 int main()
 {
     int a[3][4];
     int i,j;
     int col=0,row=0,max_a=0,min_a=0;
     
     //输入矩阵
    for(i=0;i<3;i++)
         for(j=0;j<4;j++)
             scanf("%d",&a[i][j]);
     //寻找最大(小)值及其下标
    for(i=0;i<3;i++)
     {
         for(j=0;j<4;j++)
         {
             if(a[i][j] > max_a)
             {col = i+1; row = j+1; max_a = a[i][j];}
         }
         for(j=0;j<4;j++)
         {
             if(a[i][j] < min_a)
             {col = i+1; row = j+1; min_a = a[i][j];}
         }
     }
可以运行,但有负数,运行结果是错的
2018-04-07 12:12
快速回复:怎样才写一个二维数组的代码啊?怎样才能输出这个二维数组的最大值和它 ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.033805 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved