当前位置:首页 » 编程语言 » c语言程序网

c语言程序网

发布时间: 2024-12-26 02:23:25

c语言 编写程序

链表创建使用creat函数,每调用一次创建一个节点。第一次调用函数会自己创建头节点内存。
打印输出部分,只要打印第一个节点,只要stuHead->next就可以了。
我这里写循环里,是演示遍历链表,你把break去掉就是打印整个链表。

#include<stdio.h>

#include<malloc.h>

typedef struct stuInfo

{

int id;//学号

char name[10];//姓名

int score;//成绩

struct stuInfo *next;

}SINFO;

int creat(SINFO **stuHead,SINFO**stuTail);//成功返回1,失败返回0

int main()

{

SINFO *stuHead=NULL,*stuTail=NULL;

if(!creat(&stuHead,&stuTail))

return 1;

if(!creat(&stuHead,&stuTail))

return 1;

if(!creat(&stuHead,&stuTail))

return 1;

while(stuHead->next)

{

printf("链表第一个学生信息: ");

printf("学号:%d ",stuHead->next->id);

printf("姓名:%s ",stuHead->next->name);

printf("成绩:%d ",stuHead->next->score);

break;//去掉这个,就是打印链表所有信息,作为参考

stuHead=stuHead->next;

}

return 0;

}

int creat(SINFO **stuHead,SINFO**stuTail)//成功返回1,失败返回0

{

SINFO *sHead=*stuHead,*sTail=*stuTail,*sNew=NULL;

if(!sHead)

{

sHead=(SINFO *)malloc(sizeof(SINFO)),sHead->next=NULL;

if(!sHead)

return 0;//抛出异常

}

sNew=(SINFO *)malloc(sizeof(SINFO));

if(!sNew)

return 0;//抛出异常

printf("请输入学号:"),scanf("%d",&sNew->id);

printf("请输入姓名:"),scanf("%s",sNew->name);

printf("请输入成绩:"),scanf("%d",&sNew->score);

sNew->next=NULL;

if(sHead->next==NULL)

sHead->next=sNew;

else

sTail->next=sNew;

sTail=sNew;

*stuHead=sHead;

*stuTail=sTail;

return 1;

}

㈡ 有没有小白基础的c语言程序设计百度网盘分享

C语言程序设计教程:
http://pan..com/s/1gf7QEMf
网络网盘资源下载
这还有个比较多的
链接: http://pan..com/s/1hsGCfha 密码: xjbr

热点内容
c语言设计时钟 发布:2024-12-26 14:15:54 浏览:169
java派生 发布:2024-12-26 14:11:11 浏览:463
python核心技术 发布:2024-12-26 13:54:06 浏览:201
安卓智能显示如何设置 发布:2024-12-26 13:54:01 浏览:78
知道服务器ip和密码怎么办 发布:2024-12-26 13:51:00 浏览:110
联想小新pro14怎么查配置 发布:2024-12-26 13:48:39 浏览:438
智能标注脚本 发布:2024-12-26 13:48:03 浏览:801
王者安卓和苹果国服哪个强 发布:2024-12-26 13:42:09 浏览:113
面向对象的存储 发布:2024-12-26 13:30:06 浏览:198
tc按键脚本 发布:2024-12-26 13:25:03 浏览:683