voidinsert_sort(int arr[],int len) { if (len <= 0 || arr == NULL)return; int tmp, i, j; for (i = 0; i < len; i++) { tmp = arr[i]; for(j = i; j > 0 && arr[j-1] > tmp; j--) { arr[j] = arr[j-1]; } if(j!=i) arr[j] = tmp; } }
intmain() { int arr[] = { 7,4,3,8,1,9.22,12 }; int len = sizeof(arr) / sizeof(int); for (int i = 0; i < len; i++) { printf("%d\t", arr[i]); } printf("\n"); insert_sort(arr, len); for (int i = 0; i < len; i++) { printf("%d\t", arr[i]); } }
b、完成一个函数,输入值为整数,输出该值的二进制;
#include<stdio.h> #include<math.h>
longlongdec2bin(int num) { int j, i = 0; longlong binary = 0; while (num >= 2) { j = num % 2; num /= 2; binary += j * pow(10, i); i++; } binary += num * pow(10, i); return binary; }
intmain() { longlong a = dec2bin(12); printf("%lld", a); }
c、完成一个判断整数是否素数的函数,即,输入一个整数,判断其是否素数。
#include<stdio.h>
boolis_prime(int num) { for (int i = 2; i <= num / 2; i++) { if (num % i == 0) { printf("%d is not prime!", num); returnfalse; } } printf("%d is prime!", num); returntrue; }