| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2734 人关注过本帖
标题:[求助]一个C#面试题,大家看看怎么做!!!
只看楼主 加入收藏
noshow
Rank: 2
等 级:新手上路
威 望:4
帖 子:1127
专家分:0
注 册:2006-4-21
收藏
得分:0 

[CODE]using System;
namespace 面试递归题
{
class Class1
{
////////run函数,就调用它就可以了
public static void run(int num)//输入数组个数
{

int[] a = new int[num];
int[] x = new int[num];
WriteResult("");
WriteResult(System.DateTime .Now .ToString ());
for(int i=0;i<num;i++)//初始化int[] a
{
WriteResult("请输入第"+(i+1).ToString()+"个数字!");
Console.WriteLine("请输入第"+(i+1).ToString()+"个数字!");
a[i]=Convert.ToInt32(Console.ReadLine());
WriteResult(a[i].ToString ());
}
compute(1,0,num,a,x);//开始递归调用,compute是递归函数,层数,和,个数,数组,数组
}

////////////compute函数,由程序的run函数自动调用,不用手动调用
public static void compute(int t,int sum,int num,int[] a,int[] x)//int t 代表递归层数, int sum 代表a1x1+a2x2+a3x3+a4x4+a5x5................的和
{
if(t>num)//num是run函数中得到的数组个数,这是最后依次调用,输出结果!
{
for(int i=0;i<num;i++)
{
Console.WriteLine("x"+i.ToString()+":"+x[i].ToString()+" * a"+i+":"+a[i]);////////经过了修改,加了个+x[i].ToString(),不好意思啊!
WriteResult("x"+i.ToString()+":"+x[i].ToString()+" * a"+i+":"+a[i]);
}
Console.WriteLine("和是:"+sum.ToString());
WriteResult("和是:"+sum.ToString());
Console.WriteLine("^^^^^^^^^^^^^^^^");
WriteResult("^^^^^^^^^^^^^^^^");
}
else
{
for(int i=0;i<300;i++)///////////分成300种情况
{
int sumnei=sum;
x[t-1]=i;
sumnei=sum+(a[t-1]*x[t-1]);
if(sumnei<300)//////////如果有满足条件的可能,再深入调用
{
compute(t+1,sumnei,num,a,x);
}
else
{
return;////以知不可能满足条件,即已经超范围了.
}
}
}
}
private static void WriteResult(string text)
{
System.IO.StreamWriter wr=new System.IO.StreamWriter("d:\\Result.log",true,System.Text.Encoding.Default);//文件保存操作
wr.WriteLine ();
wr.Write(text);
wr.Close();

}

[STAThread]
static void Main(string[] args)
{
int num;
WriteResult("请输入数组个数!");
Console.WriteLine("请输入数组个数!");
num=Convert.ToInt32(Console.ReadLine());
WriteResult(num.ToString ());
run(num);
}

}
}[/CODE]

俺加工了一下你的代码 使它能够打印出来 默认到D盘根目录 result.txt
你的程序挺好的 HOHO

[此贴子已经被作者于2006-6-30 9:10:46编辑过]


此号自封于2006年11月30日
2006-06-29 10:23
xupeng
Rank: 1
等 级:新手上路
帖 子:4049
专家分:0
注 册:2006-2-12
收藏
得分:0 
俺加工了一下你的代码 使它能够打印出来 默认到D盘根目录 result.txt
你是怎么把结果保存成txt文件的啊?能否把有关的代码用红色注释一下啊!
谢谢!

[此贴子已经被作者于2006-6-29 15:31:08编辑过]


反清复明 http://xupeng.
2006-06-29 15:30
noshow
Rank: 2
等 级:新手上路
威 望:4
帖 子:1127
专家分:0
注 册:2006-4-21
收藏
得分:0 
不好意思 楼上的
今天刚看到
我已经用红色标注了打印日志的部分
我保存的是 Result.log
如果想保存成 txt 文件
只要改为 Result.txt 就可以了

此号自封于2006年11月30日
2006-06-30 09:12
xupeng
Rank: 1
等 级:新手上路
帖 子:4049
专家分:0
注 册:2006-2-12
收藏
得分:0 
谢谢了啊!

反清复明 http://xupeng.
2006-06-30 12:48
foproxs
Rank: 1
等 级:新手上路
帖 子:132
专家分:0
注 册:2006-4-24
收藏
得分:0 

X是不是常数?


2006-06-30 14:09
xupeng
Rank: 1
等 级:新手上路
帖 子:4049
专家分:0
注 册:2006-2-12
收藏
得分:0 
x[]是个要求解的数组!

反清复明 http://xupeng.
2006-06-30 14:12
xupeng
Rank: 1
等 级:新手上路
帖 子:4049
专家分:0
注 册:2006-2-12
收藏
得分:0 
LZ到底拿没拿到答案啊!我要看看标准答案与我的答案有什么差别!

反清复明 http://xupeng.
2006-07-01 10:25
noshow
Rank: 2
等 级:新手上路
威 望:4
帖 子:1127
专家分:0
注 册:2006-4-21
收藏
得分:0 
我也想看答案那 虾米时候能拿到呀

此号自封于2006年11月30日
2006-07-01 15:53
xupeng
Rank: 1
等 级:新手上路
帖 子:4049
专家分:0
注 册:2006-2-12
收藏
得分:0 

有没有答案啊!


反清复明 http://xupeng.
2006-07-10 15:10
binlxm
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2006-3-21
收藏
得分:0 

希望论坛能多一些这样的帖子,受益匪浅!!
希望能早点有标准答案!

2006-07-11 13:04
快速回复:[求助]一个C#面试题,大家看看怎么做!!!
数据加载中...
 
   



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

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