收录日期:2019/05/21 01:07:24 时间:2016/05/31 07:15:42 标签:C语言
关于构造体有些模糊,希望高手能给出下面这道题的代码以及注解,谢谢,最先给出正确代码及结果的人独得80分。
将下面这个程序修改成以下要求的程序:
1,构造体要拥有名字,住所,生日等member。
2,用到连续list
3,用函数能够实现data的增加和表示。

以下是修改前的代码;
#include<stdio.h>

struct LIST{
int data;
struct LIST *next;
};

struct LIST *add_cell(){
struct LIST *buf;
buf=(struct LIST *)malloc(sizeof(struct LIST));
return(buf);
}

void print_list(struct LIST *start){
struct LIST *buf;
buf=start;
while(buf->next!=NULL){
printf("%d/n",buf->data);
buf=buf->next;
}
}

main(){
struct LIST *start;
struct LIST *buf;
int i;
start=add_cell();
start->next=NULL;
buf=start;
for(i=0;i<100;i++){
buf->data=i*2;
buf->next=add_cell();
buf=buf->next;
buf->next=NULL;
}
print_list(start);
}
楼主不妨将功能再详细的叙述下,给你重写个还方便些的 :))
链表?
#include<stdio.h>
struct LIST
{
    char name[20];
    char abode[40];
    char birthday[10];
    struct LIST *next;
};
void print_list(struct LIST *start)
{
    while(start)
    {
        printf("name      %s\n",start->name);
        printf("birthday  %s\n",start->birthday);
        printf("abode     %s\n\n",start->abode);
        start=start->next;
    }
}
void *add_cell(struct LIST **start)
{
    struct LIST *buf;
    buf=(struct LIST *)malloc(sizeof(struct LIST));
    printf("name      ");
    gets(buf->name);
    printf("birthday  ");
    gets(buf->birthday);
    printf("abode     ");
    gets(buf->abode);
    printf("\n");
    buf->next=*start;
    *start=buf;
}

int main()
{
    struct LIST *start=NULL;
    int i;
    for(i=0;i<100;i++)
        add_cell(&start);
    print_list(start);
    return 0;
}
我有详细的C语言代码联系我
70987369
不是c语言行不行?

-_-
你已经基本上写好了
我帮你修改了一下
/*一个关于结构体的链表结构*/
#include<stdio.h>
//主结构
struct LIST{
char * name;
char * address;
char * birthday;
struct LIST *next;
};

//增加结构体变量
struct LIST *add_cell(){
struct LIST *buf;
buf=(struct LIST *)malloc(sizeof(struct LIST));
return(buf);
}

//打印结构体
void print_list(struct LIST *start){
struct LIST *buf;
buf=start;
while(buf->next!=NULL){
printf("%d/n",buf->data);
buf=buf->next;
}
}

main(){
struct LIST *start;
struct LIST *buf;
int i;
start=add_cell();
start->next=NULL;
buf=start;
for(i=0;i<100;i++){
buf->data=i*2;
buf->next=add_cell();
buf=buf->next;
buf->next=NULL;
}
print_list(start);
}
谢谢各位捧场,对于构造体液稍微熟悉一些了,以后还希望多多关照

高分求PHP数组问题 关于Jbpm4实体扩展属性问题 ===================【520】==========【花花】===================== c# 如何读取USB口的IC 文本内容替换的问题,看清楚了回答,谢谢 PL.SQL.Developer.v7.1.4.1390怎么用 我选我 mingw默认编译目录,急 [已处理]为什么我昨天发的招聘贴成了404? [已处理]下载积分为负了,也不能上传,怎么办 access不匹配的问题 android 2.2 电话本按拼音排序 Gridpanel中加载查询后数据 求一MDX表达式 求助啊 请各位大大看看这是什么问题 谁给我介绍一个PHP视频网站 在水園向兄弟們致歉 gridview 点击详细弹出详细窗口页面问题? html表单在浏览器中运行? Oralce 存储过程Out数组、跟VARRAY(null,null)问题! 关于智能指针的设计问题, 在C#中如何实现WINFORM下远程报表功能 关于多线程中死循环的问题 非模态对话框可以使用定时器吗?如何使用? 取最大值的问题,如何修改sql (vc++)如何将LPWSTR转换成int? 字符串去图片的正则 获取spring 注入对象 Num = InputBox(\"请输入数量\", \"输入数量\", 1) Json接收或者遍历问题