1. 写一个函数可以判断一个数是不是素数。
#include <stdio.h>//写一个函数可以判断一个数是不是素数。 #include <math.h> int is_prime(int i) { int j = 0; for (j = 2; j <= sqrt(i); j++) { if (i % j == 0) { return 0; } } return 1; } int main() { int i = 0; int count = 0; for ( i = 100; i <= 200; i++) { if (1 == is_prime(i)) { count++; printf("%d ", i); } } printf("\ncount = % d \n",count); return 0; }
2. 写一个函数判断一年是不是闰年。
#include <stdio.h> //写一个函数判断一年是不是闰年。 int is_leap_year(int year) { if( ( year % 4 == 0 && year %100 != 0)|| year % 400 == 0) { return 1; } return 0; } int main() { int year; int count = 0; for ( year = 1000; year <= 2000; year++) { if (is_leap_year(year) == 1 ) { count++; printf("%d ", year); } } printf("\ncount = % d \n", count); return 0; }
3. 写一个函数,实现一个整形有序数组的二分查找。
#include <stdio.h> //写一个函数,实现一个整形有序数组的二分查找。 int binary_search(int arr[], int k, int sz) { int left = 0; int right = sz - 1; while (left <= right) { int mid = left + (right - left) / 2; if (arr[mid] < k) { left = mid + 1; } else if (arr[mid] > k) { right = mid - 1; } else { return mid; } } return -1; } int main() { int arr[10] = { 1,2,3,4,5,6,7,8,9,10 }; int k = 0;//k为查找的数字 scanf("%d", &k); int sz = sizeof(arr) / sizeof (arr[0]); //找到了就返回下标,找不到就返回-1 int ret = binary_search(arr, k, sz); if (ret == -1) { printf("找不到\n"); } else printf("找到了,下标为:%d\n", ret); return 0; }
4. 写一个函数,每调用一次这个函数,就会将 num 的值增加1。
#include <stdio.h> Add(int* pnum) { (* pnum)++; //两种方式*pnum = *pnum+1; } int main() //写一个函数,每调用一次这个函数,就会将 num 的值增加1。 { int num = 0; Add(&num); printf("%d\n", num); //结果为1 Add(&num); printf("%d\n", num); //结果为2 Add(&num); printf("%d\n", num); //结果为3 Add(&num); printf("%d\n", num); //结果为4 return 0; }
5. 写一个函数,打印乘法口诀表。
#include <stdio.h> //九九乘法表 int card(int n) { int i = 0; int j = 0; for (i = 1; i <= n; i++) { for (j = 1; j <= i; j++) { if (i >= j) { printf("%d * %d = %2d ", j, i, j*i); } } printf("\n"); } } int main() { int n = 0; scanf("%d", &n); card(n); return 0; }
6. 写一个函数来交换两个整数的内容。
#include <stdio.h> void Swap(int* pa, int* pb) { int* tmp = *pa; *pa = *pb; *pb = tmp; } int main() //实现一个函数来交换两个整数的内容。 { int a = 0; int b = 0; scanf("%d %d", &a, &b); Swap(&a, &b); printf("%d %d", a, b); return 0; }