网站首页 网站地图
网站首页 > 娱乐人生 > 几道c的编程题怎么做的

几道c的编程题怎么做的

时间:2026-03-20 16:49:22

题目1:求三个数的最大值

思路

1. 输入三个整数。

2. 使用条件语句比较三个数的大小。

3. 输出最大值。

代码示例

```c

include

int main() {

int a, b, c, max;

printf("请输入三个整数:\n");

scanf("%d %d %d", &a, &b, &c);

if (a >= b) {

if (a >= c) {

max = a;

} else {

max = c;

}

} else {

if (b >= c) {

max = b;

} else {

max = c;

}

}

printf("最大值是:%d\n", max);

return 0;

}

```

题目2:输出100以内的素数

思路

1. 使用筛选法(埃拉托斯特尼筛法)找出100以内的所有素数。

2. 输出这些素数。

代码示例

```c

include

include

void sieve_of_eratosthenes(int n) {

bool prime[n + 1];

for (int i = 2; i <= n; i++) {

prime[i] = true;

}

for (int p = 2; p * p <= n; p++) {

if (prime[p]) {

for (int i = p * p; i <= n; i += p) {

prime[i] = false;

}

}

}

for (int i = 2; i <= n; i++) {

if (prime[i]) {

printf("%d ", i);

}

}

}

int main() {

int n = 100;

printf("100以内的素数:\n");

sieve_of_eratosthenes(n);

return 0;

}

```

题目3:计算一个整型二维数组对角线元素之和

思路

1. 定义一个整型二维数组。

2. 遍历数组,计算对角线元素的和。

3. 输出结果。

代码示例

```c

include

int main() {

int arr = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};

int sum = 0;

for (int i = 0; i < 3; i++) {

sum += arr[i][i];

}

printf("对角线元素之和是:%d\n", sum);

return 0;

}

```

题目4:插入排序

思路

1. 定义一个数组。

2. 输入一个数,将其插入到已排序的数组中的正确位置。

3. 输出排序后的数组。

代码示例

```c

include

void insertion_sort(int arr[], int n) {

for (int i = 1; i < n; i++) {

int key = arr[i];

int j = i - 1;

while (j >= 0 && arr[j] > key) {

arr[j + 1] = arr[j];

j--;

}

arr[j + 1] = key;

}

}

int main() {

int arr = {4, 3, 2, 10, 12, 1, 5, 6};

int n = sizeof(arr) / sizeof(arr);

insertion_sort(arr, n);

printf("排序后的数组:\n");

for (int i = 0; i < n; i++) {

printf("%d ", arr[i]);

}

return 0;

}

```

题目5:计算1到n的倒数和

思路

1. 输入一个正整数n。

2. 计算1