程序读取日期值

C++ Program reading date values

本文关键字:取日期 读取 程序      更新时间:2023-10-16

这个程序有问题…

得到错误"must return 'Int' in line 116.

#include <iostream>
#include <fstream>
//#include <stdio>
#include <string>
using namespace std;
/********************************************************************/
/*Function: to validate the score is valid
Parameter: score1 ,score 2, score3
return: true: if 3 score is valid
        false: if at least 1 score is invalid
/********************************************************************/
bool isitavalidset(int score1,int score2,int score3)
{
    bool isvalid = true;
    //check valid score1
    if(score1 < 18 || score1> 100)
    {
        cout<<"Score1 is invalid valuen";
        isvalid = false;
    }
    //check valid score2
    if(score2 < 18 || score2> 100)
    {
        cout<<"Score3 is invalid valuen";
        isvalid = false;
    }
    //check valid score3
    if(score3 < 18 || score3> 100)
    {
        cout<<"Score3 is invalid valuen";
        isvalid = false;
    }
    return isvalid;
}
/********************************************************************/
/*Function: to classify the status of 3 score
Parameter: score1 ,score 2, score3
return: print out the screen
/********************************************************************/
void findpattern(int score1, int score2,int score3)
{
    //stayed in the same
    if((score1 == score2) &&(score2 == score3))
    {
        cout<<"stayed the samen";
    }//inccreasing
    else if((score1 < score2) && (score2 < score3))
    {
        cout<<"increasingn";
    }//decreasing
    else if((score1 > score2) &&(score2 > score3))
    {
        cout<<"decreasingn";
    }//two left or right are the same
    else if((score1 == score2) || (score2 == score3))
    {
        cout<<"two the samen";
    }//up and down
    else if(score1 > score2)
    {
        cout<<"up and downn";
    }//down and up
    else if(score1 < score2)
    {
        cout<<"down and upn";
    }//no case,it is impossible to occur
    else {
        cout<<"this type of value is not classifiedn";
    }
}
/********************************************************************/
/*Function: to count 3 score for each group
Parameter: score1 ,score 2, score3
return: print out the screen
/********************************************************************/
void countranges(int score1, int score2, int score3)
{
    int belowpar = 0;
    int atpar = 0;
    int abovepar = 0;
    //we do not care the range, because we has been check the range outside, this number must be valid
    if(score1 < 70) belowpar++;
    else if(score1 == 70) atpar++;
    else if(score1 > 70) abovepar++;
    //we do not care the range, because we has been check the range outside, this number must be valid
    if(score2< 70) belowpar++;
    else if(score2 == 70) atpar++;
    else if(score2 > 70) abovepar++;
    //we do not care the range, because we has been check the range outside, this number must be valid
    if(score3 < 70) belowpar++;
    else if(score3 == 70) atpar++;
    else if(score3 > 70) abovepar++;
    //printing the value here
    cout<<belowpar<<" below par (18-69 range)        " <<atpar<<" at par (exactly 70)         "<<abovepar<<" above par (71-100 range)n";
}
/********************************************************************/
/*Function: to call the other function
Parameter: score1 ,score 2, score3
return: nothing
/********************************************************************/
void classify(int score1,int score2, int score3)
{
    findpattern(score1,    score2,    score3);
    countranges(score1,    score2,    score3);
}
/********************************************************************/
/*Function: control the input of data and print result
Parameter: score1 ,score 2, score3
return: nothing
/********************************************************************/

// Getting error from this line,,,  error "must return 'Int'
void main(int argc, char* argv[])
{
    int score1,score2,score3;
    int totalgroupgood = 0;
    int totalgroupbad = 0;
    //Input file
    ifstream infile;
    if(argc != 2)
    {
        return;
    }
   //read the file from input
    infile.open (argv[1]);
        while(!infile.eof()) // To get you all the lines.
            {
                //set value to score1,score2,score3
                infile>>score1;
                infile>>score2;
                infile>>score3;
                if(isitavalidset(score1,score2,score3))
                {
                    classify(score1,score2,score3);
                    totalgroupgood++;
                }else{
                    totalgroupbad++;
                }
        }
    infile.close();
    cout<<"Total valid group:"<<totalgroupgood<<"n";
    cout<<"Total invalid group:"<<totalgroupbad<<"n";

}

谢谢。

void main(int argc, char* argv[])

不合法;如果必须修改为:

int main(int argc, char* argv[])

main()是一个特例,您可以选择将return语句放在末尾,这是可选的。请看这里,Bjarne Stroustrup页面的链接。简而言之,main()必须返回int