求高手分析一下下面两道程序!

dan2323 2012-05-26 04:10:11
C#:
1.计算s=1+(1+2)+(1+2+3)+……+(1+2+3+……+n)的值,当某一项的值超过50时,结束循环,并将当时的s的值进行输出,将当时刚好超过50的那一项的值也输出

第一个编程:
static int Fun(int _i, int _sum)
{
int sum = 0;
for (int j = 0; j <= _i; j++)
{
sum = sum + j;
}
sum = sum + _sum;
if (_i == 50)
{
return sum;
}
return Fun(_i + 1, sum);
}

int x=Fun(1,0)




第二个编程:
#include <iostream>

using namespace std;


int main(void)

{

int sum = 0;

int i = 1;


int sum_item = 1;

while(sum_item < 50)

{

sum += sum_item;


++i;

sum_item = i * (i + 1) / 2;

}


cout << sum << endl;


return 0;

}



求高手检验一下哪个程序正确???说明理由!或者有其他编程的请写出来谢谢!
...全文
94 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
threenewbee 2012-05-27
  • 打赏
  • 举报
回复
不知道是你们老师sb还是你没有好好学。

我想“如何编写正确的程序”和“什么样的程序才算正确”应该是比编程本身更基本和更重要的东西,连这个你都不知道用什么方法判断,那你整天学个啥?

这就好比,不是每个人都能成为厨师,但是就是饭桶,也知道什么能吃、什么好吃这两个基本问题。
wojiaoshishi321 2012-05-27
  • 打赏
  • 举报
回复
为什么我在VS2005里添加flash后不能播放呀 上面一片空白

<object data="topflash.swf" type="application/x-shockwave-flash" width="770" height="180">
<param name="movie" value="topflash.swf" />
</object>

还有 怎么将文字放在图片上呀 类似QQ空间导航拖动到标题栏那样
F15Eagle 2012-05-27
  • 打赏
  • 举报
回复
稍安勿躁,其实楼主是来出面试题的,哈哈哈哈。
bdmh 2012-05-26
  • 打赏
  • 举报
回复
对不对自己运行看啊,第一个是递归,第二个就是循环
资源下载链接为: https://pan.quark.cn/s/abbae039bf2a 在计算机科学领域,编译原理是研究如何将编程语言转化为机器可执行代码的理论基础。其中,三地址代码(Three-Address Code,TAC)作为一种中间表示形式,在编译器设计中经常被使用,尤其是在生成目标代码的阶段。本文将深入探讨三地址代码的概念、生成器的工作原理及其在编译过程中的作用。 三地址代码是一种简单的低级抽象语法树(AST)表示,每条指令涉及三个操作数,通常包括两个源操作数和一个目的操作数。这种格式简化了代码优化和目标代码生成的复杂性。例如,一个简单的算术表达式“x = y + z”在三地址代码中可能表示为: 在这个例子中,“t1”是一个临时变量,存储了“y + z”的结果,然后这个结果被赋值给“x”。 生成三地址代码的过程通常发生在编译器的中间阶段,即语法分析之后,语义分析之前。这个阶段称为“代码生成”或“中间代码生成”。编译器通过词法分析器处理源代码,将其转化为标记流;接着,语法分析器根据上下文无关文法将标记流解析成抽象语法树。三地址代码生成器就是在这个阶段介入,它遍历AST,为每个节点生成对应的三地址指令。 在Turbo C3.0这样的编译器环境下,开发者可以实现自己的三地址代码生成器。虽然Turbo C3.0是一款较老的编译器,但其C语言编译器设计原理依然适用于现代编译器开发。开发过程中,我们需要考虑如下关键点: 符号表管理:符号表记录了程序中所有标识符的类型、作用域和关联地址,对于生成三地址代码至关重要,因为它提供了关于操作数的类型信息。 数据类型转换:编译器必须处理不同数据类型的运算,确保它们在三地址代码中正确表示。例如,整型与浮点型之间的转换需要特别处理。

111,095

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧