(顺序存储)比较两个字符串A和B大小,若A>B,返回1,若A<B,返回-1,否则返回0。
#include
#include
#define MAXSIZE 30
typedef char datatype;
typedef struct
{
datatype str[MAXSIZE];
int size;
}sequencelist;
/*初始化*/
void init(sequencelist *data1,sequencelist *data2)
{
data1->size=0;
data2->size=0;
}
/*输入*/
void input(sequencelist *data1,sequencelist *data2)
{
char a[MAXSIZE],b[MAXSIZE];
int i=-1;
printf("请输入A:\n");
gets(a);
do{
i++;
data1->str[i]=a[i];
data1->size++;
}while(a[i]!='\0');
printf("请输入B:\n");
i=-1;
gets(b);
do{
i++;
data2->str[i]=b[i];
data2->size++;
}while(b[i]!='\0');
}
/*比较*/
int compareAB(sequencelist data1,sequencelist data2)
{
int i,j;
if(data1.size>data2.size)j=data1.size;
if(data2.size>data1.size)j=data2.size;
for(i=0;i
data2.str[i])return 1;
}
if(data1.str[i]=='\0'&&data2.str[i]!='\0')return -1;
if(data2.str[i]=='\0'&&data1.str[i]!='\0')return 1;
}
return 0;
}
/*输出*/
void print(sequencelist data1,sequencelist data2,int sign)
{
int i;
switch(sign)
{
case 100:
printf("顺序表A的内容为:\n");
for(i=0; i