基于visual Studio2013解决面试题之0301累加




题目



解决代码及点评

/*
	求 1+2+3+...+n
	要求不能使用乘除法、for、while、if、else、switch、case 等关键字
	以及条件判断语句(A?B:C)

	解决思路:
	    通过全局变量(或者静态类变量)来记录累加的和,以及累加到的数字
		通过构造函数来实现累加
*/

#include <iostream>
using namespace std;
#define N 100

/* 定义计算类Base */
class Base
{
public:
    Base()   // 调用一次构造函数,完成一次累加
    {
        n++;
        nSum += n;
    }
    
    static int gets_sum() { return nSum; }   // 获取和结果
private:
    static int n;      // 该静态变量记录当前累加的数值
    static int nSum;   // 该静态变量记录当前累加和
};

int Base::n = 0;
int Base::nSum = 0;

int main()
{
	// 创建100个base对象,构造函数将被调用100次,完成1到100的累加
    Base *p = new Base[N];  

	// 将结果打印出来
    cout<<Base::gets_sum()<<endl;
    delete[] p;
    p = NULL;

    system("pause");
    return 0;
}


代码下载及其运行

代码下载地址:http://download.csdn.net/detail/yincheng01/6704519

解压密码:c.itcast.cn


下载代码并解压后,用VC2013打开interview.sln,并设置对应的启动项目后,点击运行即可,具体步骤如下:

1)设置启动项目:右键点击解决方案,在弹出菜单中选择“设置启动项目”


2)在下拉框中选择相应项目,项目名和博客编号一致

3)点击“本地Windows调试器”运行


程序运行结果









posted on 2013-12-13 14:33  三少爷的剑123  阅读(219)  评论(0编辑  收藏  举报

导航