| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 532 人关注过本帖
标题:[求助]请指点小菜一下。
只看楼主 加入收藏
yindan
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2005-11-2
收藏
 问题点数:0 回复次数:3 
[求助]请指点小菜一下。
请高手指点,这个程序题是输入联络人名,电话,地址,然后全部输出来,
输入数据是分开几次输入,但输出是把几次输入的数据一起输出。
本人做了,但现实不到题所说的。高手请指点。
#include <stdio.h>
#include <string.h>
struct tele /*defines the tele*/
{
char name[20];
long int num;
char address[30];
}abc; /*declares a variable*/

main()
{ int choice=1;
{
printf("1 add new subscriber details\n");
printf("2 view directory\n");
printf("3 quit\n");
printf("\n\n Enter choice:");
scanf ("%d",&choice);

if (choice==1)
addsubs();
else if(choice==2)
viewdir();
else if(choice==3)
exit();

}
}

addsubs()
{
FILE *fp;
struct tele abc;
int n;
char flage='y';
if ((fp=fopen("telephone","a"))==NULL)
{printf("\nerror open tele file");
}
while(flage=='y')
{printf(" enter cust name:");
scanf ("%s",&abc.name);
printf(" Enter cust No.:");
scanf("%d",&n);
if (2000000>n||n>2999999)
{printf ("sub tele no. must be between 2000000 and 2999999");
printf(" Enter cust No.:");
scanf("%d",&n);
}
abc.num=n;
printf(" Enter address:");
scanf("%s",&abc.address);
getchar ();
fwrite(&abc,sizeof(struct tele),1,fp);
printf("\n\n continue?(Y/N)");
scanf("%c",&flage);
}

fclose(fp);
}

viewdir()
{ FILE *fp;
char flage='y';
int i;
struct tele abc;
if((fp=fopen("telephone","r"))==NULL)
{ printf("打开文件出错\n");}
for (i=0;i<3;i++)
{fread(&abc,sizeof(struct tele),1,fp);
printf(" The customer name is %s\n",abc.name);
printf(" The customer no is %d\n",abc.num);
printf(" The customer address is %s\n",abc.address);
}
fclose(fp);

}

搜索更多相关主题的帖子: 小菜 
2005-11-02 01:15
ghy2001
Rank: 1
等 级:新手上路
威 望:1
帖 子:87
专家分:0
注 册:2005-10-30
收藏
得分:0 
哎,我的作业也是这个啊,选项=7啊,比你这个还复杂,我也再苦恼呢。

2005-11-02 21:00
楠木头
Rank: 1
等 级:新手上路
帖 子:51
专家分:0
注 册:2005-10-18
收藏
得分:0 
while(flage=='y')
{printf(" enter cust name:");
scanf ("%s",&abc.name);
printf(" Enter cust No.:");
scanf("%d",&n);
if (2000000>n||n>2999999)
{printf ("sub tele no. must be between 2000000 and 2999999");
printf(" Enter cust No.:");
scanf("%d",&n);
有错误!!!!!

2005-11-02 21:01
ghy2001
Rank: 1
等 级:新手上路
威 望:1
帖 子:87
专家分:0
注 册:2005-10-30
收藏
得分:0 
fread(&abc,sizeof(struct tele),1,fp);
for (i=0;i<3;i++)
{
}
可以使用啊,我这里没问题。
我就修改了这个,还+了2个return(1).再你的函数最后。

2005-11-02 21:16
快速回复:[求助]请指点小菜一下。
数据加载中...
 
   



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

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