| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 347 人关注过本帖
标题:请问: 这个程序运行怎么的!前面能运行,后面就不行了!
取消只看楼主 加入收藏
ye123
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2010-3-16
结帖率:0
收藏
 问题点数:0 回复次数:0 
请问: 这个程序运行怎么的!前面能运行,后面就不行了!
#include <stdio.h>                                    /*使用printf要包含的头文件*/
#include <conio.h>                                    /*使用getch要包含的头文件*/
#define NUM 2
typedef struct                                         /*声明结构体person*/
{
    char name[20];                                        /*姓名信息*/
    int age;                                            /*年龄信息*/
    char email[50];                                        /*电子邮件信息*/
}person,person2;
void getInfo(person* pInfo)                                /*读取用户输入到结构体中*/
{
    printf("请输入姓名:");
    gets(pInfo->name);
    printf("请输入年龄:");
    scanf("%d",&pInfo->age);
    getchar();                                            /*从输入缓冲区中抛掉换行符*/
    printf("请输入电子邮件:");
    gets(pInfo->email);
}
void display(person2 p1)                               /*显示人员信息的函数*/
{
    printf("Name:%s\n",p1.name);
    printf("Age:%d\n",p1.age);
    printf("Email:%s\n",p1.email);
}
void main(void)                                            /*主函数*/
{
    person People[NUM];                                    /*声明结构体数组People*/
/*声明创建字符数组,用以保存文件位置*/
    char FileA[50];                                    
    printf("保存在哪个文件?\n");                        /*提示用户输入读取位置*/
    gets(FileA);
    FILE* fpO=NULL;                                          /*声明文件指针fpO,输出用*/
/*以文本只写方式打开FileA指定的文件*/
    fpO=fopen(FileA,"wt");                           
    if(fpO==NULL)                                       /*防错处理,判断打开是否成功*/
    {
        printf("输入文件打开失败,请检查");
        exit(0);
    }
    for(int i=0;i<NUM;i++)
    {
        getInfo(&People[i]);                            /*获取用户输入*/
/*将当前person结构体变量占据的一块内存写入文件中*/
        if(fwrite(&People[i],sizeof(person),1,fpO)==0)        
        {
            printf("块写入失败");
            exit(0);
        }
    }
    printf("块写入成功");
    fclose(fpO);                                        /*关闭文件*/
   
    printf("*********************************************************************");
   
        person2 People2[NUM];                            /*声明结构体数组People*/
/*声明创建字符数组,用以保存文件位置*/
    char FileB[50];                                    
    printf("从哪个文件中读取?\n");                        /*提示用户输出读取位置*/
    gets(FileB);
    FILE* fpI=NULL;                                        /*声明文件指针fpO,输出用*/
/*以文本只写方式打开FileA指定的文件*/
    fpI=fopen(FileB,"rt");                           
    if(fpI==NULL)                                        /*防错处理,判断打开是否成功*/
    {
        printf("输出文件打开失败,请检查");
        exit(0);
    }
    for(int j=0;j<NUM;j++)
    {
    /*从文件中读取内容到people中*/
        if(fread(&People2[j],sizeof(person2),1,fpI)==0)        
        {
            printf("块读出失败");
            exit(0);
        }
    }
    fclose(fpI);                                      /*关闭文件*/
    getch();                                          /*等待,按任意键结束*/
}
搜索更多相关主题的帖子: 运行 
2010-03-24 11:36
快速回复:请问: 这个程序运行怎么的!前面能运行,后面就不行了!
数据加载中...
 
   



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

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