| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2146 人关注过本帖
标题:要编写一个输入学生学号、姓名、性别的程序,并以‘#’结束输入,然后输入学 ...
取消只看楼主 加入收藏
剑侠
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2017-5-13
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:1 
要编写一个输入学生学号、姓名、性别的程序,并以‘#’结束输入,然后输入学号删除该学号同学,要求使用单链表,求大神帮忙看看我的程序错在哪里?
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
typedef char datatype;
struct student{
    char num[10];
    char name[10];
    char sex[5];
};
typedef struct node{
    struct student data;
    struct node *next;
}linklist;
linklist *head;
linklist *creat(){
    linklist *head,*r,*l;
    head=NULL;
    r=NULL;
    while(1){
        char ch;
        l=(linklist*)malloc(sizeof(linklist));
        scanf("%s%s%s",l->data.num,l->data.name,l->data.sex);
        scanf("%c",ch);
        if('ch'=='#')break;
        if(head==NULL)head=l;
        else r->next=l;
        r=l;
    }
    if(r=NULL)r->next=NULL;
    return head;
}
linklist *dele(linklist*head){
    linklist *p,*s;
    p=head;
    s=(linklist*)malloc(sizeof(linklist));
    scanf("%s",s->data.num);
    while(p->next->data.num!=s->data.num){
        p->next=p->next->next;
        if(p->next=NULL)break;
    }
    if(p->next=NULL)printf("该学生不存在");
    p->next=p->next->next;
    return head;
}
linklist *print(linklist*head){
    linklist *p;
    p=head;
    while(p!=NULL){
        printf("%s%s%s",p->data.num,p->data.name,p->data.sex);
    }
}
int main(){
    linklist *l,*k;
    l=creat();
    k=dele(l);
    print(k);
}
搜索更多相关主题的帖子: include 姓名 
2017-05-13 18:14
剑侠
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2017-5-13
收藏
得分:0 
回复 3楼 Emotiona
谢谢指点
2017-05-19 16:52
快速回复:要编写一个输入学生学号、姓名、性别的程序,并以‘#’结束输入,然后 ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.027726 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved