| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1452 人关注过本帖
标题:求助cpp(126) : warning C4715: 'getMonthValue' : not all control paths ...
只看楼主 加入收藏
朱稳
Rank: 2
等 级:论坛游民
帖 子:14
专家分:10
注 册:2011-11-2
结帖率:100%
收藏
 问题点数:0 回复次数:3 
求助cpp(126) : warning C4715: 'getMonthValue' : not all control paths return a val
程序代码:
问题在最后
//函数功能:根据输入的日期来判断输出的日期是星期几。
#include<iostream>
bool isLeapYear(int year);
int getCenturyValue(int year);
int getYearVlaue(int year);
int getMonthValue(int month, int year);
void getInput(    int m_m, int m_d, int m_y);
int main()
{
    using namespace std;
    int m_month=0,m_day=0,m_year=0,r_sum,r_r;
    getInput(m_month,m_day,m_year);
    r_sum=m_day+getMonthValue(m_month,m_year)
    +getYearVlaue(m_year)+getCenturyValue(m_year);
    r_r=r_sum%7;
    switch(r_r)
    {
        case 0:
            cout<<"Sunday"<<endl;
            break;
        case 1:
            cout<<"Monday"<<endl;
            break;
        case 2:
            cout<<"Tuesday"<<endl;
            break;
        case 3:
            cout<<"Wednesday"<<endl;
            break;
        case 4:
            cout<<"Thursday"<<endl;
            break;
        case 5:
            cout<<"Friday"<<endl;
            break;
        case 6:
            cout<<"Saturday"<<endl;
            break;
    }
    return 0;
}
//判断是否为闰年
bool isLeapYear(int year)
{
    if( (year%400==0)||( (year%4==0)&&(year%100!=0) ) )
        return true;
    else
        return false;
}
//获取年份头两位
int getCenturyValue(int year)
{
    int q2_year,num;
    q2_year=year/100;
    num=(3-(q2_year%4))*2;
    return num;
}
int getYearVlaue(int year)
{
    int r_year;
    r_year=(year%100)/4+(year%100);
    return r_year;
}
//按月份返回值
int getMonthValue(int month, int year)
{
    if(month==1)
    {
        if( isLeapYear(year) )
        {
            return 6;
        }
        else
            return 0;
    }
    if(month==2)
    {
        if( isLeapYear(year) )
        {
            return 2;
        }
        else
            return 3;
    }
    if(month==3)
    {
        return 3;
    }
    if(month==4)
    {
        return 6;
    }
    if(month==5)
    {
        return 1;
    }
    if(month==6)
    {
        return 4;
    }
    if(month==7)
    {
        return 6;
    }
    if(month==8)
    {
        return 2;
    }
    if(month==9)
    {
        return 5;
    }
    if(month==10)
    {
        return 0;
    }
    if(month==11)
    {
        return 3;
    }
    if(month==12)
    {
        return 5;
    }
}
void getInput(    int m_m, int m_d, int m_y)
{
    using namespace std;
    cout<<"Please input month(number)"<<" "<<"days(number)"
        <<","<<" "<<"years"<<endl;
    cout<<"For instance:7 4,2008"<<endl;
    cin>>m_m>>m_d>>m_y;
}

G:\应用程序\判断星期\判断.cpp(126) : warning C4715: 'getMonthValue' : not all control paths return a value

谢谢


[ 本帖最后由 朱稳 于 2012-3-12 09:28 编辑 ]
搜索更多相关主题的帖子: 126 control warning include return 
2012-03-12 09:21
yuccn
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:何方
等 级:版主
威 望:167
帖 子:6815
专家分:42393
注 册:2010-12-16
收藏
得分:0 
int getMonthValue(int month, int year)
不是每个分支都有返回值,在最后加个ruturn 值就行了

函数写的不太好


if ()
if ()
if ()
……
改成
switch
case
好点

我行我乐
公众号:逻辑客栈
我的博客:
https://blog.yuccn. net
2012-03-12 09:44
BianChengNan
Rank: 8Rank: 8
等 级:贵宾
威 望:13
帖 子:302
专家分:972
注 册:2011-11-30
收藏
得分:0 
这个的意思楼主可以自己翻译一下,说得很明白了。如果还不明白再发帖,希望楼主养成搜索的好习惯

我的群:149544757 C/C++/Assembly 喜欢交流的朋友进,进群请写消息
2012-03-12 09:49
朱稳
Rank: 2
等 级:论坛游民
帖 子:14
专家分:10
注 册:2011-11-2
收藏
得分:0 
回复 3楼 BianChengNan
嗯嗯 自己解决了 一时没想明白 没有错误了 不过好像运行有问题 不能得到正确的结果
2012-03-12 10:02
快速回复:求助cpp(126) : warning C4715: 'getMonthValue' : not all control p ...
数据加载中...
 
   



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

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