激动人心,无法言表!
强烈支持楼主ing……谢谢啊啊
激动人心,无法言表!
真是难得给力的帖子啊。
给力
学习学习看看
来看看咯
C语言版
#include"stdio.h"
#include"stdlib.h"
typedef struct node{
int number;
struct node *next;
}list;
int main()
{
list *head;
list *p, *q;
head = (list *)malloc(sizeof(list));
head->next = NULL;
p = head;
int n;
while (1)
{
scanf_s("%d", &n);
if (n == 0)
break;
else
{
q = (list *)malloc(sizeof(list));
q->number = n;
p->next = q;
p = p->next;
p->next = NULL;
}
}
p = head->next;
int i;
for (i = 0; i < 4; i++)
{
if (p != NULL)
p = p->next;
else
break;
}
if (i < 4)
printf("链表长度不足5,打印失败\n");
else
printf("%d\n", p->number);
while (head != NULL)
{
p = head;
head = p->next;
free(p);
}
}
C++版
#include"iostream"
using namespace std;
typedef struct node{
int number;
struct node *next;
}snode;
class list{
private:
snode *head;
public:
list()
{
head = new snode;
head->next = NULL;
}
void insertnode(int n)
{
snode *p;
snode *q;
p = head;
while (p->next!= NULL) //找到链表结尾
p = p->next;
q = new snode;
q->next = NULL;
q->number = n;
p->next = q;
}
int finddata(int j)
{
int i;
snode *p;
p = head;
for (i = 0; i < j; i++)//找到第j个位置
{
if (p != NULL)
p = p->next;
else
break;
}
if (i < j)
return 0;
else
return p->number;
}
void deletelist()
{
snode *p;
while (head != NULL)
{
p = head;
head = head->next;
delete p;
}
}
};
int main()
{
int n;
list *head;
head = new list;
while (1)
{
cin >> n;
if (n != 0)
{
head->insertnode(n);
}
else
break;
}
n = head->finddata(5);
if (n == 0)
cout << "链表长度不足5,读取失败" << endl;
else
cout << n<<endl;
head->deletelist();
}
{:1_1:}
第一第二还有思路,就是第三问手动的看不懂
强烈支持楼主ing……
zlkxcnz.lkz
楼主加油,鱼C加油!我们都看好你哦!
看看了强烈支持楼主ing……
强烈支持楼主ing……
下载来看看!谢谢!
被甲鱼哥哥的声音吸引了
真是难得给力的帖子啊。
强烈支持楼主ing……