标题:现在想将一个txt格式的文件存在一个结构体中,再已特定格式输出,写的程序如 ...
只看楼主
小猪子
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2012-12-3
结帖率:75%
已结贴  问题点数:20 回复次数:5 
现在想将一个txt格式的文件存在一个结构体中,再已特定格式输出,写的程序如下所示,但没出来结果,求指点
程序如下:
#include <iostream>
#include<string>
#include<fstream>
using namespace std;
#define N 40
struct student
{
    int no;
    unsigned long classno;
    string name;
    string banji;
    string title;
    string teacher;
};
int main()
{
    struct student stu[N];
    ifstream fin("c:\\arange.txt");
    if (!fin)
    {
        cout<<"File open error!"<<endl;
        return 1;
    }
    int i;
    for(i=0;i<N;i++)
    {
        fin>>stu[i].no;
        fin>>stu[i].classno;
        fin>>stu[i].name;
        fin>>stu[i].banji;
        fin>>stu[i].title;
        fin>>stu[i].teacher;
    }
    for(int i=0;i<N;i++)
    {
        printf("----------------------------------------------------\n");
        printf( " |%10s|%30s|%20s| \n" ,stu[i].name,stu[i].title,stu[i].teacher ) ;

    }
    fin.close();
    system( "pause ");
    return 0;
}
输出的特定格式为第一行为姓名,题目,指导老师。然后空十行,再输出第二组数据。
Txt文件格式如下:
1 081041302 陈一 081041C 基于平面图像的立体产品展示系统的建立 张晓明
2 081041416 李四 081041D 虚拟楼盘展示在SketchUp上的设计与实现 胡静
搜索更多相关主题的帖子: teacher include return 
2012-12-03 10:45
mmmmmmmmmmmm
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:8
帖 子:388
专家分:1809
注 册:2012-11-2
得分:20 
程序代码:
#include <iostream>
#include <iomanip>
#include<string>
#include<fstream>
using namespace std;
#define N 40
struct student
{
    int no;
    unsigned long classno;
    string name;
    string banji;
    string title;
    string teacher;
};
int main()
{
    struct student stu[N];
    ifstream fin("c:\\arange.txt");
    if (!fin)
    {
        cout<<"File open error!"<<endl;
        return 1;
    }
    int i;
    for(i=0;i<N;i++)
    {
        fin>>stu[i].no;
        fin>>stu[i].classno;
        fin>>stu[i].name;
        fin>>stu[i].banji;
        fin>>stu[i].title;
        fin>>stu[i].teacher;
    }
    for(int j=0;j<N;j++)
    {
        printf("----------------------------------------------------\n"); 
       // printf( " |%10s|%30s|%20s| \n" ,stu[j].name,stu[j].title,stu[j].teacher ) ;
        cout<<"|"<<setw(10)<<stu[j].name<<"|"<<setw(30)<<stu[j].title<<"|"<<setw(20)<<stu[j].teacher<<"|"<<endl;
        
    }
    fin.close();
    system( "pause ");
    return 0;
}

我们的目标只有一个:消灭0回复!
while(1)
++money;
2012-12-03 11:11
小猪子
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2012-12-3
得分:0 
回复 2楼 mmmmmmmmmmmm
那我想空十行输出,应该怎么编写呢?
2012-12-03 11:37
小猪子
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2012-12-3
得分:0 
回复 2楼 mmmmmmmmmmmm
运行了,没有出错,但是还是没有结果。
2012-12-03 11:41
mmmmmmmmmmmm
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:8
帖 子:388
专家分:1809
注 册:2012-11-2
得分:0 
空行就用这个
printf("\n\n\n\n\n\n\n\n\n\n");
或者
cout<<endl;


结果有的 我截图给你看

我们的目标只有一个:消灭0回复!
while(1)
++money;
2012-12-03 11:54
小猪子
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2012-12-3
得分:0 
谢谢,能够输出了。要是以上面的格式输出后,如果我想自动生成文档,应该从哪个方面入手编写程序呢?
2012-12-03 12:08



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-389357-1-1.html




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

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