【C语言经典编程题】在学习C语言的过程中,掌握一些经典的编程题目是非常重要的。这些题目不仅能够帮助初学者理解基本的语法结构,还能锻炼逻辑思维和算法设计能力。以下是一些具有代表性的C语言经典编程题,适合不同层次的学习者进行练习。
一、基础类题目
1. 计算两个数的和与差
编写一个程序,输入两个整数,输出它们的和与差。
```c
include
int main() {
int a, b;
printf("请输入两个整数:");
scanf("%d %d", &a, &b);
printf("和为:%d\n", a + b);
printf("差为:%d\n", a - b);
return 0;
}
```
2. 判断一个数是否为偶数
编写一个函数,判断输入的整数是否为偶数,并返回相应的结果。
```c
include
int isEven(int num) {
return num % 2 == 0;
}
int main() {
int num;
printf("请输入一个整数:");
scanf("%d", &num);
if (isEven(num)) {
printf("该数是偶数。\n");
} else {
printf("该数是奇数。\n");
}
return 0;
}
```
二、进阶类题目
3. 打印九九乘法表
使用嵌套循环打印出9×9的乘法表。
```c
include
int main() {
for (int i = 1; i <= 9; i++) {
for (int j = 1; j <= i; j++) {
printf("%d%d=%-4d", j, i, i j);
}
printf("\n");
}
return 0;
}
```
4. 求斐波那契数列前n项
编写一个程序,计算并输出斐波那契数列的前n项。
```c
include
int main() {
int n, first = 0, second = 1, next;
printf("请输入要输出的项数:");
scanf("%d", &n);
printf("斐波那契数列为:\n");
for (int i = 0; i < n; i++) {
if (i <= 1) {
next = i;
} else {
next = first + second;
first = second;
second = next;
}
printf("%d\t", next);
}
return 0;
}
```
三、综合应用类题目
5. 实现一个简单的计算器
编写一个程序,实现加、减、乘、除四种基本运算。
```c
include
int main() {
char op;
float a, b;
printf("请输入操作符(+、-、、/):");
scanf("%c", &op);
printf("请输入两个数:");
scanf("%f %f", &a, &b);
switch (op) {
case '+':
printf("结果为:%f\n", a + b);
break;
case '-':
printf("结果为:%f\n", a - b);
break;
case '':
printf("结果为:%f\n", a b);
break;
case '/':
if (b != 0) {
printf("结果为:%f\n", a / b);
} else {
printf("错误:除数不能为零。\n");
}
break;
default:
printf("无效的操作符。\n");
}
return 0;
}
```
四、算法类题目
6. 实现冒泡排序
编写一个程序,使用冒泡排序对数组进行排序。
```c
include
void bubbleSort(int arr[], int n) {
for (int i = 0; i < n - 1; i++) {
for (int j = 0; j < n - i - 1; j++) {
if (arr[j] > arr[j + 1]) {
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
int main() {
int arr[] = {64, 34, 25, 12, 22, 11, 90};
int n = sizeof(arr) / sizeof(arr[0]);
bubbleSort(arr, n);
printf("排序后的数组为:\n");
for (int i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
```
总结
以上这些C语言经典编程题涵盖了从基础语法到高级算法的应用,适合不同阶段的学习者进行练习。通过不断实践和思考,可以逐步提升自己的编程能力和解决问题的能力。建议在做题过程中注重代码的可读性和健壮性,同时也要注意调试和测试,确保程序的正确运行。


