2 never setttle Never_Setttle 于 2016.03.19 11:42 提问

小白刚学数据结构,有问题请教,求大神解答

请大神帮我看一下代码有什么问题,我一直找不出问题在哪里
#include
#include
#include

#define maxsize 100;
typedef char datetype;
typedef struct
{
datetype date[maxsize];
int len;
}sq;
void creatlist(sq *L)
{
int n;
int i;
char tmp;
printf("请输入一个数字给n:");
scanf("%d", &n);
for (i = 0;i < n;i++)
{
printf("date[%d]=", i);
fflush(stdin);
scanf("%c", &tmp);
L->date[i] = tmp;
}
L->len = n - 1;
printf("\n");
}
void printout(sq *L)
{
int i;
for (i = 0;i <= L->len;i++)
{
printf("date[%d]=", i);
printf("%c\n", L->date[i]);
}
}
void main()
{
sq *L;
char cmd, x;
L = (sq *)malloc(sozeof(sq));
creatlist(L);
printout(L);
system("pause");

}

1个回答

oiu1010110
oiu1010110   2016.03.19 12:04
已采纳

// #define maxsize 100 后面没有分号
// L = (sq *)malloc(sizeof(sq)); 你写错了sizeof

#include<stdio.h>
#include<stdlib.h>
#define maxsize 100
typedef char datetype;
typedef struct
{
    datetype date[maxsize];
    int len;
}sq;
void creatlist(sq *L)
{
int n;
int i;
char tmp;
printf("请输入一个数字给n:");
scanf("%d", &n);
for (i = 0;i < n;i++)
{
printf("date[%d]=", i);
fflush(stdin);
scanf("%c", &tmp);
L->date[i] = tmp;
}
L->len = n - 1;
printf("\n");
}
void printout(sq *L)
{
int i;
for (i = 0;i <= L->len;i++)
{
printf("date[%d]=", i);
printf("%c\n", L->date[i]);
}
}
void main()
{
sq *L;
char cmd, x;
L = (sq *)malloc(sizeof(sq));
creatlist(L);
printout(L);
system("pause");
}
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!