第一部分:C语言基础语法入门

1.1 数据类型和变量

在C语言中,变量是用来存储数据的容器。首先,我们需要了解C语言中的基本数据类型,包括整型、浮点型、字符型等。

int age = 18;
float height = 1.75f;
char grade = 'A';

1.2 运算符和表达式

C语言中的运算符包括算术运算符、关系运算符、逻辑运算符等。以下是一些常用的运算符和表达式的示例:

int a = 5, b = 3;
int sum = a + b; // 算术运算符
int isGreaterThan = a > b; // 关系运算符
int isAnd = (a > 0) && (b > 0); // 逻辑运算符

1.3 控制语句

C语言中的控制语句用于控制程序的执行流程。常见的控制语句包括if语句、for循环、while循环等。

// if语句
if (a > b) {
    printf("a大于b");
}

// for循环
for (int i = 0; i < 5; i++) {
    printf("%d\n", i);
}

// while循环
int i = 0;
while (i < 5) {
    printf("%d\n", i);
    i++;
}

第二部分:C语言进阶语法

2.1 函数

函数是C语言中的核心概念之一。以下是一个简单的函数示例:

#include <stdio.h>

// 函数声明
void sayHello();

int main() {
    // 函数调用
    sayHello();
    return 0;
}

// 函数定义
void sayHello() {
    printf("Hello, World!\n");
}

2.2 指针

指针是C语言中的另一个重要概念。以下是一个使用指针的示例:

int a = 10;
int *ptr = &a; // 指针指向变量a的地址

printf("a的值为:%d\n", *ptr); // 输出变量a的值

2.3 静态和动态内存分配

C语言中的内存分配分为静态和动态两种。以下是一个使用动态内存分配的示例:

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

int main() {
    int *array = (int *)malloc(5 * sizeof(int)); // 动态分配内存
    if (array == NULL) {
        printf("内存分配失败\n");
        return 1;
    }

    // 使用分配的内存
    for (int i = 0; i < 5; i++) {
        array[i] = i;
    }

    // 释放内存
    free(array);

    return 0;
}

第三部分:实战项目检验

3.1 计算器

以下是一个简单的C语言计算器项目,它可以执行加、减、乘、除四种运算。

#include <stdio.h>

int main() {
    float num1, num2, result;
    char operator;

    printf("请输入两个数字和一个运算符(+,-,*,/):");
    scanf("%f %f %c", &num1, &num2, &operator);

    switch (operator) {
        case '+':
            result = num1 + num2;
            break;
        case '-':
            result = num1 - num2;
            break;
        case '*':
            result = num1 * num2;
            break;
        case '/':
            if (num2 != 0) {
                result = num1 / num2;
            } else {
                printf("除数不能为0\n");
                return 1;
            }
            break;
        default:
            printf("无效的运算符\n");
            return 1;
    }

    printf("结果是:%f\n", result);

    return 0;
}

3.2 文件操作

以下是一个使用C语言进行文件操作的示例,它可以将一个文本文件的内容复制到另一个文件。

#include <stdio.h>

int main() {
    FILE *source, *target;

    source = fopen("source.txt", "r");
    if (source == NULL) {
        printf("打开源文件失败\n");
        return 1;
    }

    target = fopen("target.txt", "w");
    if (target == NULL) {
        printf("打开目标文件失败\n");
        fclose(source);
        return 1;
    }

    char ch;
    while ((ch = fgetc(source)) != EOF) {
        fputc(ch, target);
    }

    fclose(source);
    fclose(target);

    printf("文件复制成功\n");

    return 0;
}

通过以上学习和实践,相信你已经掌握了C语言的核心语法和实战项目。祝你在C语言的学习道路上越走越远!