

题目
解决代码及点评
/*
有一个整数数组,请求出两两之差绝对值最小的值, 记住,只要得出最小值即可,不需要求
出是哪两个数
*/
#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.youkuaiyun.com/detail/yincheng01/6704519
解压密码:c.itcast.cn
下载代码并解压后,用VC2013打开interview.sln,并设置对应的启动项目后,点击运行即可,具体步骤如下:
1)设置启动项目:右键点击解决方案,在弹出菜单中选择“设置启动项目”
2)在下拉框中选择相应项目,项目名和博客编号一致
3)点击“本地Windows调试器”运行
程序运行结果