| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2701 人关注过本帖
标题:[求助]T_T并非所有的代码路径都返回值是怎么回事??
只看楼主 加入收藏
单纯崇拜
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2005-5-11
收藏
 问题点数:0 回复次数:18 
[求助]T_T并非所有的代码路径都返回值是怎么回事??

n为奇数,程序计算出数列1+3+5+..+n之和;若n为偶数,则程序计算出数列2+4+6+..+n之和。

using System;

class Qiuhe { static int sum; static int a,os=2,js=1; public static int qiuhe(int a) { if (a%2==0) for(;os<=a;os+=2) { sum+=os; return sum; } else { for(;js<=a;js+=2) { sum+=js; return sum; } } } } 就是中间的public static int qiuhe(int a)老是说并非所有的代码路基都有返回值

怎么办类~~???
搜索更多相关主题的帖子: 返回值 路径 代码 
2005-05-11 21:08
live41
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:67
帖 子:12442
专家分:0
注 册:2004-7-22
收藏
得分:0 
你在if和else外再加个return;就可以了,提示是说你的return语句都在条件{}中,必须要有一个一定经过的return,即使你的条件不会超过if和else的判断范围。
2005-05-12 10:30
单纯崇拜
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2005-5-11
收藏
得分:0 
哦呵。多谢了~~!!!!!!!

果然不会出错了。但是又有一个很让我崩溃的错误

不管输入什么,结果总是零。。。。。。。。

阿丫??签名不能用图片??
2005-05-12 16:22
live41
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:67
帖 子:12442
专家分:0
注 册:2004-7-22
收藏
得分:0 
你的a在哪里输入?
2005-05-12 19:32
live41
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:67
帖 子:12442
专家分:0
注 册:2004-7-22
收藏
得分:0 
static int a,os=2,js=1; public static int qiuhe(int a) 可能静态的那个a覆盖了参数那个,你调用函数时已经传了参数a,所以去掉static的那个a定义就可以.

[此贴子已经被作者于2005-5-12 19:39:18编辑过]

2005-05-12 19:38
单纯崇拜
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2005-5-11
收藏
得分:0 

这次a没有声明,直接当参数调用的 但是IF代码总是访问不到,莫非下面的语句根本都不能执行来着?? class Qiuhe { public static int sum; public static int qiuhe(int a) { return sum; if(a%2==0) { for(int os=2;os<=a;os+=2)

sum+=os; } else { for(int js=1;js<=a;js+=2) { sum+=js; } return sum; }


阿丫??签名不能用图片??
2005-05-12 21:57
live41
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:67
帖 子:12442
专家分:0
注 册:2004-7-22
收藏
得分:0 
class Qiuhe
{
   public static int qiuhe(int a)
   {
      int sum; //又不是关键变量,就直接在函数里面定义就好了

      if(a%2==0)  //偶数
      {
         for(int os=2;os&lt;=a;os+=2)  //这里这样改比原来好了,os跟sum一样,在内定义就好
         {
            sum+=os;
         }
      }
      else  //奇数
      {
         for(int js=1;js&lt;=a;js+=2)
         {
            sum+=js;
         }
      }

      return sum;  //在这里return
}

[此贴子已经被作者于2005-5-12 23:56:30编辑过]


2005-05-12 23:50
单纯崇拜
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2005-5-11
收藏
得分:0 
呵呵,这样果然可以了 上面哪个直接return sum,为什么下面的if都不能执行呢?? 又没有跳出。。。。。。。

阿丫??签名不能用图片??
2005-05-13 10:46
yushengou
Rank: 1
等 级:新手上路
帖 子:401
专家分:0
注 册:2005-3-30
收藏
得分:0 
这个程序还有吗。
一起都写出来好理解点

我是初学者,希望大家能多多帮助我 /bbs/showimg.asp?BoardID=34&filename=2005-4/200542294030151.gif" border="0" onload="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onmouseover="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.style.cursor='hand'; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onclick="if(!this.resized) {return true;} else {window.open('http://bbs./bbs/showimg.asp?BoardID=34&filename=2005-4/200542294030151.gif');}" onmousewheel="return imgzoom(this);" alt="" />
2005-05-13 11:03
单纯崇拜
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2005-5-11
收藏
得分:0 

本程序实现如下功能:用户输入一个正整数n,若n为奇数,程序计算出数列1+3+5+..+n之和;若n为偶数,则程序计算出数列2+4+6+..+n之和。

//第二次作业1 using System;

class Qiuhe { public static int qiuhe(int a) { int sum=0; if(a%2==0) { for(int os=2;os<=a;os+=2)

sum+=os; } else { for(int js=1;js<=a;js+=2) { sum+=js; } } return sum; } public static void Main() { Console.WriteLine("请输入一个正整数:"); int n=int.Parse(Console.ReadLine()); Console.WriteLine("结果是:{0}", qiuhe(n)); } }

是不是比较弱的一个程序??


阿丫??签名不能用图片??
2005-05-13 11:13
快速回复:[求助]T_T并非所有的代码路径都返回值是怎么回事??
数据加载中...
 
   



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

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