sduzgz

随机数排序改进版

#include<iostream>
#include
<stdlib.h>
#include
<time.h>
//#define MAXSIZE 1001
using namespace std;
int main()
{
int Array[101];//该数组里存放1到1000的数
//int Store[1001];//这个数组用来装随机数的
int sum=0,arraysum=0;
int temp,starti;
    
int i;
for (int i=0;i<=99;i++)// 求1-1000总和
 {
      Array[i]
=i+1;
    sum
=sum+Array[i];   
}

cout
<<"sum="<<sum<<endl;
//产生1000个随机数
srand((unsigned)time(NULL));
Array[
100]=rand()%100;
/*下面要随机产生位置index然后将Array[index]上的元素与最后一个位置上的元素交换*/
//cout<<Array[100]<<endl;
for (i=100;i>0;i--)
{
srand((unsigned)time(
0));//随机数种子在循环外还是在循环内呢?
int index=rand()%100;
    cout
<<"index="<<index<<endl;
int temp1=Array[index];
    Array[index]
=Array[i];
    Array[i]
=temp1;
}

for(i=0;i<=100;i++)
{
   cout
<<Array[i]<<endl;
   arraysum
+=Array[i];
}

cout
<<"arraysum="<<arraysum<<endl;
int repeat;
    repeat
=arraysum-sum;
    cout
<<"repeat number is:"<<repeat<<endl;
/*下面要对数组排序并挑出重复数*/
    
int k=0;
 
// 将repeat从前999个数中剔除的方法1 :
     while(k<99)
{
    
if(Array[k]==repeat&&Array[k+1]==repeat)
    
{    
         Array[k]
=Array[k+2];
         Array[k
+2]=repeat;
    }

    
else if(Array[k]==repeat)
    
{
     Array[k]
=Array[k+1];
     Array[k
+1]=repeat;
    }
    
    k
++;
}


/*将repeat从前999个数中剔除的方法2*/
    
/*while(k<99)
{
if(Array[k]==repeat&&Array[99]!=repeat)
{
int temp2=Array[k];
Array[k]=Array[99];
Array[99]=temp2;
}
else if(Array[k]==repeat&&Array[100]!=repeat)
{
int temp2=Array[k];
Array[k]=Array[100];
Array[100]=temp2;
}
else
    {
        k++;
   continue;
}
   k++;
}
*/

/*    for(int i=0;i<=10;i++)
    {
        cout<<Array[i]<<endl;
    }
*/

for(i=0;i<=98;i++)
{    
  
for(int j=1;j<=98-i;j++)
 
{
   
if(Array[j-1]>Array[j])
   
{
    temp
=Array[j-1];
    Array[j
-1]=Array[j];
    Array[j]
=temp;
   }

 }

}

    
//Array[99]=repeat;
    
//Array[100]=repeat;
for( i=0;i<=100;i++)
//printf("%d\n",Store[i]);
    cout<<Array[i]<<endl;
cout
<<"sum="<<i-1<<endl;
system(
"pause");
return 0;
}

posted on 2010-08-30 09:35 sduzgz 阅读(305) 评论(0)  编辑 收藏 引用


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理


My Links

Blog Stats

常用链接

留言簿

随笔档案

搜索

最新评论

  • 1. re: 素数查找
  • @李现民
    奥,茅塞顿开啊,谢谢啊!
  • --张爱静
  • 2. re: 素数查找
  • 评论内容较长,点击标题查看
  • --李现民
  • 3. re: 素数查找
  • 牛人啊,我这习惯确实很多问题啊,命名空间那个我可以明白,你说的prim[i]那个循环还有最后sqrt(N)拿到外面,改成那样有什么好处啊,虽然觉得好,但是不知道为什么。@李现民
  • --张爱静
  • 4. re: 素数查找
  • 评论内容较长,点击标题查看
  • --李现民
  • 5. re: 接口,虚函数及纯虚函数
  • 分得太细反而着了相, 不要太看重语法上的区别,这些东西都是基于应用而衍生的,多研究一些设计的东西, 比仔细区分这些语法概念要合算
  • --李现民

阅读排行榜

评论排行榜