求助个C的问题

来源:百度知道 编辑:UC知道 时间:2024/05/12 03:30:43
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
struct kk
{char a;
float b;
struct kk *p;
};
typedef struct kk oye;

main()
{oye *p1;
oye *p2;
int i;

p1=(oye*)malloc(sizeof(oye));
if(p1==NULL){printf("oh no!");exit(1);}
p1->p=NULL;
p2=p1;

for(i=0;i<3;i++)
{printf("insert %d num",i+1);
scanf("%c",&p2->a);
printf("insert %d float",i+1);
scanf("%f",&p2->b);
p2->p=(oye*)malloc(sizeof(oye));
p2->p->p=NULL;
p2=p2->p;
}

p2=p1;

for(i=0;i<3;i++)
{printf("%s",p2->a);
printf("%f",p2->b);
p2=p2->p;
}

getch();
}

这个简单的程序错哪了,我没看出来

main函数需要返回值和参数。

参数可以省去,返回值不能省。

bug实在太多,重新写吧,把链表知识好好看看
楼上的别误人子弟好不好,返回值不用写也行
void main()
{
...
}
里面不用加上return

下次问时最好带上你的编译环境。