素数
#include<stdio.h>
int main() { int n,i; scanf("%d",&n); for(i=2;i<=n-1;i++) if(n%i==0) break; if(i<n) printf("%d is not.\n",n); else printf("%d is.\n",n); return 0; } 选择排序
#include<stdio.h> void sort(int v[],int n){
for(int i=0; i<n; i++){ int min = v[i]; int temp; int index = i; for(int j=i+1;j<n;j++){ if(v[j] < min){ min = v[j]; index = j; } } temp = v[i]; v[i] = min; v[index]= temp; } } int main() { int arr[]={7,8,9,4,5,6,1,2,3}; int i; sort(arr,9); for(i=0;i<9;i++) printf("%d ",arr[i]); printf("\n"); return 0; } 插入排序
#include<stdio.h>
void InsertSort(int arr[],int d) { int i, j; int n = d; int target; //假定第一个元素被放到了正确的位置上 //这样,仅需遍历1 - n-1 for (i = 1; i < n; i++) { j = i; target = arr[i]; while (j > 0 && target < arr[j - 1]) { arr[j] = arr[j - 1]; j--; } arr[j] = target; } } int main() { int i; int arr[]={5,9,3,4,7,8,2,6,1}; InsertSort(arr,9); for(i=0;i<9;i++) printf("%d ",arr[i]); printf("\n"); return 0;
} 冒泡排序
#include<stdio.h>
int main(){ int a[10]={7,8,9,4,5,6,1,2,3,0}; int i,j,t;
for(j=0;j<9;j++) for(i=0;i<9-j;i++) if(a[i]>a[i+1])
{t=a[i]; a[i]=a[i+1]; a[i+1]=t; } for(i=0;i<10;i++) printf("%d ",a[i]); printf("\n"); return 0;
} |
|