欢迎来到天天文库
浏览记录
ID:38034751
大小:44.50 KB
页数:3页
时间:2019-05-24
《结构体与函数》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第5次:结构体与函数,链表的定义【实验二】结构体与动态数据结构(结构体与函数,链表的定义)【要求】·掌握结构体指针作为函数参数的用法。·掌握链表结点定义,会用结点连接成链表,并输出链表内容。结构体指针作为函数参数定义CARD结构体,分别编写函数实现CARD的输入和打印,然后在主程序中调用。(1)定义CARD结构://CARD结构定义structCARD{charsuit[10];charface[10];};(2)编写函数输入一个CARD结构体变量://输入一张扑克牌voidInputCard(structCARD*
2、pCard){//TODO:分别输入pCard->suit和pCard->face}(3)编写函数打印一个CARD结构体变量。//打印一张扑克牌voidPrintCard(structCARD*pCard){//TODO:分别打印pCard->suit和pCard->face}(4)在主函数中调用:intmain(){structCARDcard; InputCard(&card);PrintCard(&card); return0;}链表的定义用结点连接成链表,并输出链表中的数据。·(1)首先定义链表结点,其数据域
3、存放一个整数。structLink{intdata;//数据域structLink*next;//指向下一个结点的指针域};·(2)然后,分别定义5个结点,依次存放1、2、3、4、5。intmain(){//定义5个结点structLinkn1,n2,n3,n4,n5; //依次存放1、2、3、4、5n1.data=1;n2.data=2;n3.data=3;... return0;}·(3)给每个结点的指针域适当赋值,使其构成一个链表,且链表中的数据依次为1、2、3、4、5。//连成一个链表n1.next=&n2;
4、n2.next=&n3;...n5.next=NULL;·(4)定义一个指针,使其指向链表中的第一个结点,作为链表的头指针。//定义5个结点structLinkn1,n2,n3,n4,n5;//定义头指针structLink*head=&n1;·(5)定义一个指针,从链表头指针开始,循环遍历整个链表,并输出其中的数据。//定义5个结点structLinkn1,n2,n3,n4,n5;//定义头指针structLink*head=&n1;//循环遍历链表用的指针structLink*p; //依次存放1、2、3、4、5
5、... //连成一个链表... //循环遍历整个链表p=head;//指针指向第一个结点while(p!=NULL){printf("%4d",p->data);//输出结点中的数据p=p->next;//使指针指向下一个结点}思考题请将链表按5、4、3、2、1连接起来,重新运行程序。
此文档下载收益归作者所有