|
本帖最后由 gloomyakon 于 2013-2-28 14:13 编辑
[code=Cpp width=740px]#include<stdio.h>
#include<stdlib.h>
void makeUnique(int buffer[],int* curCount)
{//找到相同的则前移覆盖
int temp;
int i,j,k;
for(i=0;i<*curCount;i++){
for(j=i+1;j<*curCount;j++){
if(buffer[j]==buffer){
k=j;
while(k<*curCount-1) {buffer[k]=buffer[k+1];k++;}
(*curCount)--;
}
}
}
}
void insertion_sort(int buffer[],int count)
{//插入排序
int i,j,temp;
for (i=0;i<count-1;i++){
j=i+1;
while(j<count && buffer[j]<buffer)
temp=buffer,buffer=buffer[j],buffer[j]=temp;
}
}
int main()
{
int buffer[100];
int temp;
int i=0,count=0;
printf("请输入一共多少个数\n");
while(scanf("%d",&count)&&count>100){
printf("要小于100个数\n");
};
printf("请输入%d个数字\n",count);
while(i<count){
scanf("%d",&temp);
if(temp<=1000){
buffer[i++]=temp;
}
}
makeUnique(buffer,&count);
insertion_sort(buffer,count);
printf("一共有%d个\n",count);
for (i=0;i<count;i++)
{
printf("%d\t",buffer);
}
printf("\n");
system("pause");
return 0;
}[/code] |
|