变身之情归何处txt下载:数据结构算法 谁会?

来源:百度文库 编辑:高校问答 时间:2024/05/04 14:51:48
假设R是一个整数类型的一维数组变量,有20个元素。请写一个给R数组赋值的算法:从键盘读整数存入R中。要求存入R中的20个整数:
(1)全部大于0;
(2)互不相同;
(3)从小到大有序排列

#include<stdio.h>
#define NUM 5
void sortarray(int arrayint[],int number)
{
for(int i=0;i<number-1;i++)
for(int j=0;j<number-i-1;j++)
{
if(arrayint[j]>arrayint[j+1])
{
int temp=arrayint[j];
arrayint[j]=arrayint[j+1];
arrayint[j+1]=temp;
}
}
}
bool exist(int arrayint[], int a,int number)
{
bool exist=0;
int i=0;
for(i=0;i<number;i++)
{
if(arrayint[i]==a)
{
exist=1;
break;
}
}
return exist;
}void main()
{
int number=0;
int arrayint[NUM];
bool isExist=0;
int a=0;
while(number<NUM)
{
isExist=0;
scanf("%d",&a);
if(a>0)//判断整数是否大于0
{
isExist=exist(arrayint,a,number);
if(isExist==0) //如果输入的整数和已输入的不重复,则插入
{
arrayint[number++]=a;
sortarray(arrayint,number);//对数组排序,如果只要求最后输出时有序,则可以将这句话移到下个for循环前面
}
}
}
for(int i=0;i<NUM;i++)
{
printf("\n%d\t",arrayint[i]);
}
}