郁闷!
题目:编写通讯录管理程序
每个人有姓名、电话、移动电话、邮编和通讯地址信息
可以存储50个人的信息
要求1:提供录入、删除、修改和查询的功能
2。删除、修改和查询的时候提示用户输入姓名,找到对应位置后进行相关操作
我写的程序如下:但是有问题,每当输入一个名字时(执行函数语句),总是显示"无此人";琢磨了半天,不解?郁闷!望大虾们指点(若有好的方法,不要保留哦!)!不甚感激!!!
# include <stdio.h>
# include <string.h>
# define N 4 /* 可依据需要决定 */
int showmenu() /* 打印菜单 */
{ int i,j;
for(i=0;i<=24;i++)
printf("\n");
do{
printf( "************************************\n ");
printf( "1---录入 \n ");
printf( "2---删除 \n ");
printf( "3---修改 \n ");
printf( "4---查询 \n ");
printf( "5---退出 \n ");
printf( "*************************************\n");
printf( "please choose 1,2 ,3, or 5: \n ");
scanf("%d",&j);
}while(j>5||j<1);
return (j);
}
struct student
{char name[10];
long phone;
long mobile;
long mail;
char addr[30];
};
void adding(struct student stu[]) /*录入*/
{
int i ;
for(i=0;i<N;i++)
{
printf( "plaese input name \n ");
fflush(stdin);
gets(stu->name);
printf( "plaese input phone number: \n");
scanf( "%ld",&stu->phone);
printf( "plaese input mobile number: \n ");
scanf( "%d",&stu->mobile );
printf( "plaese input mail number: \n ");
scanf( "%ld",&stu->mail);
printf( "plaese input adderess: \n ");
fflush(stdin);
gets(stu->addr);
}
}
int dismiss(struct student stu[]) /*删除*/
{ char str[10];int i;
printf("please input his(her) name:");
fflush(stdin);
gets(str);
for(i=0;i<N-1;i++)
{ if (strcmp(str,stu[i].name)==0)
{strcpy(stu[i].name,stu[i+1].name);
stu[i].phone=stu[i+1].phone;
stu[i].mail=stu[i+1].mail;
strcpy( stu[i].addr,stu[i+1].addr);
}
else
return (-1);
}
if(strcmp(str,stu[N-1].name)==0)
{strcpy(stu[N-1].name, " ");
stu[i].phone=0;
stu[i].mail=0;
strcpy( stu[N-1].addr," ");
}
;
return 0;
}
int modify(struct student stu[]) /*修改*/
{ int i; char str[10];
printf( "please input his(her) name: ");
fflush(stdin);
gets(str);
for(i=0;i<N;i++)
{ if (strcmp(str,stu[i].name)==0)
{
printf( "plaese input a new phone number: \n ");
scanf( "%d",&stu[i].phone);
printf( "plaese input a new mobile number: \n ");
scanf( "%d",&stu[i].mobile );
printf( "plaese input a new mail number: \n ");
scanf( "%d",&stu[i].mail );
printf( "plaese input a new adderess: \n ");
fflush(stdin);
gets(stu[i].addr);
}
else
return (-1);
}
return 0;
}
int search(struct student stu[]) /*查询*/
{ int i; char str[10];
printf("please input his(her) name:");
fflush(stdin);
gets(str);
for(i=0;i<N;i++)
{ if (strcmp(str,stu[i].name)==0)
printf("name:%s\tphone:%ld\tmobile:%ld\tmail:%ld\taddress:%s\n",stu[i].name,stu[i].phone,stu[i].mobile,stu[i].mail,stu[i].addr);
else return -1;
}
return 0;
}
main()
{int x,y;struct student stu[N];
struct student *p;
p=stu;
do
{x=showmenu();
switch (x)
{case 1: adding(p);break;
case 2: y=dismiss(p);
if(y==-1)
printf("无此人\n");
break;
case 3: y=modify(p) ;
if(y==-1)
printf("无此人\n");
break;
case 4: y=search(p);
if(y==-1)
printf("无此人\n");
break;
}
}while(x!=5);
}
每个人有姓名、电话、移动电话、邮编和通讯地址信息
可以存储50个人的信息
要求1:提供录入、删除、修改和查询的功能
2。删除、修改和查询的时候提示用户输入姓名,找到对应位置后进行相关操作
我写的程序如下:但是有问题,每当输入一个名字时(执行函数语句),总是显示"无此人";琢磨了半天,不解?郁闷!望大虾们指点(若有好的方法,不要保留哦!)!不甚感激!!!
# include <stdio.h>
# include <string.h>
# define N 4 /* 可依据需要决定 */
int showmenu() /* 打印菜单 */
{ int i,j;
for(i=0;i<=24;i++)
printf("\n");
do{
printf( "************************************\n ");
printf( "1---录入 \n ");
printf( "2---删除 \n ");
printf( "3---修改 \n ");
printf( "4---查询 \n ");
printf( "5---退出 \n ");
printf( "*************************************\n");
printf( "please choose 1,2 ,3, or 5: \n ");
scanf("%d",&j);
}while(j>5||j<1);
return (j);
}
struct student
{char name[10];
long phone;
long mobile;
long mail;
char addr[30];
};
void adding(struct student stu[]) /*录入*/
{
int i ;
for(i=0;i<N;i++)
{
printf( "plaese input name \n ");
fflush(stdin);
gets(stu->name);
printf( "plaese input phone number: \n");
scanf( "%ld",&stu->phone);
printf( "plaese input mobile number: \n ");
scanf( "%d",&stu->mobile );
printf( "plaese input mail number: \n ");
scanf( "%ld",&stu->mail);
printf( "plaese input adderess: \n ");
fflush(stdin);
gets(stu->addr);
}
}
int dismiss(struct student stu[]) /*删除*/
{ char str[10];int i;
printf("please input his(her) name:");
fflush(stdin);
gets(str);
for(i=0;i<N-1;i++)
{ if (strcmp(str,stu[i].name)==0)
{strcpy(stu[i].name,stu[i+1].name);
stu[i].phone=stu[i+1].phone;
stu[i].mail=stu[i+1].mail;
strcpy( stu[i].addr,stu[i+1].addr);
}
else
return (-1);
}
if(strcmp(str,stu[N-1].name)==0)
{strcpy(stu[N-1].name, " ");
stu[i].phone=0;
stu[i].mail=0;
strcpy( stu[N-1].addr," ");
}
;
return 0;
}
int modify(struct student stu[]) /*修改*/
{ int i; char str[10];
printf( "please input his(her) name: ");
fflush(stdin);
gets(str);
for(i=0;i<N;i++)
{ if (strcmp(str,stu[i].name)==0)
{
printf( "plaese input a new phone number: \n ");
scanf( "%d",&stu[i].phone);
printf( "plaese input a new mobile number: \n ");
scanf( "%d",&stu[i].mobile );
printf( "plaese input a new mail number: \n ");
scanf( "%d",&stu[i].mail );
printf( "plaese input a new adderess: \n ");
fflush(stdin);
gets(stu[i].addr);
}
else
return (-1);
}
return 0;
}
int search(struct student stu[]) /*查询*/
{ int i; char str[10];
printf("please input his(her) name:");
fflush(stdin);
gets(str);
for(i=0;i<N;i++)
{ if (strcmp(str,stu[i].name)==0)
printf("name:%s\tphone:%ld\tmobile:%ld\tmail:%ld\taddress:%s\n",stu[i].name,stu[i].phone,stu[i].mobile,stu[i].mail,stu[i].addr);
else return -1;
}
return 0;
}
main()
{int x,y;struct student stu[N];
struct student *p;
p=stu;
do
{x=showmenu();
switch (x)
{case 1: adding(p);break;
case 2: y=dismiss(p);
if(y==-1)
printf("无此人\n");
break;
case 3: y=modify(p) ;
if(y==-1)
printf("无此人\n");
break;
case 4: y=search(p);
if(y==-1)
printf("无此人\n");
break;
}
}while(x!=5);
}
...全文
相关推荐
郁闷!ionic中获取ng-model绑定的值为undefined如何解决
很是郁闷!ionic中获取ng-model绑定的值为undefined,如何解决?
pdg文件阅读器-BXViewer
找了好几个PDG文件阅读器,都是人人网打包的min PDGreader,不光是广告,还有病毒,郁闷死。 终于找到box view和PdgThumbViewer,共享一下,让大家不要再郁闷了! box view,很不错,文件不大,但功能很全,但美中不足有时打开文件会出现黑条…… PdgThumbViewer,这个不错,够小,够简单。但就是没有放大缩小的功能,好在能全屏,凑合用好了!
TCP/IP详解全集part3
第三部分,没办法,我只能上传20,郁闷啊!这个资料很经典,希望大家喜欢!
function list unicode for notepad++
最近用上了nodepad++ 5.x,很不错。可是最新版是unicode版的,它自带的function list是ansi版本,装不上,郁闷!找了好久,终于找一个。结果那个网址被封!进不去!又闷坏了。最后发现,google它有一个网页快照,于是我进去了,然后,找到了这个dll的下载地址!于是我就去下载了!估计有很多人也需要,所以我在这里共享了!顺便收取一点资源分,这样我也可以下载别人的共享了!谢谢!
CSDN页面
右边遮住,怎么看啊,要是想放大字体看网页,更郁闷!


