24小时热门版块排行榜    

查看: 988  |  回复: 3

杨小云同学

新虫 (小有名气)

[求助] 利用c++处理csv文件的数据 已有2人参与

12.1,23,45
66,56,76.1
12.1,23.2,45,
如何用C++编一个程序读取csv文件里像上述的数据,求出每行的平均值呢?

发自小木虫IOS客户端
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

杨小云同学

新虫 (小有名气)

最后一行最后一个逗号多打了,抱歉

发自小木虫IOS客户端
2楼2017-07-23 13:59:24
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

never2338

木虫 (小有名气)

【答案】应助回帖

感谢参与,应助指数 +1
CODE:
#include<iostream>
#include<fstream>
#include<string>
#include<sstream>
#include<string.h>
using namespace std;

int main(){
    ifstream fin("data.csv");//input file.
    ofstream fout("output.dat");//output file.
    string s;
    stringstream ss;
    char p[200];
    static long lines=1;

    while(fin!=NULL){
    int num=0;//data of float type in total in a line.
    float sum=0.0f;
    getline(fin,s,'\n');
    cout<<s<<endl;
    if(!fin)break;//end of file,break loop.
        if(fout.is_open()){
        fout<<lines<<":  ";//line number.
        }else{
            cout<<"File not found!"<<endl;
        }
    //split
    strcpy(p,s.c_str());
    char* token=strtok(p,",");
    while(token!=NULL){
        float a=0.0f;
        cout<<token<<endl;
        ss<<token;
        ss>>a;
        if(fout.is_open()){
        fout<<a<<",";
        }else{
            cout<<"File not found!"<<endl;
        }
        sum+=a;
        ss.clear();
        ss.str("");
        num++;
        token=strtok(NULL,",");
    }
    lines++;
        cout<<"Sum:"<<sum<<endl;
        cout<<"Average:"<<sum/num<<endl;
        fout<<"   "<<sum<<","<<sum/num<<endl;
    cout<<"============================"<<endl;

}
    fin.close();
    fout.close();
}

3楼2017-07-23 17:03:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

imyourkobe

铁杆木虫 (著名写手)

【答案】应助回帖


感谢参与,应助指数 +1
jjdg: 金币+1, 感谢参与 2017-07-24 22:22:10
就是读取文件,一行行读取,按逗号分隔,用数组存储或直接计算。
4楼2017-07-23 23:43:01
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 杨小云同学 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考博] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +3 j5mmowWXNWxv 2026-09-05 3/150 2026-09-06 13:09 by eObJPa4gWmp6
[教师之家] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +3 j5mmowWXNWxv 2026-09-05 3/150 2026-09-06 13:09 by eObJPa4gWmp6
[考博] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +3 j5mmowWXNWxv 2026-09-05 4/200 2026-09-06 12:49 by eObJPa4gWmp6
[基金申请] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +3 j5mmowWXNWxv 2026-09-05 3/150 2026-09-06 12:49 by eObJPa4gWmp6
[考博] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +3 j5mmowWXNWxv 2026-09-05 4/200 2026-09-06 12:29 by eObJPa4gWmp6
[硕博家园] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +3 jPDp0sc2B7zQ 2026-09-05 7/350 2026-09-06 11:20 by eObJPa4gWmp6
[基金申请] 科研人应该花精力去思考如何解决问题,而不是去凝练问题 +10 瞬息宇宙 2026-09-01 19/950 2026-09-06 11:15 by jiangxuan2004
[博后之家] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +3 jPDp0sc2B7zQ 2026-09-05 8/400 2026-09-06 11:09 by eObJPa4gWmp6
[考研] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +3 jPDp0sc2B7zQ 2026-09-05 4/200 2026-09-06 07:20 by E1iiBLMU2XnD
[论文投稿] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +6 7ZYIEW2YWn72 2026-09-04 9/450 2026-09-06 06:00 by E1iiBLMU2XnD
[教师之家] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +8 CRJ0Aq2FtVH0 2026-09-03 15/750 2026-09-06 05:48 by E1iiBLMU2XnD
[论文投稿] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +3 jPDp0sc2B7zQ 2026-09-05 5/250 2026-09-06 02:19 by E1iiBLMU2XnD
[基金申请] 面上没中,邀请各位路过的虫友分析一下分数 +12 jackleilei 2026-09-03 13/650 2026-09-05 18:10 by fireguard
[文学芳草园] 两块石头 +6 阿美_Lml888 2026-09-03 8/400 2026-09-05 13:52 by 阿美_Lml888
[文学芳草园] 初秋的晨风 +4 阿美_Lml888 2026-09-04 6/300 2026-09-05 13:51 by 阿美_Lml888
[基金申请] 学科评审组评审是指会评吗? +6 瞬息宇宙 2026-08-31 9/450 2026-09-05 13:11 by haizai99
[博后之家] 广西大学-广州大学招聘博士后 欢迎广大优秀人才!!! +4 SCSIOyxguo 2026-09-03 7/350 2026-09-05 10:39 by Honglianlian
[硕博家园] Ei源刊怎么投 +4 Fengshun9711 2026-09-04 4/200 2026-09-04 19:30 by 研途知予
[硕博家园] 哈尔滨工业大学韩晓军教授课题组招收2027年硕士推免生及博士研究生 +3 灯灯灯灯DDDD 2026-09-03 3/150 2026-09-03 21:22 by 科研皮皮猪
[基金申请] 要骂人了,新模版改版就是要淡化问题凝练这种虚的东西,结果有个评委还在说凝练得不够 +9 瞬息宇宙 2026-08-31 17/850 2026-09-02 14:04 by anjeeshine
信息提示
请填处理意见