| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1746 人关注过本帖, 1 人收藏
标题:求帮解答这道编程题,没有思路!!
只看楼主 加入收藏
windevers
Rank: 1
等 级:新手上路
帖 子:4
专家分:2
注 册:2014-3-3
收藏
得分:0 
回复 7楼 神机军师
可以通过‘\n'来实现。
2014-03-04 01:05
fl8962
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:14
帖 子:539
专家分:2471
注 册:2012-10-17
收藏
得分:0 
回复 楼主 linxwu
。。。那天上完课忘了,现在我在学C++,所以不想写C的程序。写了个C++的给你,大同小异。
#include<iostream>
#include<vector>
#include<string>
using namespace std;
int main(void)
{
   vector<string> score;
   cout<<"plz input the scores and seprate them using space"<<endl;
   string word;
   while(getline(cin,word))
    {
       score.push_back(word);
    }//这里用ctrl+d 结束输入流。
    cin.clear();
    cin.sync();
    vector<string>::iterator p;
    p=score.begin();
    for(;p!=score.end();++p)
    {
       double sum=0;
       int s=0,flag=0;
       for(int i=0;i<(*p).size();++i)
          {   if(isalpha((*p)[i])&&isalpha((*p)[i+1]))
                  {cout<<"Plz using the right input format"<<endl;
                    flag=1;
                   break;
                   }
                if((*p)[i]>70)
                 {
                     cout<<"unknown"<<endl;
                     flag=1;
                     break;
                 }
             switch((*p)[i])
               {
                 case 'A':
                  sum=sum+4;
                  s++;
                  break;
                 case 'B':
                   sum=sum+3;
                   s++;
                   break;
                  case 'C':
                    sum=sum+2;
                    s++;
                    break;
                   case 'D':
                     sum=sum+1;
                     s++;
                     break;
                    case 'F':
                      sum=sum+0;
                      s++;
                      break;
                     case ' ':
                       break;
                     default:
                      break;
                   }
          }
       if(flag==0)
             cout<<"your gpa is: "<<sum/s<<endl;

         }
           return 0;
}

[ 本帖最后由 fl8962 于 2014-3-7 02:23 编辑 ]

想抽苏烟了。
2014-03-07 02:19
fl8962
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:14
帖 子:539
专家分:2471
注 册:2012-10-17
收藏
得分:0 
这是运行结果:
plz input the scores and seprate them using space
A B C D F
B C A A A
A A A C C
A G E N P
your gpa is: 2
your gpa is: 3.4
your gpa is: 3.2
unknown

想抽苏烟了。
2014-03-07 02:21
剡溪渡口
Rank: 1
等 级:新手上路
帖 子:3
专家分:2
注 册:2013-11-27
收藏
得分:2 
学习学习
2014-03-07 08:12
快速回复:求帮解答这道编程题,没有思路!!
数据加载中...
 
   



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

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