70,037
社区成员
发帖
与我相关
我的任务
分享#include <stdio.h>
#include <stdlib.h>
struct pbook
{
char name[10];
char pnum[11];
struct pbook *next;
};
int n=0;
struct pbook *creat(void)
{
struct pbook *head = NULL, *p1, *p2;
p1 = p2 = (struct pbook *)malloc(sizeof(struct pbook));
do
{
printf("请输入姓名:");
p1->name[0]=getchar(); //修改的部分
if ('\n'==p1->name[0]) //
{ //
free(p1); //
break; //
} //
scanf("%s", &p1->name[1]);
printf("请输入电话:");
scanf("%s", p1->pnum);
n = n + 1;
if (n == 1)
head = p1;
else
{
p2->next = p1;
p2 = p1;
}
p1 = (struct pbook *)malloc(sizeof(struct pbook));
getchar(); //修改的部分:添加了一句
}while(1);
p2->next = NULL;
return (head);
}
void print(struct pbook *head)
{
struct pbook *p;
printf("电话薄中总共有%d条记录\n",n);
p = head;
while (p != NULL)
{
printf("%s,%s\n", p->name, p->pnum);
p = p->next;
}
}
int main(void)
{
struct pbook *p;
p = creat();
print(p);
return 0;
}
#include <stdio.h>
#include <stdlib.h>
struct pbook
{
char name[10];
char pnum[11];
struct pbook *next;
};
int n=0;
struct pbook *creat(void)
{
struct pbook *head = NULL, *p1, *p2;
p1 = p2 = (struct pbook *)malloc(sizeof(struct pbook));
do
{
printf("请输入姓名:");
scanf("%s", p1->name);
if (!strcmp(p1->name, "-1")) break;
printf("请输入电话:");
scanf("%s", p1->pnum);
n = n + 1;
if (n == 1)
head = p1;
else
{
p2->next = p1;
p2 = p1;
}
p1 = (struct pbook *)malloc(sizeof(struct pbook));
}while(1);
p2->next = NULL;
return (head);
}
void print(struct pbook *head)
{
struct pbook *p;
printf("电话薄中总共有%d条记录\n",n);
p = head;
while (p != NULL)
{
printf("%s,%s\n", p->name, p->pnum);
p = p->next;
}
}
int main(void)
{
struct pbook *p;
p = creat();
print(p);
return 0;
}
#include <stdio.h>
#include <stdlib.h>
struct pbook
{
char name[10];
char pnum[11];
struct pbook *next;
};
int n=0;
struct pbook *creat(void)
{
struct pbook *head = NULL, *p1, *p2;
p1 = p2 = (struct pbook *)malloc(sizeof(struct pbook));
printf("请输入姓名:");
scanf("%s", p1->name);
printf("请输入电话:");
scanf("%s", p1->pnum);
while (strcmp(p1->name, "-1")) /*字符串要用strcmp函数比较,这里用名字为-1退出*/
{
n = n + 1;
if (n == 1)
head = p1;
else
{
p2->next = p1;
p2 = p1;
}
p1 = (struct pbook *)malloc(sizeof(struct pbook));
printf("请输入姓名:");
scanf("%s", p1->name);
printf("请输入电话:");
scanf("%s", p1->pnum);
}
p2->next = NULL;
return (head);
}
void print(struct pbook *head)
{
struct pbook *p;
printf("电话薄中总共有%d条记录\n",n);
p = head;
while (p != NULL)
{
printf("%s,%s\n", p->name, p->pnum);
p = p->next;
}
}
int main(void)
{
struct pbook *p;
p = creat();
print(p);
return 0;
}