为什么从网上找的c语言程序在我的vc6.0不可以用

能不能发一个给我249929320的qq邮箱,谢谢
我说的是VC6.0的软件...

我也是初学C语言 以下是我写的链表实现通讯录的代码 希望能共同努力!

#include <stdio.h>
#include <string.h>
#include <malloc.h>
#include <stdlib.h>
#define NULL 0
#define SIZE 100
#define LEN sizeof(struct info)
struct info
{
char name[10];
char sex[10];
char address[20];
char relation[20];
char tel[15];
char emile[20];
struct info *next;
};
struct info *head=NULL;
int count=0;
struct info *create_1(void);
struct info *load(void);
struct info *find(char *p);
int menu_select(void);
void remove_1(struct info *p);
void display_1(struct info *p);
void display_all(void);
void search(void);
void quit(void);
void change(void);
void remove(void);
void save(void);
void create(void);
/*主函数*/
void main()
{
char ch;
head=load();
loop:
switch(menu_select())
{
case 1:display_all();
break;
case 2:create();
break;
case 3:search();
break;
case 4:change();
break;
case 5:remove();
break;
case 6:quit();
break;
}
printf("是否继续操作?\n");
printf("y/n\n");
ch=getchar();
if((ch=getchar())=='y')
{
goto loop;
}
else
{
quit();
}
}
/*从文档调用所有名片放入结构体链表中*/
struct info *load(void)
{
int i;
struct info *p1,*p2,*p0;
FILE *fp;
if((fp=fopen("info.txt","r"))==NULL)
{
fp=fopen("info.txt","w");
}
p1=(struct info *)malloc(LEN);
if(!fread(p1,LEN,1,fp))
{
head=NULL;
}
else
{
head=p1;
count++;
p0=(struct info *)malloc(LEN);
head->next=p0;
for(i=0;i<SIZE;i++)
{
if(fread(p0,LEN,1,fp))
{
p2=(struct info *)malloc(LEN);
p0->next=p2;
p0=p2;
count++;
}
else
{
p0=NULL;
break;
}
}
}
return(head);
}
/*菜单选择函数*/
int menu_select(void)
{
int a;
printf("<<<欢迎进入名片系统!>>>\n");
printf("请选择你要进行的操作:\n");
printf("1 查看名片.\n");
printf("2 创建新名片.\n");
printf("3 搜索名片.\n");
printf("4 修改名片.\n");
printf("5 删除名片.\n");
printf("6 退出名片系统.\n");
scanf("%d",&a);
return(a);
}
/*创建一个新的名片*/
struct info *create_1(void)
{
struct info *p1;
p1=(struct info *)malloc(LEN);
printf("请输入姓名:\n");
scanf("%s",p1->name);
printf("请输入性别:\n");
scanf("%s",p1->sex);
printf("请输入家庭住址:\n");
scanf("%s",p1->address);
printf("请输入关系:\n");
scanf("%s",p1->relation);
printf("请输入电话号码:\n");
scanf("%s",p1->tel);
printf("请输入电子邮件:\n");
scanf("%s",p1->emile);
count++;
return(p1);
}
/*显示新创建的名片*/
void create(void)
{
struct info *p,*p1;
int i;
p=create_1();
p1=head;
if(p1==NULL)
{
head=p;
p->next=NULL;
}
else if(p1->next==NULL)
{
p1->next=p;
p->next=NULL;
}
else
{
for(i=1;i<count-1;i++)
{
p1=p1->next;
}
p1->next=p;
p->next=NULL;
}
display_1(p);
printf("共有%d个名片信息!\n",count);
}
/*显示一个名片*/
void display_1(struct info *p)
{
printf("姓名:%s\n",p->name);
printf("性别:%s\n",p->sex);
printf("家庭住址:%s\n",p->address);
printf("关系:%s\n",p->relation);
printf("电话号码:%s\n",p->tel);
printf("电子邮件:%s\n",p->emile);
printf("\n\n");
}
/*显示所有名片*/
void display_all(void)
{
int i;
struct info *p;
p=head;
for(i=0;i<count;i++)
{
printf("第%d个名片的信息是:\n",i);
display_1(p);
p=p->next;
}
}
/*找到一个名片*/
struct info *find(char *p)
{
struct info *p1;
p1=head;
while(p1)
{
if(!strcmp(p,p1->name))
{
break;
}
else
{
p1=p1->next;
}
}
return(p1);
}
/*查询一个名片*/
void search(void)
{
char name[30],ch;
struct info *info;
loop_1:
printf("请输入您要查询名片的姓名:\n");
scanf("%s",name);
if((info=find(name))==NULL)
{
printf("对不起,没有您要找的人!\n");
printf("是否继续查询?\n");
printf("y/n?\n");
ch=getchar();
if((ch=getchar())=='y')
{
goto loop_1;
}
}
else
{
display_1(info);
}
}
/*修改一个名片内容*/
void change(void)
{
char name[10],ch;
int a;
struct info *info;
loop_1:
printf("请输入您要修改名片的姓名:\n");
ch=getchar();
scanf("%s",name);
if((info=find(name))==NULL)
{
printf("对不起,没有您要找的人!\n");
printf("是否继续查询?\n");
printf("y/n?\n");
ch=getchar();
if((ch=getchar())=='y')
{
goto loop_1;
}
}
else
{
display_1(info);
}
loop_2:
printf("请输入您要修改的内容:\n");
printf("1 姓名\n");
printf("2 性别\n");
printf("3 地址\n");
printf("4 关系\n");
printf("5 电话\n");
printf("6 邮箱\n");
printf("请选择:\n");
scanf("%d",&a);
switch(a)
{
case 1:printf("请输入新的姓名:\n");
scanf("%s",info->name);
break;
case 2:printf("请输入新的性别:\n");
scanf("%s",info->sex);
break;
case 3:printf("请输入新的地址:\n");
scanf("%s",info->address);
break;
case 4:printf("请输入新的关系:\n");
scanf("%s",info->relation);
break;
case 5:printf("请输入新的电话:\n");
scanf("%s",info->tel);
break;
case 6:printf("请输入新的邮箱:\n");
scanf("%s",info->emile);
break;
default:printf("输入错误!\n");
}
printf("是否继续修改同一个名片?\n");
printf("y/n?\n");
ch=getchar();
if((ch=getchar())=='y')
{
goto loop_2;
}
else
{
printf("是否继续修改其他名片?\n");
printf("y/n?\n");
}
ch=getchar();
if((ch=getchar())=='y')
{
goto loop_1;
}
}
/*删除一个名片*/
void remove_1(struct info *p)
{
struct info *p1,*p2;
int i;
if(p->name==head->name)
{
head=p->next;
count--;
}
else if(p->next==NULL)
{
p=NULL;
count--;
}
else
{
p1=p2=head;
for(i=0;i<count;i++)
{
p2=p1;
p1=p1->next;
if(p1->name==p->name)
{
p1=p1->next;
p2->next=p1;
count--;
break;
}
}
}
}
/*删除需要删除的名片*/
void remove(void)
{
char name[10],ch;
int a;
struct info *info;
loop_1:
printf("请输入您要删除名片的姓名:\n");
ch=getchar();
scanf("%s",name);
if((info=find(name))==NULL)
{
printf("对不起,没有您要找的人!\n");
printf("是否继续查询?\n");
printf("y/n?\n");
ch=getchar();
if((ch=getchar())=='y')
{
goto loop_1;
}
}
else
{
display_1(info);
}
printf("确定要删除么?\n");
printf("y/n?\n");
ch=getchar();
if((ch=getchar())=='y')
{
remove_1(info);
printf("删除成功!\n");
}
printf("还需要继续删除么?\n");
printf("y/n?\n");
ch=getchar();
if((ch=getchar())=='y')
{
goto loop_1;
}
}
/*将名片存入文档*/
void save(void)
{
FILE *fp;
struct info *p;
int i;
if((fp=fopen("info.txt","w"))==NULL)
{
printf("无法打开文件!\n");
exit(0);
}
p=head;
for(i=0;i<count;i++)
{
fwrite(p,LEN,1,fp);
p=p->next;
}
fclose(fp);
}
/*退出函数*/
void quit(void)
{
void save(void);
char ch;
printf("是否保存您的操作?\n");
printf("y/n?\n");
ch=getchar();
if((ch=getchar())=='y')
{
save();
printf("已储存!\n");
}
printf("感谢您使用名片系统!再见!\n");
}
/*名片管理系统*/
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-04-13
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
void main()
{
float a[40];
int i,j;
srand(time(0));
for(i=0;i<12;i++)
a[i]=(float)(rand()%10000)/10000;
for(j=0;j<12;j++)
printf("%f\n",a[j]);

}
这是一个输出十个随机数的程序

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网