鱼C论坛

 找回密码
 立即注册
查看: 1813|回复: 2

为什么是这个结果?

[复制链接]
发表于 2014-7-24 15:10:33 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 xiawb 于 2014-7-25 10:00 编辑

为什么是这个结果?
#include <stdio.h>
struct Number/*链表1(结构体),包括序号(从0开始),数字,下个结构体地址*/
{int id;
int num;
struct Number *next;};

struct Number_1/*链表2(结构体),包括指向链表1中结构体的地址,下个链表2结构体地址*/
{struct Number *x1;
struct Number_1 *x2;};

void main()
{int m,n,i,k;
struct Number *head,*p1,*p2;/*结构体1的三个地址变量*/
head=0;
p1=(struct Number *)malloc(sizeof(struct Number));
printf("请输入总元素个数M:\n");/*链表1长度定义*/
scanf("%d",&m);
if(m>0)
{        head=p1;
        for(i=0;i<m;i++)/*链表1赋值*/
        {        p2=p1;
                (*p2).id=i;
                printf("请输入第%d个元素值:",i);
                scanf("%d",&(*p2).num);
                p1=(struct Number *)malloc(sizeof(struct Number));
                (*p2).next=p1;
        }
        (*p2).next=0;
        printf("输入完毕,请再输入需要从中取出的元素个数:");/*暂时无意义,不考虑*/
        scanf("%d",&n);
        if(n<=m&&n>0)
        {        struct Number_1 *p3,*head_1;/*建立链表2*/
                head_1=p3=(struct Number_1 *)malloc(sizeof(struct Number_1));
                (*p3).x1=(*head_1).x1=head;/*链表2第一个结构体中的第一个成员指向链表1的第一个结构体,后面的打印结果无语了*/
                printf("%d,%d\n",head,(*head).num);
                printf("%d,%d,%d,%d\n",*head_1,*((*head_1).x1),(*((*head_1).x1)).id,(*((*head_1).x1)).num);
                printf("%d,%d,%d,%d\n",*head_1,*((*head_1).x1),(*((*head_1).x1)).num,(*((*head_1).x1)).id);
                printf("%d,%d\n",head,(*head).num);
        }
        else
        {printf("N值无意义!\n");}
}
else
{printf("M值无意义!\n");}
}




c的.JPG
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-7-24 15:58:58 | 显示全部楼层
←_← 一点注释都没有 没吃的那么空
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-7-25 10:00:43 | 显示全部楼层
牡丹花下死做鬼 发表于 2014-7-24 15:58
←_← 一点注释都没有 没吃的那么空

加注释了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-24 17:40

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表