第六章 利用数组处理批量数据
1.用筛选法求100之内的素数。
int main()
{
int a[100],i,j;
for(i=0;i<100;i++)
a[i]=i+1;
a[0]=0;
//因为1不是素数,a[0]用0表示;
for(i=0;i<99;i++){
for(j=i+1;j<100;j++){
if(a[i]!=0&&a[j]!=0){
if(a[j]%a[i]==0)//筛选过程
a[j]=0;
}
}
}
printf("筛选法求100以内的素数:\n");
for(i=0;i<100;i++){
if(a[i]!=0)
printf("%3d",a[i]);
}
printf("\n");
return 0;
}
2.选择法对10个整数进行排序
#include <stdio.h>
#include <stdlib.h>
int main()
{
int array[] = {2,8,3,9,5,7,1,4,0,6};
int size=sizeof(array)/sizeof(array[0]);
for (int i = 0; i < size; ++i)
printf("%d ", array[i]);
printf("\n");
for(int i=0;i<size-1;++i)
{
int maxPos=0;
for(int j=1;j<size-i;++j){
if(array[j]>array[maxPos])
maxPos=j;
}
if(maxPos!=size-i-1){
int temp=array[maxPos];
array[maxPos]=array[size-i-1];
array[size-i-1]=temp;
}
}
for (int i = 0; i < size; ++i)
printf("%d ", array[i]);
printf("\n");
return 0;
}
|