| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 923 人关注过本帖
标题:【动态定义数组长度】 〖 求助 〗
只看楼主 加入收藏
boarbing
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2008-11-1
收藏
 问题点数:0 回复次数:1 
【动态定义数组长度】 〖 求助 〗
我想设计一个动态定义二维数组长度的一个函数。但好像不行啊。
#include "malloc.h"
#include "stdio.h"
#include "stdlib.h"
void main()
{
int *array=NULL, num, i ,j,f ,s;
printf("Input the number of element:");
scanf("%d", &num);
array=(int *)malloc( sizeof(int) * num ); /*申请动态数组使用的内存块*/
printf("input the second dimaisae\n");
scanf("%d", &s);
f=num%s;

if ( array==NULL ) /*内存申请失败:提示,退出*/
{
    printf("out of memory, press any key to quit……");
    exit(0); /*exit():终止程序运行,返回操作系统*/
}
   
printf("Input %d elements: ", num); /*提示输入num个数据*/
for (i=0; i<s; i++)
  for (j=0; j<f; j++)
  {
      scanf("%d", &array[i][j]);
      }

printf("%d elements are: ", num); /*输出刚输入的num个数据*/
for (i=0; i<s; i++)
  for (j=0; j<f; j++)
  {
    printf("%d,", array[i][j]);
  }

printf("\b "); /*删除最后一个数据后的分隔符“,”*/

free(array); /*释放由malloc()函数申请的内存块*/
}
请各位帮我看一看。谢谢了
搜索更多相关主题的帖子: 数组 定义 动态 长度 
2008-11-01 17:45
phoebe_candy
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2008-10-21
收藏
得分:0 
"malloc.h"和 "stdlib.h" 写一个就可以了。

array 定义的是指针,&array[i][j]换成 *(array+i)+j)形式就可以了,我试了一下逻辑上好像还有问题呢。

我看不懂,这个是什么意思啊??
printf("input the second dimaisae\n");
scanf("%d", &s);
f=num%s;
2008-11-01 18:58
快速回复:【动态定义数组长度】 〖 求助 〗
数据加载中...
 
   



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

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