第一章:C语言概述

1.1 C语言的历史与发展

C语言是一种广泛使用的计算机编程语言,由Dennis Ritchie在1972年发明。自从诞生以来,C语言凭借其高效、灵活和强大的功能,成为了操作系统、嵌入式系统、系统软件和应用程序开发的重要工具。

1.2 C语言的特点

  • 简洁明了:C语言语法简洁,易于理解。
  • 高效性:C语言编译后的程序运行速度快,占用内存小。
  • 可移植性:C语言编写的程序可以在不同的操作系统和硬件平台上运行。
  • 丰富的库函数:C语言提供了丰富的标准库函数,方便程序员进行编程。

第二章:C语言基础

2.1 数据类型与变量

C语言中的数据类型包括整型、浮点型、字符型等。变量是存储数据的容器,用于在程序中保存数据。

#include <stdio.h>

int main() {
    int age = 18;
    float height = 1.75;
    char gender = 'M';
    printf("年龄:%d\n", age);
    printf("身高:%f\n", height);
    printf("性别:%c\n", gender);
    return 0;
}

2.2 运算符与表达式

C语言中的运算符包括算术运算符、关系运算符、逻辑运算符等。表达式是由运算符和操作数组成的式子。

#include <stdio.h>

int main() {
    int a = 10, b = 5;
    printf("a + b = %d\n", a + b);
    printf("a - b = %d\n", a - b);
    printf("a * b = %d\n", a * b);
    printf("a / b = %d\n", a / b);
    printf("a % b = %d\n", a % b);
    return 0;
}

2.3 控制语句

C语言中的控制语句包括条件语句、循环语句等,用于控制程序的执行流程。

#include <stdio.h>

int main() {
    int a = 10;
    if (a > 5) {
        printf("a 大于 5\n");
    } else {
        printf("a 不大于 5\n");
    }
    for (int i = 0; i < 5; i++) {
        printf("i = %d\n", i);
    }
    return 0;
}

第三章:C语言进阶

3.1 函数

函数是C语言中的基本组成部分,用于实现模块化编程。

#include <stdio.h>

void printMessage() {
    printf("Hello, World!\n");
}

int main() {
    printMessage();
    return 0;
}

3.2 数组与指针

数组是一种用于存储相同类型数据的数据结构,指针是存储变量地址的数据类型。

#include <stdio.h>

int main() {
    int arr[5] = {1, 2, 3, 4, 5};
    int *ptr = &arr[0];
    printf("arr[0] = %d\n", *ptr);
    return 0;
}

3.3 结构体与联合体

结构体和联合体是C语言中的用户自定义数据类型,用于组织不同类型的数据。

#include <stdio.h>

struct Student {
    int id;
    char name[50];
    float score;
};

int main() {
    struct Student stu;
    stu.id = 1;
    strcpy(stu.name, "张三");
    stu.score = 90.5;
    printf("学生ID:%d\n", stu.id);
    printf("学生姓名:%s\n", stu.name);
    printf("学生成绩:%f\n", stu.score);
    return 0;
}

第四章:C语言实战

4.1 文件操作

C语言提供了丰富的文件操作函数,用于对文件进行读写操作。

#include <stdio.h>

int main() {
    FILE *fp = fopen("example.txt", "w");
    if (fp == NULL) {
        printf("打开文件失败\n");
        return 1;
    }
    fprintf(fp, "Hello, World!\n");
    fclose(fp);
    return 0;
}

4.2 动态内存分配

C语言提供了动态内存分配函数,用于在程序运行时分配内存。

#include <stdio.h>
#include <stdlib.h>

int main() {
    int *arr = (int *)malloc(5 * sizeof(int));
    if (arr == NULL) {
        printf("内存分配失败\n");
        return 1;
    }
    for (int i = 0; i < 5; i++) {
        arr[i] = i;
    }
    free(arr);
    return 0;
}

第五章:C语言学习资源推荐

5.1 书籍推荐

  • 《C程序设计语言》(K&R)
  • 《C和指针》
  • 《C陷阱与缺陷》

5.2 在线资源

5.3 视频教程

第六章:总结

C语言是一种功能强大、应用广泛的编程语言。通过学习C语言,你可以掌握编程的基本概念和技巧,为以后的学习和工作打下坚实的基础。希望本指南能帮助你更好地学习C语言。