实现线性表(顺序存储)的初始化和打印。
#include <stdio.h>
struct sqList { //静态分配存储空间
int elem[100];
int length;
};
typedef struct sqList SqList; // typedef: 类型定义
void initList(SqList &L);
void inputList(SqList &L);
void printList(SqList L);
int main(void) {
SqList L;
initList(L);
inputList(L);
printList(L);
return 0;
}
void initList(SqList &L) {
}
void inputList(SqList &L) {
}
void printList(SqList L) {
}
输入
第1行:元素个数n
第2行:n个整型元素
输出
见样例
样例输入 Copy
5
5 4 3 7 9
样例输出 Copy
5 4 3 7 9
#include <stdio.h>
#include <stdlib.h>
#define MAXSIZE 100
#define OK 1
#define OVERFLOW -2
typedef int ElemType;
typedef int Status;
typedef struct {
ElemType *elem; //要求在初始化函数中使用动态存储分配方法给elem赋值
int length;
} SqList;
Status initList(SqList &L);
void inputList(SqList &L);
void printList(SqList L);
int main(void) {
SqList L;
initList(L);
inputList(L);
printList(L);
return 0;
}
Status initList(SqList &L) {
L.elem =(ElemType*)malloc(sizeof(ElemType)*MAXSIZE);
if(L.elem ==NULL){
return OVERFLOW;
}
L.length =0;
return OK;
}
void inputList(SqList &L) {
int n,m;
scanf("%d",&n);
for(int i=0;i<n;i++){
scanf("%d",&m);
L.elem[i] =m;
L.length ++;
}
}
void printList(SqList L) {
for(int i=0;i<L.length ;i++)
printf("%d ",L.elem [i]);
}
```c++
#include <stdio.h>
struct sqList { //静态分配存储空间
int elem[100];
int length;
};
typedef struct sqList SqList; // typedef: 类型定义
void initList(SqList &L);
void inputList(SqList &L);
void printList(SqList L);
int main(void) {
SqList L;
initList(L);
inputList(L);
printList(L);
return 0;
}
void initList(SqList &L) {
int x;
scanf("%d",&x);
L.length=x;
}
void inputList(SqList &L) {
int y;
for(int i=0;i<L.length;i++){
scanf("%d",&y);
L.elem[i]=y;
}
}
void printList(SqList L) {
for(int i=0;i<L.length;i++){
printf("%d ",L.elem[i]);
}
}
```