计算机二级程序修改题01

#include<stdio.h>
#include<stdlib.h>
typedef struct aa //说明一种新类型(结构体)名NODE
{
	int data;
	struct aa *next;//指向结构体的指针,链表中的指针域

}NODE;
NODE *Creatlink(int n,int m)//指针型函数:类型名 *函数名(参数列表)
{
	NODE *h=NULL,*p,*s;
	int i;
	/*******************/
	p=(NODE*)malloc(sizeof(NODE));//malloc返回的是不确定类型的指针,返回之前必须强制转换
	h=p;//h作为头节点
	p->next=NULL;
	for (i=1;i<=n;i++)
	{
		s=(NODE*)malloc(sizeof(NODE));//给新添s节点申请空间
		s->data=rand()%m;
		s->next=p->next;//对s的指针域进行赋值
		p->next=s;//p指向s
		p=p->next;//前进一个,p永远为最后一个节点
	}
	/*******************/
	return h;/*函数的返回值,return语句中的表达式类型必须和函数首部所说明的一致
			 返回应为函数的头指针*/
	}

}
outlink(NODE *h)
{
	NODE *p;
	p=h->next;
	printf("\n\nTHe list:\n\nHEAD");
	while(p);
	{
		printf("->%d",p->data);
		p=p->next;}
	printf("\n");

}
int main()
{
	NODE *head;
	head=Creatlink(8,22);/*head为一个指针,所以函数的返回值应为指针类型*/
	outlink(*head);
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值