【练习题】编写打印出一个单链表的所有元素的程序【链表】
2014-05-22 22:39
323 查看
只是实现了链表ADT的部分功能。
/*---编写打印出一个单链表的所有元素的程序---*/#include <stdio.h>
#include <stdlib.h>
struct Node{
int val;
struct Node *next;
};
Node *findEnd(Node *list){
while(list->next) list = list->next;
return list;
}
void insert(int val, Node *list){
Node *p = (Node *)malloc(sizeof(Node));
p->val = val; p->next = NULL;
Node *end = findEnd(list);
end->next = p;
}
int main(){
Node *list = (Node *)malloc(sizeof(Node)), *p;
list->next = NULL;
int a;
while(scanf("%d", &a) == 1)
insert(a, list);
p = list->next;
while(p){
printf("%d ", p->val);
p = p->next;
}
return 0;
}
相关文章推荐
- 编写打印一个单链表所有元素的程序
- 编写打印出一个单链表的所有元素的程序
- 编写一个程序,打印长度大于80个字符的所有输入行
- 编写一个Python程序,能在当前目录以及当前目录的所有子目录下查找文件名包含指定字符串的文件,并打印出相对路径
- 编写一个程序,能在当前目录以及当前目录的所有子目录下查找文件名包含指定字符串的文件,并打印出相对路径。
- 练习1-17 编写一个程序,打印长度大于80个字符的所有输入行。
- 编写查找一个单链表特定元素的程序
- 1.编写一个简单的C语言程序:根据输入的两个整数求平均值并且在终端输出,通过gcc编译器得到它的汇编程序文件。 2.编写一个C语言程序:打印输出所有“水仙花数”,用gdb调试程序(给出步骤)。所谓“
- 练习1-17 编写一个程序,打印长度大于80个字符的所有输入行.
- 编写程序将一个list容器的所有元素赋值给一个vector容器。
- 编写程序从标准输入设备读入的元素数据建立一个int型vector对象,然后动态创建与该vector大小一致的数组,把vector对象的所有元素复制给该数组
- 42.编写程序打印所有的“水仙花数”。“水仙花数”指一个三位数,其各位数字立方和等于该数本身,例如153是一个“水仙花数”,因为 153=1×1×1+3×3×3+5×5×5。
- 编写一个程序,一行行地读取输入行,直至到达文件尾。算出每行输入行的长度,然后把最长的那行打印出来。为了简单起见,你可以假定所有的输入行均不超过1000个字符。
- 1.编写一个简单的C语言程序:根据输入的两个整数求平均值并且在终端输出,通过gcc编译器得到它的汇编程序文件。 2.编写一个C语言程序:打印输出所有“水仙花数”,用gdb调试程序(给出步骤)。所谓“
- 一个正整数有可能可以被表示为 m(m>=2) 个连续正整数之和,编写一个程序,输入一个正整数,然后找出符合这种要求的所有 连续正整数序列,若不存在这种序列,则打印None。
- 编写一个程序,一行行地读取输入行,直至到达文件尾。算出每行输入行的长度,然后把最长的那行打印出来。为了简单起见,你可以假定所有的输入行均不超过1000个字符
- C语言程序设计习题1-17 编写一个程序,打印长度大于80个字符的所有输入行
- 编写查找一个单链表特定元素的程序。分别使用递归和非递归方法实现,并比较它们的运行时间。
- 编写程序,使用指针把一个int型数组的所有元素设置为0
- 编写一个程序,一行行地读取输入行,直至到达文件尾。算出每行输入行的长度,然后把最长的那行打印出来。为了简单起见,你可以假定所有的输入行均不超过1000个字符