day36
题目:求100之内的素数。
程序分析:质数(prime number)又称素数,有无限个。一个大于1的自然数,除了1和它本身外,不能被其他自然数整除。
实例
#include<stdio.h>
#include<math.h>
int main()
{
int i,j,k,n=0;
for(i=2;i<=100;i++)
{
k=(int)sqrt(i);
for(j=2;j<=k;j++)
if(i%j==0) break;
if(j>k)
{
printf("%d ",i);
n++;
if(n%5==0)
printf("\n");
}
}
return 0;
}
以上实例输出结果为:
2 3 5 7 11
13 17 19 23 29
31 37 41 43 47
53 59 61 67 71
73 79 83 89 97
day37
题目:对10个数进行排序。
程序分析:可以利用选择法,即从后9个比较过程中,选择一个最小的与第一个元素交换, 下次类推,即用第二个元素与后8个进行比较,并进行交换。
实例
#include<stdio.h>
#define N 10
int main()
{
int i,j,a[N],temp;
printf("请输入 10 个数字:\n");
for(i=0;i<N;i++)
scanf("%d",&a[i]);
for(i=0;i<N-1;i++)
{
int min=i;
for(j=i+1;j<N;j++)
if(a[min]>a[j]) min=j;
if(min!=i)
{
temp=a[min];
a[min]=a[i];
a[i]=temp;
}
}
printf("排序结果是:\n");
for(i=0;i<N;i++)
printf("%d ",a[i]);
printf("\n");
return 0;
}
以上实例输出结果为:
请输入 10 个数字:
23 2 27 98 234 1 4 90 88 34
排序结果是:
1 2 4 23 27 34 88 90 98 234