c语言数据结构问题

#include<stdio.h>#include<malloc.h>structff{intID;structff*next_friend;structff*next;... #include<stdio.h>
#include<malloc.h>
struct ff
{
int ID;
struct ff *next_friend;
struct ff *next;
};
void main()
{
int circle_num,i,j,num;
scanf("%d",&circle_num);
ff *c,*c1,*c2;
c2=(ff *)malloc(sizeof(ff));
c=c2;
for(i=0;i<circle_num;i++)
{
c1=(ff *)malloc(sizeof(ff));
scanf("%d",&num);
ff *c3=(ff *)malloc(sizeof(ff));
c2=c3;
ff *c4;
for(j=0;j<num;j++)
{
c4=(ff *)malloc(sizeof(ff));
scanf("%d",&c3->ID);
c3->next_friend=c4;
c3=c4;
}
c3->next_friend=NULL;
c2->next=c1;
c2=c1;
}

int l;
ff *c5,*c6;
c5=c;
for(l=0;l<circle_num;l++)
{
c6=c5;
while(c6->next_friend!=NULL)
{

printf("%d ",c6->ID);
c6=c6->next_friend;
}
printf("%d\n",c6->ID);
c5=c5->next;
}
}
大概是想做一个表格,只不过,每行的元素个数不一定相等
程序语法是没有错误,但是有点问题
展开
 我来答
匿名用户
2016-10-12
展开全部
#include<stdio.h>
#include<malloc.h>
struct ff
{
 union {int ID;       // 数据节点,存放数据信息
  struct ff *next; }; // 每行的头结点,存放下一行的头结点的地址即指向下一行
 struct ff *next_friend; // 指向下一个数据节点
};
void main()
{
 int circle_num,i,j,num;
 scanf("%d",&circle_num);  // 行数
 ff *c,*c1,*c2;
 c=(ff *)malloc(sizeof(ff)); // 第一行头结点
 c1=c2=c;
 c2->next=NULL;

 for(i=0;i<circle_num;i++)
 {
  scanf("%d",&num);
  ff *c3=c2; //(ff *)malloc(sizeof(ff));
  ff *c4;
  for(j=0;j<num;j++)
  {
   c4=(ff *)malloc(sizeof(ff));
   scanf("%d",&c4->ID);
   c3->next_friend=c4;
   c3=c4;
  }
  c3->next_friend=NULL;
  c2=(ff *)malloc(sizeof(ff));
  c2->next = c1;
  c1->next=c2;
  c1=c2;
 }
 c2->next->next =NULL;
 free(c2);
 int l;
 ff *c5,*c6;
 c5=c;
 for(l=0;l<circle_num;l++)
 {
  c6=c5->next_friend;
  while(c6!=NULL)
  {
   
   printf("%d ",c6->ID);
   c6=c6->next_friend;
  }
  printf("\n");
  c5=c5->next;
 }
}

改动了一下,表格的每行有一个头结点, 头结点有next,指向下一行,其他节点是ID,,存放信息。

以上代码估计会存在问题的情况是行数为0的时候

光点科技
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件... 点击进入详情页
本回答由光点科技提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式