乘法表函式+交換兩個數函式+判斷閏年函式+陣列初始化、清空和逆置函式+判斷素數函式
阿新 • • 發佈:2018-11-28
寫一個函式,列印所輸入數字的乘法表:
#include <stdio.h> /* 寫一個函式,實現所輸入數字的乘法表 */ void table(int n) { for (int i = 1; i <= n; i++) { for (int j = 1; j <= i; j++) { printf("%d * %d = %d ", i, j, i * j); } printf("\n"); } } int main() { int num = 0; printf("請輸入一個數,求它的乘法表\n"); scanf("%d", &num); table(num); return 0; }
寫一個函式,實現對兩個數的交換:
#include <stdio.h> /* 實現兩個數的交換 */ void exchange(int* x, int* y) { int temp = *x; *x = *y; *y = temp; } int main() { int a = 0, b = 0; printf("請輸入兩個需要交換的數\n"); scanf("%d %d", &a, &b); printf("交換之前:a = %d b = %d\n", a, b); exchange(&a, &b); printf("交換之後:a = %d b = %d\n", a, b); return 0; }
寫一個函式,判斷所輸入的年份是否為閏年:
#include <stdio.h> /* 寫一個函式判斷所輸入的年份是不是閏年 */ int isLeap(int year) { if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) { return 1; } return 0; } int main() { int year = 0; printf("請輸入你要判斷的年份:\n"); scanf("%d", &year); if (isLeap(year)) { printf("該年是閏年\n"); } else { printf("該年不是閏年\n"); } return 0; }
寫三個函式,實現對指定陣列的初始化、清空和逆置:
#include <stdio.h>
/*
寫三個處理陣列的函式:初始化、清空、逆置
*/
//初始化
void init(int x[]) {
for (int i = 1; i < 7; i++) {
x[i - 1] = i;
}
}
//清空
void empty(int x[]) {
for (int i = 0; i < 6; i++) {
x[i] = 0;
}
}
//逆置
void reverse(int x[]) {
//int* y = x;
//for (int i = 0; i < 6; i++) {
// x[i] = y[5 - i];
//}
int temp = 0;
for (int i = 0; i < 3; i++) {
temp = x[i];
x[i] = x[5 - i];
x[5 - i] = temp;
}
}
//列印陣列
void print(int x[]) {
for (int i = 0; i < 6; i++) {
printf("%d ", x[i]);
}
printf("\n");
}
int main() {
int a[6] = {0};
init(a);
print(a);
reverse(a);
print(a);
empty(a);
print(a);
return 0;
}
寫一個函式,判斷所輸入數字是否為素數:
#include <stdio.h>
#include <math.h>
/*
寫一個函式,判斷所輸入的數字是否為素數
*/
int isPrime(int n) {
if (n <= 1) {
return 0;
}
if (n == 2) {
return 1;
}
for ( in i = 2; i <= sqrt(n); i++) {
if (n % i == 0) {
return 0;
}
}
return 1;
}
int main() {
int num = 0;
printf("請輸入你要判斷的數字:\n");
scanf("%d", &num);
if (isPrime(num)) {
printf("這個數是素數\n");
} else {
printf("這個數不是素數\n");
}
return 0;
}