| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 514 人关注过本帖
标题:动态矩阵的生成与管理,调试不出来。。。
只看楼主 加入收藏
xinyue1943
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2007-9-12
收藏
 问题点数:0 回复次数:1 
动态矩阵的生成与管理,调试不出来。。。

#include <stdio.h>
#include <stdlib.h>
typedef struct JZH
{
int a;
struct JZH * next;
} J;
void main()
{
//定义变量
int n,row,line,count,i,j,m[100][100],
J *q,*p,*head,*newMem;


//建立头结点
head=(J *)malloc(sizeof(J));
head->next=NULL;


//对变量赋初值
count=0;
q=head;
p=head->next;


//请用户输入行数
printf("请输入行数:");
scanf("%d",&row);


//请用户输入列数
printf("请输入列数:");
scanf("%d",&line);


//请用户输入数据
printf("请输入数据:");
while(count<line*row)//如果符合要求将数据插入链表
{
//新结点
newMem=(J *)malloc(sizeof(J));

scanf("%d",&n);

//将新数据读入新结点
newMem->a=n;


//按用户输入顺序插入
q->next=newMem;
newMem->next=p;
count++;

q=q->next;

}

/**********按用户要求的行列输出**********/

p=head->next;

while(p!=NULL)
{for(i=0;i<row;i++)
for(j=0;j<line;j++){
m[i][j]=p->a;
p=p->next;
}
}
printf("\n\n该矩阵为:\n\n");
for(i=0;i<row;i++){
for(j=0;j<line;j++){
printf("%-4d",m[i][j]);
}
printf("\n");
}
printf("\n任意键结束程序!\n\n");

}


搜索更多相关主题的帖子: 矩阵 head 动态 next 变量 
2007-09-12 18:50
se7en_enter
Rank: 1
等 级:新手上路
帖 子:38
专家分:0
注 册:2006-5-11
收藏
得分:0 
大体上看程序没什么问题,
是不是,你的链表的最后一个节点,没有指向空啊。
在说,你这个程序根本不用插入,
直接用尾插法建立起个链表不久可以了,让最后一个节点为q ,没接上一个节点 让q->NULL;

年轻有年轻的冲动,成熟有成熟的魅力。莫让时间冲淡一切,要让一切充实时间
2007-09-12 22:20
快速回复:动态矩阵的生成与管理,调试不出来。。。
数据加载中...
 
   



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

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