| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1024 人关注过本帖
标题:急需解决的一个问题,求大神帮忙。
只看楼主 加入收藏
ly2222
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:217
专家分:618
注 册:2012-6-15
收藏
得分:0 
我现在碰到的问题是,如何定义a[m][n]?
2012-06-30 21:16
q7408695
Rank: 2
等 级:论坛游民
帖 子:22
专家分:50
注 册:2011-8-2
收藏
得分:0 
回复 9楼 ly2222
不使用动态内存你就只能先声请一个较大的二维数组,比如a[200][200],然后只用其中一部分。
2012-06-30 21:16
ly2222
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:217
专家分:618
注 册:2012-6-15
收藏
得分:0 
我写的这个程序,你看看是什么错误? 不知道怎么输入m,n
#include <stdio.h>
#define   M   100
#define   N   100
void main()
{
  int a[M][N];
  int b[M];
  int max,i,j;
  for(i=0;i<M;i++)
    {
      max=a[i][0];
      for(j=1;j<N;j++)
         {
          if(a[i][j]>=max)
          max=a[i][j];
         }
      b[i]=max;
    }
   for(i=0;i<M;i++)
   printf("%d\n",b[i]);
}
2012-06-30 21:19
q7408695
Rank: 2
等 级:论坛游民
帖 子:22
专家分:50
注 册:2011-8-2
收藏
得分:0 
回复 13楼 ly2222
两个for先对数组进行输入啊。你都直接指定为全用?输入100*100个数???
2012-06-30 21:25
ly2222
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:217
专家分:618
注 册:2012-6-15
收藏
得分:0 
我的意思就是通过输入控制m和n的值,大神帮我改下吧,我搞晕了。
2012-06-30 21:29
q7408695
Rank: 2
等 级:论坛游民
帖 子:22
专家分:50
注 册:2011-8-2
收藏
得分:16 
回复 15楼 ly2222
程序代码:
#include <stdio.h>
#define   M   100 
#define   N   100 

void main()
{
    int a[M][N];
    int b[M];
    int row, col;
    int max,i,j;

    //请确保输入合法。
    scanf("%d%d", &row, &col);

    for (i=0; i<row; i++)
    {        
        for (j=0; j<col; j++)
        {
            scanf("%d", &a[i][j]);//输入每个值
        }
    }

    for(i=0;i<row;i++)
    {
        max=a[i][0];
        for(j=1;j<col;j++)
        {
            if(a[i][j]>max)
                max=a[i][j];
        }
        b[i]=max;
    }
    for(i=0;i<row;i++)
        printf("%d\n",b[i]);
}
2012-06-30 21:32
ly2222
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:217
专家分:618
注 册:2012-6-15
收藏
得分:0 
回复 16楼 q7408695
运行了结果是对的,太感谢你了!
2012-06-30 21:45
ly2222
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:217
专家分:618
注 册:2012-6-15
收藏
得分:0 
这样是不是也可以
#include <stdio.h>
void main()
{
    int a[100][100];
    int b[100];
    int row, col;
    int max,i,j;

    //请确保输入合法。
    scanf("%d%d", &row, &col);

    for (i=0; i<row; i++)
    {        
        for (j=0; j<col; j++)
        {
            scanf("%d", &a[i][j]);//输入每个值
        }
    }

    for(i=0;i<row;i++)
    {
        max=a[i][0];
        for(j=1;j<col;j++)
        {
            if(a[i][j]>max)
                max=a[i][j];
        }
        b[i]=max;
    }
    for(i=0;i<row;i++)
        printf("%d\n",b[i]);
}
2012-06-30 21:49
快速回复:急需解决的一个问题,求大神帮忙。
数据加载中...
 
   



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

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