这是一个很简单的程序,但是写的过程中费了好大劲,主要是因为道行不深。
①:构造线性表:
1 typedef struct 2 { 3 int elem[maxsize]; 4 int last; 5 }seqlist;
②:分配空间:
la=(seqlist *)malloc(sizeof(seqlist)); //分配空间
③:输入数据:
for(i=0;i<la->last;i++) { scanf("%d",&la->elem[i]); //设置值 不要忘记&符号 }
整个程序如下:
#include <stdio.h> #include <stdlib.h> #define maxsize 1024 typedef struct { int elem[maxsize]; int last; }seqlist; int main() { int len,i,j; seqlist *la; la=(seqlist *)malloc(sizeof(seqlist)); //分配空间 printf("请输入字符串的长度:"); scanf("%d",&len); la->last=len; //设置线性表的长度 printf("请依次输入数:"); for(i=0;i<la->last;i++) { scanf("%d",&la->elem[i]); //设置值 不要忘记&符号 } printf("输入的数字如下:"); for(j=0;j<la->last;j++) //输出数据 { printf("%d \n",la->elem[j]); } }