| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 237 人关注过本帖
标题:C语言的变成问题 和链表有关哈
只看楼主 加入收藏
提岛
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2010-6-30
收藏
 问题点数:0 回复次数:0 
C语言的变成问题 和链表有关哈
请问这个程序要怎么改才比较好用额...
一个问题是输入函数 我最后打"0"了 但是 它也不结束   
还有一个就是   说主函数里面  我调用的时候有问题  不会改了
实现的情况就是  输入姓名 电话号码还有地址  然后  最后会出现和通讯录的列表  就是这样  

#include<stdio.h>
#include<malloc.h>
#define NULL 0
#define LEN sizeof(struct linkman)
struct linkman  //联系人结构体
{
 char name[20];  //姓名
 long num;      //电话号码
 char add[100];//地址
 struct linkman * next;
};
int n;
struct linkman * creat(void)  //创建空间(联系人)的函数
{
 struct linkman * head;
 struct linkman * p1,* p2;
 n=0;
 p1=p2=(struct linkman *)malloc(LEN);
 printf("Add linkman's name telephone number and address please!\n");
 scanf("%s,%ld,%s",p1->name,&p1->num,p1->add);
 head=NULL;
 while(p1->name!=0)
 {
  n=n+1;
  if(n==1)head=p1;
  else p2->next=p1;
  p2=p1;
  p1=(struct linkman *)malloc(LEN);
  scanf("%s,%ld,%s",p1->name,&p1->num,p1->add);
 }
 p2->next=NULL;
 return(head);
}
void print(struct linkman * head)  //输出结果的函数
{
 struct linkman * p;
 printf("**->address book<-**\n");
 p=head;
 if(head!=NULL)
  do{
   printf("%s,%ld,%s\n",p->name,p->num,p->add);
   p=p->next;
  }while(p!=NULL);
}
void main()
{
 creat();
 print();
}
搜索更多相关主题的帖子: 链表 C语言 
2010-06-30 18:36
快速回复:C语言的变成问题 和链表有关哈
数据加载中...
 
   



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

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