24小时热门版块排行榜    

查看: 793  |  回复: 3

joansky

金虫 (小有名气)

[交流] 【求助】C++ 作业题求助 已有3人参与

我不是计算机专业的,现在在修计算机系的一门课。现在要写一段程序,要求是打开并读取一个文件,文件有四行五列(有点像excel表格),第一列是人名,后四列是每个人的四次考试成绩。现在要求我们在输出文件中另加入两列,一列是每个人的总成绩,另一列式把这个数字成绩换成字母(A,B,C,D). 我现在的问题是我不知道该怎么对原问价进行修改,获取四次成绩,计算综合,再在输出文件中加入这两列。

输入文件:

王      25  25 23 25
李      15    8   6   0
张      24  21 19 23
赵      17  16 21 22

输出文件:

王        25.0        25.0        23.5        25.0         98.5        A
李        15.0         8.5         6.5         0.0         30.0        F
张        24.5        21.0        19.5        23.5         88.5        B+
赵        17.9 16.6        21.3        22.0         77.8        B-

希望能得到大侠的帮助,谢谢!!
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

jason.masc

铜虫 (初入文坛)

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
余泽成(金币+1): 谢谢参与应助,欢迎常来程序语言版! 2011-02-20 18:48:25
直接把所有的数据按字符串读进来,然后用atof()函数转换成数字,接下来的事情就是计算后输出文件了
C++无所不能
2楼2011-02-18 08:37:31
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

joansky

金虫 (小有名气)

引用回帖:
Originally posted by jason.masc at 2011-02-18 00:37:31:
直接把所有的数据按字符串读进来,然后用atof()函数转换成数字,接下来的事情就是计算后输出文件了

下面的code编译好像没问题了,可运行的时候说“segmentation fault"。能不能麻烦帮我看看哪出问题了。

#include
#include
#include
#include
#include
#include
#include
#include
#include
#include

using namespace std;

int main(){
  ifstream fin;
  ofstream fout;
  string filename;
  string temp;

  cout << "Enter input file: ";
  cin >> filename;

  fin.open(filename.c_str());
    if(!fin){
      cerr << "Input file can not be opened!" << endl;
      exit (-1);
}
       
  fout.open ("output_file.txt";
  
  fout << "Name        Score1        Score2        Score3        Score4        Total        Grade"<< endl;
          
  int lineCount = 0;

  while (!fin.eof()){
      getline(fin,temp);
      ++lineCount;
      
     
      string buf;
      stringstream ss(temp);
      vector tokens;

      while (ss >> buf)
        tokens.push_back(buf);

      
      double score[4];
      double total;
      string grade;
      int Total;

          
      for (int i=0; i<4; i++){

        score = atof (tokens[i+1].c_str());

        total += score;

        }
      
      Total = int (total);

      if(Total>=95 && Total<=100){
          grade = "A";
      }
        else if(Total>=90 && Total<95){
             grade = "A-";
        }
          else if(Total>=85 && Total<90){
               grade = "B+";
          }
             else if(Total>=80 && Total<85){
               grade = "B";
          }
               else if(Total>=75 && Total<80){
               grade = "B-";
          }
                 else if(Total>=70 && Total<75){
               grade = "C+";
          }
                   else if(Total>=65 && Total<70){
               grade = "C";
          }  
                     else if(Total>=60 && Total<65){
               grade = "C-";
          }
                       else if(Total>=50 && Total<60){
               grade = "D";
          }
                         else if(Total>=0 && Total<50){
               grade = "F";
          }

  
       

       
        fout << tokens[0] << "\t" << score[0] << "\t" << score[1] << "\t" << score[2] << "\t" << score[3] << "\t" << total << "\t" << grade << endl;

}
          
          return 0;
}
3楼2011-02-19 01:20:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lucktroy

禁虫 (小有名气)

★ ★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
余泽成(金币+3): 谢谢参与应助,欢迎常来程序语言版! 2011-02-20 18:48:42
本帖内容被屏蔽

4楼2011-02-19 10:38:41
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 joansky 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 投票:  有多少人是今天查系统知道结果的? +17 爱看书的可乐 2026-08-26 19/950 2026-08-31 11:51 by xiangy672
[基金申请] 基金不中,共勉 +12 eulota 2026-08-26 12/600 2026-08-31 08:42 by ZJTJZ
[基金申请] 能否申诉? +6 echo8914667 2026-08-30 7/350 2026-08-31 08:41 by kingkocxr
[基金申请] 为什么到现在没收到通知? +5 tannykie 2026-08-29 5/250 2026-08-30 21:05 by purplejack
[基金申请] 有没有仍没收到信息的 +7 德尚中行 2026-08-27 8/400 2026-08-30 20:52 by purplejack
[考博] 找导师 +6 yuanjiabao 2026-08-29 7/350 2026-08-30 14:40 by 生科新手
[基金申请] 麻烦专家们看看评委们的意见(F口面上) +6 gdd2018 2026-08-28 11/550 2026-08-30 08:58 by 超级无敌华子
[基金申请] 我就是申请一个面上项目而已,这评审意见是按照杰青的条件评的吧? +6 gouxfjh 2026-08-28 11/550 2026-08-30 07:57 by gouxfjh
[基金申请] 2026年叶企孙基金 +4 bud_bud 2026-08-27 7/350 2026-08-29 07:23 by foolishmani
[基金申请] 为什么资助数各大高校都创新高,自己申请怎么就这么难 +12 Kittylucky 2026-08-27 13/650 2026-08-29 00:04 by superceng
[基金申请] 基金系统什么内容也没有 30+4 winsaint 2026-08-27 9/450 2026-08-28 11:06 by maolC
[基金申请] 看板上这么多中的,有点像50人群里49个人都是骗子的那种感觉…… +5 a089 2026-08-26 6/300 2026-08-27 14:05 by jonewore
[基金申请] 为什么 国际(地区)合作与交流项目 没有放榜? 10+3 majunge000 2026-08-26 11/550 2026-08-27 08:42 by 北京莱茵编辑
[基金申请] 2026年8月25日国自然放榜前突然收到列入评审专家邮件,有关系吗? +25 木水思豆 2026-08-25 28/1400 2026-08-26 14:53 by draco1987
[基金申请] 为什么国自然不能直接公布 +4 bjdxyxy 2026-08-26 4/200 2026-08-26 13:12 by qingmu1201
[基金申请] 国合里面能看到了 +7 一怀馨秋 2026-08-26 7/350 2026-08-26 11:23 by zhaosm1982
[基金申请] 国合现在查不到了吗? +10 chengyan1220 2026-08-24 20/1000 2026-08-26 08:57 by peasantsprig
[基金申请] 在坚冰还盖着北海的时候,我看到了怒放的梅花。 (金币+10) +6 ziyangfang 2026-08-25 9/450 2026-08-25 20:26 by huagongfeihu
[基金申请] 某些机构,以效率低为荣,以效率低作为存在感 +9 yuleib84 2026-08-25 10/500 2026-08-25 17:14 by alexon
[基金申请] 没有任何消息-是不是就凉了 +9 图啦图啦 2026-08-24 10/500 2026-08-25 11:59 by 南海小哥
信息提示
请填处理意见