这个星期花在C语言学习上的时间比上周短了些,一是因为期末考试的原因,我必须花部分时间来补一补我的数学和英语;二是因为这个星期忙于星期六的考试(虽然因为注册的原因,我并没有去参加考试),我并没有去学习新知识,最多也是初步了解了链表的使用,但是对于具体题型的运用,确实还不是很熟练。
下一周我会争取完成链表的习题,争取初步掌握链表的运用,不能像这一周一样,把时间花在固定的几门课程上,我在学习C语言的过程中还会兼顾数学和英语,保证各个学科不落下。
这是这一周下来我通过听课学会的一道关于链表的倒序的题目:
7-7 链表的逆置
输入若干个不超过100的整数,建立单链表,然后将链表中所有结点的链接方向逆置,要求仍利用原表的存储空间。输出逆置后的单链表。
输入格式:
首先输入一个整数T,表示测试数据的组数,然后是T组测试数据。每组测试数据在一行上输入数据个数n及n个不超过100的整数。
输出格式:
对于每组测试,输出逆置后的单链表,每两个数据之间留一个空格。
输入样例:
1 11 55 50 45 40 35 30 25 20 15 10 5输出样例:
5 10 15 20 25 30 35 40 45 50 55
#include#include typedef struct node { int d; struct node*next; }Node; Node*head,*p,*r; int n; int m; int flag=0; void creat_linklist() { head=(Node*)malloc(sizeof(Node)); head->next=NULL; for(int i=0;i d); r->next=head->next; head->next=r; flag++; } } int main() { scanf("%d",&m); for(int i=0;i next; while(p!=NULL) { Node*q=NULL; q=p; printf("%d",p->d); flag--; if(flag!=0) printf(" "); p=p->next; free(q); } printf("n"); } free(head); return 0; }



