注:下面建立的链表存储的是26个字母及其序号
#include <stdio.h> struct alphabet { int a; char b; struct alphabet *next; //将下一个结点的起始地址赋值给该结点的next成员 }s[26],*head; //head用于存放第一个结点的起始地址 int main() { int i,m=1,n=97; //为下面赋值做准备 m表示序号 n表示当前字母的ASCII码 head=&s[0]; s[25].next=NULL; //最后一个结点的next成员不存放地址 for(i=0;i<26;i++) //赋值 { s[i].a=m++; s[i].b=n++; if(i!=0 || i!=25) s[i].next=&s[i+1]; } do //输出该表 { printf("%d %c\n",head->a,head->b); head=head->next; }while(head!=NULL); return 0; }
运行结果: