| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1987 人关注过本帖, 1 人收藏
标题:请教给二维数组赋值的问题,谢谢!
只看楼主 加入收藏
jamesbow
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2007-2-27
收藏(1)
 问题点数:0 回复次数:14 
请教给二维数组赋值的问题,谢谢!
源程序如下:
#include<stdio.h>
main(){
int i,j,k,m,a[6]={5,3,9,8,7,1};
int temp[][4]={0,0,0,0};
for(i=0;i<=2;i++)
      {
       for(j=i+1;j<=3;j++)
        {
          for(k=j+1;k<=4;k++)
          {
           for(m=k+1;m<=5;m++)
             printf("%d %d %d %d\n",a[i],a[j],a[k],a[m]);}}}}

现在问题是如何把printf出来数赋给temp[][4]这个数组。请各位帮忙,谢谢!
搜索更多相关主题的帖子: 赋值 
2008-09-09 17:48
cosdos
Rank: 9Rank: 9Rank: 9
来 自:ShangHai
等 级:蜘蛛侠
威 望:6
帖 子:2109
专家分:1385
注 册:2007-6-19
收藏
得分:0 
此代码中,不存在二维数组

—>〉Sun〈<—
2008-09-09 18:07
jamesbow
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2007-2-27
收藏
得分:0 
我在行4中定义了一个二维数组temp呀,printf后在屏幕上有
5 3 9 8
5 3 9 7
5 3 9 1
5 3 8 7
.......
想把上面的结果赋给temp这个二维数组,使temp[][4]={5,3,9,8,5,3,9,7,5,3,9,1.............}
谢谢。
2008-09-09 18:22
cosdos
Rank: 9Rank: 9Rank: 9
来 自:ShangHai
等 级:蜘蛛侠
威 望:6
帖 子:2109
专家分:1385
注 册:2007-6-19
收藏
得分:0 
printf("tempsize = %d", sizeof(temp) );   /* 这样你看下 */

—>〉Sun〈<—
2008-09-09 18:44
飞天舞xsj
Rank: 1
来 自:武汉
等 级:新手上路
帖 子:47
专家分:0
注 册:2006-12-25
收藏
得分:0 
此代码中,的确不存在二维数组。int temp[][4]={0,0,0,0};系统会根据总个数分配存储空间,一共4个数据,每行4列,当然可确定为一行,即一维数组。与
int temp[4]={0,0,0,0};等效。正确定义要么int temp[][4]={{0},{0},{0},{0}};
要么全部将元素列出来。总之二维数组初始化定义还没搞明白。

2008-09-09 19:15
loveJE
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2008-9-8
收藏
得分:0 
int temp[][4]={0,0,0,0};
这样定义的话temp应该只有4个元素,sizeof(temp)应该=16…
2008-09-09 19:20
zhf63
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2008-8-26
收藏
得分:0 
main(){
int i,j,k,m,a[6]={5,3,9,8,7,1};
int index=0;
int temp[20][4]={0};
for(i=0;i<=2;i++)
      {
       for(j=i+1;j<=3;j++)
        {
          for(k=j+1;k<=4;k++)
          {
           for(m=k+1;m<=5;m++)
             printf("%d %d %d %d\n",a[i],a[j],a[k],a[m]);
              temp[index][0]=a[i];temp[index][1]=a[j];
              temp[index][2]=a[k];temp[index][3]=a[m];
               index++;
             }}}}
2008-09-09 21:24
cosdos
Rank: 9Rank: 9Rank: 9
来 自:ShangHai
等 级:蜘蛛侠
威 望:6
帖 子:2109
专家分:1385
注 册:2007-6-19
收藏
得分:0 
int temp[][4] = {0,0,0,0};

temp[1][0] 就超出了数组

[[it] 本帖最后由 cosdos 于 2008-9-9 21:36 编辑 [/it]]

—>〉Sun〈<—
2008-09-09 21:35
shade1220
Rank: 1
等 级:新手上路
帖 子:83
专家分:0
注 册:2008-8-5
收藏
得分:0 
如果2维数组作为形式参数,是使用**arry
有没有哪位兄弟给我介绍下**arry的指向和参数传递相关事宜

踏踏实实学习,认认真真编程
2008-09-09 22:11
广陵绝唱
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:29
帖 子:3607
专家分:1709
注 册:2008-2-15
收藏
得分:0 
程序代码:
#include<stdio.h> 
int main(void)
{
    int i,j,k,m,l,a[6]={5,3,9,8,7,1};
    int temp[40][4];
    l=0;
    for(i=0;i<=2;i++)
        for(j=i+1;j<=3;j++)
            for(k=j+1;k<=4;k++)
                for(m=k+1;m<=5;m++)
                {
                    temp[l][0]=a[i];
                    temp[l][1]=a[j];
                    temp[l][2]=a[k];
                    temp[l][3]=a[m];
                    l++;
                }
    for(i=0;i<l;i++)
    {
        for(j=0;j<4;j++)
            printf("%d ",temp[i][j]);
        printf("\n");
    }
    getch();
    return 0;
}
2008-09-09 22:27
快速回复:请教给二维数组赋值的问题,谢谢!
数据加载中...
 
   



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

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