引言
C语言是一种广泛使用的编程语言,以其高效性和灵活性著称。对于编程初学者来说,通过实际操作和实践来学习C语言是一种非常有效的方法。本文将为你提供224个经典代码案例,帮助你快速掌握C语言的编程技巧。
第一章:基础语法和结构
1.1 变量和数据类型
#include <stdio.h>
int main() {
int age = 25;
float height = 1.75;
char gender = 'M';
printf("Age: %d\n", age);
printf("Height: %.2f\n", height);
printf("Gender: %c\n", gender);
return 0;
}
1.2 运算符
#include <stdio.h>
int main() {
int a = 10, b = 5;
int sum = a + b;
int diff = a - b;
int prod = a * b;
int div = a / b;
printf("Sum: %d\n", sum);
printf("Difference: %d\n", diff);
printf("Product: %d\n", prod);
printf("Quotient: %d\n", div);
return 0;
}
1.3 控制结构
1.3.1 条件语句
#include <stdio.h>
int main() {
int num = 10;
if (num > 0) {
printf("Number is positive\n");
} else if (num < 0) {
printf("Number is negative\n");
} else {
printf("Number is zero\n");
}
return 0;
}
1.3.2 循环结构
#include <stdio.h>
int main() {
int i;
for (i = 0; i < 5; i++) {
printf("Loop iteration: %d\n", i);
}
return 0;
}
第二章:函数和模块化编程
2.1 定义和调用函数
#include <stdio.h>
void printMessage() {
printf("Hello, World!\n");
}
int main() {
printMessage();
return 0;
}
2.2 参数传递和返回值
#include <stdio.h>
int add(int x, int y) {
return x + y;
}
int main() {
int result = add(5, 3);
printf("The sum is: %d\n", result);
return 0;
}
第三章:指针和内存管理
3.1 指针的基本使用
#include <stdio.h>
int main() {
int num = 10;
int *ptr = #
printf("Value of num: %d\n", num);
printf("Address of num: %p\n", (void *)ptr);
printf("Value pointed by ptr: %d\n", *ptr);
return 0;
}
3.2 动态内存分配
#include <stdio.h>
#include <stdlib.h>
int main() {
int *ptr = (int *)malloc(sizeof(int) * 5);
if (ptr == NULL) {
printf("Memory allocation failed\n");
return 1;
}
for (int i = 0; i < 5; i++) {
ptr[i] = i * 10;
}
for (int i = 0; i < 5; i++) {
printf("Value at index %d: %d\n", i, ptr[i]);
}
free(ptr);
return 0;
}
第四章:数组、字符串和结构体
4.1 二维数组
#include <stdio.h>
int main() {
int arr[3][3];
int i, j;
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
arr[i][j] = i * 3 + j;
}
}
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
printf("%d ", arr[i][j]);
}
printf("\n");
}
return 0;
}
4.2 字符串处理
#include <stdio.h>
#include <string.h>
int main() {
char str1[] = "Hello";
char str2[] = "World";
printf("Concatenated String: %s\n", strcat(str1, str2));
printf("Length of String: %ld\n", strlen(str1));
return 0;
}
4.3 结构体
#include <stdio.h>
struct Person {
char name[50];
int age;
float salary;
};
int main() {
struct Person p;
strcpy(p.name, "John Doe");
p.age = 30;
p.salary = 50000.0;
printf("Name: %s\n", p.name);
printf("Age: %d\n", p.age);
printf("Salary: %.2f\n", p.salary);
return 0;
}
第五章:文件操作和输入输出
5.1 文件读写
#include <stdio.h>
int main() {
FILE *file = fopen("example.txt", "w");
if (file == NULL) {
printf("File opening failed\n");
return 1;
}
fprintf(file, "Hello, World!\n");
fclose(file);
file = fopen("example.txt", "r");
if (file == NULL) {
printf("File opening failed\n");
return 1;
}
char buffer[100];
while (fgets(buffer, sizeof(buffer), file)) {
printf("%s", buffer);
}
fclose(file);
return 0;
}
第六章:高级特性
6.1 预处理器指令
#include <stdio.h>
#define PI 3.14159
int main() {
printf("The value of PI is: %f\n", PI);
return 0;
}
6.2 链表
#include <stdio.h>
#include <stdlib.h>
struct Node {
int data;
struct Node *next;
};
void insertAtBeginning(struct Node **head, int data) {
struct Node *newNode = (struct Node *)malloc(sizeof(struct Node));
newNode->data = data;
newNode->next = *head;
*head = newNode;
}
void printList(struct Node *node) {
while (node != NULL) {
printf("%d ", node->data);
node = node->next;
}
printf("\n");
}
int main() {
struct Node *head = NULL;
insertAtBeginning(&head, 3);
insertAtBeginning(&head, 2);
insertAtBeginning(&head, 1);
printList(head);
return 0;
}
结语
通过以上224个经典代码案例,你将能够快速掌握C语言的编程技巧。这些案例涵盖了C语言的基础语法、函数、指针、数组、字符串、结构体、文件操作以及一些高级特性。通过实践这些代码,你将能够更好地理解C语言的精髓,并在实际的编程工作中运用所学知识。祝你学习愉快!
