首页 > 精选范文 >

C语言基础练习题(含答案)

2025-06-01 04:20:01

问题描述:

C语言基础练习题(含答案),急!求解答,求此刻回复!

最佳答案

推荐答案

2025-06-01 04:20:01

在学习编程的过程中,扎实的基础知识是必不可少的。对于初学者来说,通过大量的练习可以更好地掌握所学的知识点。以下是几道C语言的基础练习题及其答案,供学习者参考。

题目一:求两个数的最大公约数

编写一个程序,输入两个正整数m和n,输出它们的最大公约数。

```c

include

int main() {

int m, n;

printf("请输入两个正整数:");

scanf("%d %d", &m, &n);

// 使用辗转相除法求最大公约数

while (n != 0) {

int temp = m % n;

m = n;

n = temp;

}

printf("最大公约数为:%d\n", m);

return 0;

}

```

答案:

程序使用了辗转相除法来计算最大公约数,最终输出的结果即为所求。

题目二:判断素数

编写一个程序,判断用户输入的一个整数是否为素数。

```c

include

include

int main() {

int num, i;

printf("请输入一个整数:");

scanf("%d", &num);

if (num <= 1) {

printf("%d 不是素数。\n", num);

return 0;

}

for (i = 2; i <= sqrt(num); i++) {

if (num % i == 0) {

printf("%d 不是素数。\n", num);

return 0;

}

}

printf("%d 是素数。\n", num);

return 0;

}

```

答案:

程序通过遍历从2到sqrt(num)的所有整数,检查是否存在能整除num的数。如果存在,则num不是素数;否则,num是素数。

题目三:打印九九乘法表

编写一个程序,打印出完整的九九乘法表。

```c

include

int main() {

int i, j;

for (i = 1; i <= 9; i++) {

for (j = 1; j <= i; j++) {

printf("%d%d=%d\t", j, i, i j);

}

printf("\n");

}

return 0;

}

```

答案:

程序使用双重循环,外层循环控制行数,内层循环控制每行的列数,最终输出九九乘法表。

题目四:数组排序

编写一个程序,对用户输入的一组整数进行从小到大的排序。

```c

include

void sortArray(int arr[], int size) {

int i, j, temp;

for (i = 0; i < size - 1; i++) {

for (j = 0; j < size - i - 1; j++) {

if (arr[j] > arr[j + 1]) {

temp = arr[j];

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

arr[j + 1] = temp;

}

}

}

}

int main() {

int arr[100], size, i;

printf("请输入数组元素个数:");

scanf("%d", &size);

printf("请输入数组元素:");

for (i = 0; i < size; i++) {

scanf("%d", &arr[i]);

}

sortArray(arr, size);

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

for (i = 0; i < size; i++) {

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

}

printf("\n");

return 0;

}

```

答案:

程序使用冒泡排序算法对数组中的元素进行排序,并输出排序后的结果。

以上练习题涵盖了C语言中的基本语法、控制结构以及数组操作等内容,希望对大家的学习有所帮助。通过不断练习,相信你的编程能力会得到显著提升!

免责声明:本答案或内容为用户上传,不代表本网观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。 如遇侵权请及时联系本站删除。