冀金伟 2013-12-24 08:24 采纳率: 50%
浏览 1900
已采纳

求修改!!帮忙看看那里错了谢谢

#include
#include
#define TER sizeof(STD);
typedef
struct
{
char name[20];
int num;
double score;
struct *next;
}STD;
STD *cha(); //创建链表
void *print(STD*head); //打印链表
int n;

void main()
{
STD *sub;
sub=cha();
print(sub);
}
STD * cha()
{
STD *head;
STD *p1,*p2;

p1 = p2 =(STD*)malloc(TER);
printf("输入姓名:");
scanf("%s",p1->name);
printf("输入学号");
scnaf("%d",p1->num);
printf("输入成绩:");
scanf("%lf",p1->score);

head=NULL;
n=0;

while(p1->num!=0)
{
    n++;
    if(n == 1)
    {
        head=p1;
    }
    else
    {
        p2->next=p1;
    }
}
p2->next=NULL;
return head;

}

void print(STD*head)
{
STD *p;
printf("一共%d人",d);
*P=head;
if(head)
{
do
{
printf("姓名是%s的成绩是%d:",p->name,p->score);
p->next;
}while(p!=NULL);
}
}

  • 写回答

2条回答

  • piao_z 2013-12-24 09:47
    关注

    错误有点多哦.....有些都看不懂你要干什么:
    1、头文件包含看不到是什么
    #inclued <stdio.h>
    #include<stdlib.h>
    2、先取名字,再用类型
    typedef
    struct STDSTRU
    {
    char name[20];
    int num;
    double score;
    STDSTRU *next;
    }STD;
    3、函数名写错了
    printf("输入姓名:");
    scanf("%s",p1->name);
    printf("输入学号");
    scnaf("%d",p1->num);//scanf(),函数名写错了
    printf("输入成绩:");
    scanf("%lf",p1->score);
    4、变量名大小写混乱
    5、未定义变量
    STD p;
    printf("一共%d人",d);//后面的参数d没定义,不知道要输出什么
    *P=head;//定义的小写,这里应该是小写p=head,且指针赋值不用带 * 号,
    号就是解引用了

    这些都是语法错误。。可能还有别的语法错误,我没编译。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 用三极管设计一个单管共射放大电路
  • ¥20 fluent无法启动
  • ¥15 孟德尔随机化r语言运行问题
  • ¥15 pyinstaller编译的时候出现No module named 'imp'
  • ¥15 nirs_kit中打码怎么看(打码文件是csv格式)
  • ¥15 怎么把多于硬盘空间放到根目录下
  • ¥15 Matlab问题解答有两个问题
  • ¥15 LCD12864中文显示
  • ¥15 在使用CH341SER.EXE时不小心把所有驱动文件删除了怎么解决
  • ¥15 gsoap生成onvif框架