1. 程式人生 > >C:冒泡排序&判斷一個數是否為素數&求平方根的叠代公式

C:冒泡排序&判斷一個數是否為素數&求平方根的叠代公式

mat stdio.h ret 找不到 nbsp emp prim 冒泡排序 公式

冒泡排序

#include<stdio.h>
int main ()
{
    int i,j,n,temp,a[10];
    scanf("%d",&n);
    printf("The original numbers:\n");
    for(i=0;i<n;i++)
        scanf("%d",&a[i]);
    for(i=0;i<n-1;i++)
        for(j=1;j<n-1;j++)
    if(a[j-1]>a[j])
    {
        temp=a[j-1];a[j-1]=a[j];a[j]=temp;
    }
    printf("\nThe sorted number:\n");
    for(i=0;i<n;i++)
        printf("%d ",a[i]);
    return 0;
}

 判斷素數: 

一個數若可以進行因數分解,那麽分解時得到的兩個數一定是一個小於等於sqrt(n),一個大於等於sqrt(n),
若sqrt(n)左側找不到約數,那麽右側也一定找不到約數。

#include<stdio.h>
void main()
{
int i,n;
printf("請輸入n:");
scanf("%d",&n);
i=2;
while(i<n)
{
if(n%i==0)
break;
i++;
}
if(i==n)
printf("%d is prime\n",n);
else
printf("%d is no prime\n",n);
}

  

求平方根的叠代公式為:x n+1 = (xn + a / xn) / 2

#include <stdio.h>
#include <math.h>
int   main()
{
    float a;     
    float x0, x1;
    printf("Input a positive number:\n");
    scanf("%f", &a);
    x0 = a / 2;  
    x1 = (x0 + a / x0) / 2;
    while (fabs(x1 - x0) >= 1e-5)
    {
        x0 = x1;
        x1 = (x0 + a / x0) / 2;
    }
    printf("The square root of %5.2f is %8.5f\n", a, x1);
    return 0;
}

  

C:冒泡排序&判斷一個數是否為素數&求平方根的叠代公式