我创建的顺序表为什么创建完之后再主程序中读L.ListLen 值一直是0
typedef struct{Element Data;
intListLen; //数组的长度,数组最后一个元素的下标是Listlen-1
}StaticList;
void Init_StaticList(StaticList L)
{
L.ListLen = 0;
}
void Creat_Buf(StaticList L)
{
Element e;
printf("please inpur data...:\r\n");
scanf("%c",&e);
while('#' != e)
{
L.Data = e;
L.ListLen =L.ListLen +1;
scanf("%c",&e);
}
}
我说你的main函数在哪?
难不成你是老师要学生我们来补全代码的? ba21 发表于 2020-2-15 18:49
我说你的main函数在哪?
难不成你是老师要学生我们来补全代码的?
void Print_Buf(StaticList L)
{
int len;
int i;
len = L.ListLen;
for(i=0; i<len ;i++)
{
printf("%c ",L.Data);
}
}
int main(void)
{
StaticList L;
Init_StaticList(L);
Creat_Buf(L);
printf("\r\n%c",L.Data);
printf("\r\n%d",L.ListLen);
Print_Buf(L);
getchar();
getchar();
return 0;
}
不好意思{:5_109:},遗漏了 Mike_Yu 发表于 2020-2-15 19:38
void Print_Buf(StaticList L)
{
int len;
哎,是说叫你把代码上全。。。 ba21 发表于 2020-2-15 19:44
哎,是说叫你把代码上全。。。
#include<stdio.h>
#include<stdlib.h>
#include<stdbool.h>
#include<math.h>
#include<string.h>
//writing in 2020/2/15/12:38
#define MAXSIZE 100
#define ERROR 0
#define OK 1
typedef char Element;
typedef struct{
Element Data;
intListLen; //数组的长度,数组最后一个元素的下标是Listlen-1
}StaticList;
void Init_StaticList(StaticList L)
{
L.ListLen = 0;
}
void Creat_Buf(StaticList L)
{
Element e;
printf("please inpur data...:\r\n");
scanf("%c",&e);
while('#' != e)
{
L.Data = e;
L.ListLen =L.ListLen +1;
scanf("%c",&e);
}
}
void Print_Buf(StaticList L)
{
int len;
int i;
len = L.ListLen;
for(i=0; i<len ;i++)
{
printf("%c ",L.Data);
}
}
int main(void)
{
StaticList L;
Init_StaticList(L);
Creat_Buf(L);
printf("\r\n%c",L.Data);
printf("\r\n%d",L.ListLen);
Print_Buf(L);
getchar();
getchar();
return 0;
}
{:5_109:}8好意思 Mike_Yu 发表于 2020-2-15 20:01
#include
#include
#include
看样子功底不够扎实。自已看代码理解
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#include<string.h>
//writing in 2020/2/15/12:38
#define MAXSIZE 100
#define ERROR 0
#define OK 1
typedef char Element;
typedef struct{
Element Data;
intListLen; //数组的长度,数组最后一个元素的下标是Listlen-1
}StaticList;
void Init_StaticList(StaticList *L)
{
L->ListLen = 0;
}
void Creat_Buf(StaticList *L)
{
Element e;
printf("please inpur data...:\r\n");
scanf("%c",&e);
while('#' != e)
{
L->Data = e;
L->ListLen =L->ListLen +1;
scanf("%c",&e);
}
}
void Print_Buf(StaticList L)
{
int len;
int i;
len = L.ListLen;
for(i=0; i<len ;i++)
{
printf("%c ",L.Data);
}
}
int main(void)
{
StaticList L;
Init_StaticList(&L);
Creat_Buf(&L);
Print_Buf(L);
getchar();
getchar();
return 0;
} ba21 发表于 2020-2-15 22:01
看样子功底不够扎实。自已看代码理解
#include
#include
我懂辽!谢谢大佬!
页:
[1]