C语言必背代码大全

大家好,我是黑客小羊,今天给大家分享一下C语言必背代码大全

C 语言学习中,掌握一些基础且常用的代码模板和功能实现非常重要。以下是一些必备的代码示例,涵盖了 C 语言的核心知识点和常见应用场景:

1. 基本输入输出

c

运行

#include <stdio.h>

int main() {
    // 输出
    printf("Hello, World!\n");
    
    // 输入
    int num;
    printf("请输入一个整数: ");
    scanf("%d", &num);
    printf("你输入的是: %d\n", num);
    
    return 0;
}

2. 数组操作

c

运行

#include <stdio.h>

// 数组遍历
void printArray(int arr[], int size) {
    for (int i = 0; i < size; i++) {
        printf("%d ", arr[i]);
    }
    printf("\n");
}

// 数组最大值
int findMax(int arr[], int size) {
    int max = arr[0];
    for (int i = 1; i < size; i++) {
        if (arr[i] > max) {
            max = arr[i];
        }
    }
    return max;
}

int main() {
    int numbers[] = {3, 7, 1, 9, 4};
    int size = sizeof(numbers) / sizeof(numbers[0]);
    
    printArray(numbers, size);
    printf("最大值: %d\n", findMax(numbers, size));
    
    return 0;
}

3. 字符串操作

c

运行

#include <stdio.h>
#include <string.h>

// 字符串长度
int stringLength(char str[]) {
    int length = 0;
    while (str[length] != '\0') {
        length++;
    }
    return length;
}

// 字符串反转
void reverseString(char str[]) {
    int length = strlen(str);
    for (int i = 0; i < length / 2; i++) {
        char temp = str[i];
        str[i] = str[length - i - 1];
        str[length - i - 1] = temp;
    }
}

int main() {
    char str[] = "Hello";
    printf("原字符串: %s\n", str);
    printf("长度: %d\n", stringLength(str));
    
    reverseString(str);
    printf("反转后: %s\n", str);
    
    return 0;
}

4. 排序算法

c

运行

#include <stdio.h>

// 冒泡排序
void bubbleSort(int arr[], int size) {
    for (int i = 0; i < size - 1; i++) {
        for (int j = 0; j < size - 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};
    int size = sizeof(arr) / sizeof(arr[0]);
    
    bubbleSort(arr, size);
    
    printf("排序后数组: ");
    for (int i = 0; i < size; i++) {
        printf("%d ", arr[i]);
    }
    printf("\n");
    
    return 0;
}

5. 函数递归

c

运行

#include <stdio.h>

// 阶乘计算
int factorial(int n) {
    if (n == 0 || n == 1) {
        return 1;
    }
    return n * factorial(n - 1);
}

// 斐波那契数列
int fibonacci(int n) {
    if (n <= 1) {
        return n;
    }
    return fibonacci(n - 1) + fibonacci(n - 2);
}

int main() {
    printf("5的阶乘: %d\n", factorial(5));
    printf("斐波那契数列第10项: %d\n", fibonacci(10));
    
    return 0;
}

6. 指针操作

c

运行

#include <stdio.h>

// 使用指针交换两个数
void swap(int *a, int *b) {
    int temp = *a;
    *a = *b;
    *b = temp;
}

int main() {
    int x = 10, y = 20;
    printf("交换前: x=%d, y=%d\n", x, y);
    
    swap(&x, &y);
    printf("交换后: x=%d, y=%d\n", x, y);
    
    // 指针与数组
    int arr[] = {1, 2, 3};
    int *ptr = arr;
    printf("数组元素: %d, %d, %d\n", *ptr, *(ptr + 1), *(ptr + 2));
    
    return 0;
}

7. 结构体

c

运行

#include <stdio.h>
#include <string.h>

// 定义结构体
struct Student {
    char name[50];
    int age;
    float score;
};

int main() {
    // 声明结构体变量
    struct Student s1;
    
    // 赋值
    strcpy(s1.name, "张三");
    s1.age = 20;
    s1.score = 95.5;
    
    // 访问
    printf("姓名: %s\n", s1.name);
    printf("年龄: %d\n", s1.age);
    printf("成绩: %.1f\n", s1.score);
    
    return 0;
}

8. 文件操作

c

运行

#include <stdio.h>

int main() {
    // 写入文件
    FILE *file = fopen("example.txt", "w");
    if (file == NULL) {
        printf("无法打开文件\n");
        return 1;
    }
    
    fprintf(file, "Hello, File!\n");
    fputs("这是一个文件操作示例", file);
    fclose(file);
    
    // 读取文件
    char buffer[100];
    file = fopen("example.txt", "r");
    if (file == NULL) {
        printf("无法打开文件\n");
        return 1;
    }
    
    printf("文件内容:\n");
    while (fgets(buffer, sizeof(buffer), file) != NULL) {
        printf("%s", buffer);
    }
    fclose(file);
    
    return 0;
}

这些代码覆盖了 C 语言的基本语法、数组、字符串、函数、指针、结构体和文件操作等核心知识点。在学习过程中,不仅要记住这些代码,更要理解其背后的原理和思想,这样才能在实际编程中灵活运用。随着学习的深入,还可以尝试优化这些代码,或者实现更复杂的功能。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值