基于visual Studio2013解决面试题之1101差值最小




题目



解决代码及点评

/*
    有一个整数数组,请求出两两之差绝对值最小的值, 记住,只要得出最小值即可,不需要求
    出是哪两个数
*/

#include <iostream>
using namespace std;

int FindMinGap(int *pnArr, int nLen)
{
    if (pnArr == NULL || nLen < 2)
    { 
        exit(0);
    }

	// 循环找最小值
    int nMinGap = abs(pnArr[0] - pnArr[1]);
    for (int i = 0; i < nLen; i++)
    {
        for (int j = i+1; j < nLen; j++)
        {
            if (nMinGap > abs(pnArr[i] - pnArr[j]))
            {
                nMinGap = abs(pnArr[i] - pnArr[j]);
            }
        }
    }

    return nMinGap;
}
int main()
{
    int nArr[] = {1,34,21,45,231,23};
    int nLen = sizeof(nArr) / sizeof(int);
    cout<<FindMinGap(nArr, nLen)<<endl;
    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-20 21:34  三少爷的剑123  阅读(178)  评论(0编辑  收藏  举报

导航