C语言作为一种历史悠久且应用广泛的编程语言,对于初学者来说,掌握其基础语法和编程思想至关重要。本文将通过一些经典案例,帮助读者轻松入门C语言编程。

一、C语言基础语法

1. 变量和数据类型

在C语言中,变量是存储数据的地方。常见的变量类型包括整型(int)、浮点型(float、double)、字符型(char)等。

#include <stdio.h>

int main() {
    int a = 10;
    float b = 3.14;
    char c = 'A';
    printf("a = %d, b = %f, c = %c\n", a, b, c);
    return 0;
}

2. 运算符

C语言中的运算符包括算术运算符、关系运算符、逻辑运算符等。

#include <stdio.h>

int main() {
    int a = 5, b = 3;
    printf("a + b = %d\n", a + b); // 算术运算符
    printf("a > b = %d\n", a > b); // 关系运算符
    printf("!(a > b) = %d\n", !(a > b)); // 逻辑运算符
    return 0;
}

3. 控制语句

控制语句用于控制程序的执行流程,包括条件语句(if、if-else、switch)和循环语句(for、while、do-while)。

#include <stdio.h>

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

二、经典案例解析

1. 计算阶乘

阶乘是一个正整数与其所有正整数乘积的结果。例如,5的阶乘(5!)等于5 × 4 × 3 × 2 × 1 = 120。

#include <stdio.h>

int main() {
    int n, i, factorial = 1;
    printf("Enter a positive integer: ");
    scanf("%d", &n);
    for (i = 1; i <= n; i++) {
        factorial *= i;
    }
    printf("%d! = %d\n", n, factorial);
    return 0;
}

2. 求最大公约数

最大公约数(GCD)是两个或多个整数共有的约数中最大的一个。例如,12和18的最大公约数是6。

#include <stdio.h>

int gcd(int a, int b) {
    if (b == 0) {
        return a;
    }
    return gcd(b, a % b);
}

int main() {
    int x, y;
    printf("Enter two positive integers: ");
    scanf("%d %d", &x, &y);
    printf("GCD of %d and %d is %d\n", x, y, gcd(x, y));
    return 0;
}

3. 求素数

素数是只能被1和自身整除的正整数。例如,2、3、5、7等都是素数。

#include <stdio.h>
#include <stdbool.h>

bool is_prime(int n) {
    if (n <= 1) {
        return false;
    }
    for (int i = 2; i * i <= n; i++) {
        if (n % i == 0) {
            return false;
        }
    }
    return true;
}

int main() {
    int n;
    printf("Enter a positive integer: ");
    scanf("%d", &n);
    if (is_prime(n)) {
        printf("%d is a prime number\n", n);
    } else {
        printf("%d is not a prime number\n", n);
    }
    return 0;
}

通过以上经典案例,相信读者已经对C语言编程有了初步的了解。在实际编程过程中,不断练习和积累经验是提高编程能力的关键。祝大家在C语言编程的道路上越走越远!