最近没事学学C语言的编程,通过指针编写了一个链表结构,代码比较简单,不做介绍,详细代码如下:
/*
* File: main.c
* Author: wuguowei
*
* Created on 2015年2月12日, 上午11:54
*/
#include <stdio.h>
#include <stdlib.h>
#define LEN sizeof(struct Student)
struct Student {
long num;
float score;
struct Student *next;
};
int n;
struct Student * create(void) {
struct Student *head;
struct Student *p1, *p2;
n = 0;
p1 = p2 = (struct Student *) malloc(LEN);
scanf("%ld,%f", &p1->num, &p1->score);
head = NULL;
while (p1->num != 0) {
n = n + 1;
if (n == 1) {
head = p1;
} else {
p2->next = p1;
}
p2 = p1;
p1 = (struct Student *) malloc(LEN);
scanf("%ld,%f", &p1->num, &p1->score);
}
p2->next = NULL;
return head;
}
void print(struct Student *head) {
struct Student *p;
printf("\nNow,These %d records are:\n", n);
p = head;
if (head != NULL) {
do {
printf("%ld %5.1f\n", p->num, p->score);
p = p->next;
} while (p != NULL);
}
}
/*
*
*/
int main(int argc, char** argv) {
struct Student * pt;
pt = create();
print(pt);
return (EXIT_SUCCESS);
}
执行结果:
输入:
1001,89.3
1002,99
1003,79.4
1004,99.8
0,0
Now,These 4 records are:
1001 89.3
1002 99.0
1003 79.4
1004 99.8
运行 FINISHED; 退出值0; 实时: 37s; 用户: 0ms; 系统: 0ms
分享到:
相关推荐
通讯录管理系统数据结构C语言版链表实现实验报告.doc
循环链表数据结构C语言实现
用c语言实现链表的合并,是数据结构中重要的基础实验,调试后可以运行
C语言课程设计,使用连接mysql数据库并完成单向链表。
用c语言实现单向链表的数据结构,可以在编译器里直接使用的
链表综合系统链表综合系统链表综合系统链表综合系统
c语言实现链表,链表是数据结构第一课,希望对你有帮助 实现链表
数据结构中十字链表的C语言实现 数据结构中十字链表的C语言实现
原创C语言实现词频统计,使用通用数据类型的双向链表进行缓存,自动拆分单词,,可通过命令行一次性读取多个文本,分别输出统计结果,简单实用。
通过循环链表实现约瑟夫环问题,用c语言实现。属于数据结构部分内容
是用C语言来实现对链表的各种操作,数据结构课程一般会用到。保证程序正确性
数据结构,c语言实现的单向链表。代码分享 struct LinkNode { int data; struct LinkNode *next; }; typedef struct LinkNode *Lnode;
数据结构C语言链表的实现
数据结构C语言版 链表基本操作算法实现(VC)
自己写的,能够使用,对c语言的指针用的淋漓精致,有需要的小伙伴可以下载看下
链表的c语言实现是学习数据结构的好例子 源代码
单链表(数据结构C语言版) 链表的创建,插入,删除,排序等操作并建立有菜单,可以选择操作
这个程序首先定义了一个Node结构体来表示链表节点,包含整数数据和指向下一个节点的指针。然后提供了一系列函数来操作链表,包括创建新节点、在链表末尾插入节点、打印链表内容。在main函数中,演示了如何使用这些...
数据结构c语言版链表删除重复节点,包含数据类型、结构的定义和函数的实现
c语言实现的静态链表