| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 311 人关注过本帖
标题:二维数组赋值,算法实现有点困难,希望得到大家指点!
只看楼主 加入收藏
shenghuoxxx
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2015-2-8
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:3 
二维数组赋值,算法实现有点困难,希望得到大家指点!
已定义一维数组A[1]=1,A[2]=2,A[3]=3,A[4]=4,A[5]=5,A[6]=6,A[7]=7,A[8]=8,A[9]=9,A[10]=10
现在要实现二维数组B[1][1]=A[1],               B[2][2]=A[2]                 B[3][3]=A[3]             B[4][4]=A[4]       B[5][5]=A[5],……
                  B[1][2]=A[1]+A[2],          B[2][3]=A[2]+A[3],          B[3][4]=A[3]+A[4],      B[4][5]=A[4]+A[5],……
                  B[1][3]=A[1]+A[2]+A[3],     B[2][4]=A[2]+A[3]+A[4],     B[3][5]=A[3]+A[4]+A[5], ……
                  B[1][4]=A[1]+A[2]+A[3]+A[4],B[2][5]=A[2]+A[3]+A[4]+A[5],……
即实现公式B[m][n]=A[m]+A[m+1]+……A[n-1]+A[n], m小于n。

下边是我写的代码,只能实现第一列B[1][1],B[1][2],B[1][3]……赋值,
程序代码:
    
#include <stdio.h>
int main()
{
    int n,m,length,sum=0;
    int A[11]={0,1,2,3,4,5,6,7,8,9,10};
    int B[11][11]={0};
    printf("输入length:"); 
    scanf (" %d",&length); 
    for(n=1;n<=length;n++)
    {    
        for(m=1;m<=n;m++)
        {
            sum = sum+A[m];
        }
        B[m-n][n]=sum;
        printf("B[%d][%d]=%d\t",m-n,n,B[m-n][n]);
        sum=0;            
    }
    printf("\n");
    return 0;
}

但是B[2][2],B[2][3],……,B[11][11]不能实现赋值,请指点。
2015-02-10 14:52
猫林heart
Rank: 5Rank: 5
等 级:职业侠客
威 望:1
帖 子:60
专家分:390
注 册:2014-9-26
收藏
得分:20 
少了一个for循环,以下是我帮你改的代码,不知道符不符合你的要求
程序代码:
#include <stdio.h>
int main()
{
    int n,m,j,length,sum=0;
    int A[11]={0,1,2,3,4,5,6,7,8,9,10};
    int B[11][11]={0};
    
    printf("输入length:"); 
    scanf (" %d",&length);

    for(m=1;m<=length;m++)
    {    
        for(n=m;n<=length;n++)
        {
            for(j=m;j<=n;j++)
            {
                sum = sum+A[j];
        } 
        B[m][n]=sum;
        printf("B[%d][%d]=%d\t",m,n,B[m][n]);
            sum=0; 
        }           
    }
    printf("\n");
    return 0;
}
2015-02-10 18:46
shenghuoxxx
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2015-2-8
收藏
得分:0 
回复 2楼 猫林heart
谢谢你,看过你改写的代码,确实是少写了个for循环,看来对于嵌套我还需要多加理解!很符合要求!
2015-02-10 22:14
隔世的知己
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2015-2-11
收藏
得分:0 
最后一个printf里最后要用B[[]]吗→_→
2015-02-11 17:03
快速回复:二维数组赋值,算法实现有点困难,希望得到大家指点!
数据加载中...
 
   



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

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