1. C语言基础语法

1.1 数据类型

在C语言中,数据类型是定义变量存储类型的方式。以下是C语言中常用的数据类型:

  • 整型(int):用于存储整数,如int age = 25;
  • 浮点型(float):用于存储小数,如float pi = 3.14;
  • 字符型(char):用于存储单个字符,如char grade = 'A';
  • 布尔型(bool):用于存储真(true)或假(false),在C语言中通常使用int类型来表示,如int is_valid = 1;表示真。

1.2 变量和常量

变量是存储在内存中的数据,其值可以改变。常量是存储在内存中的数据,其值在程序运行过程中不能改变。

  • 变量声明:使用关键字intfloatchar等声明变量,如int num;
  • 常量声明:使用关键字const声明常量,如const float PI = 3.14;

1.3 运算符

C语言中包含多种运算符,用于执行算术、逻辑、比较等操作。

  • 算术运算符:如+(加)、-(减)、*(乘)、/(除)、%(取余)
  • 逻辑运算符:如&&(与)、||(或)、!(非)
  • 比较运算符:如==(等于)、!=(不等于)、>(大于)、<(小于)、>=(大于等于)、<=(小于等于)

2. 控制语句

2.1 条件语句

条件语句用于根据条件执行不同的代码块。

  • if语句:根据条件判断执行代码块,如if(age > 18) { ... }
  • if-else语句:根据条件判断执行两个代码块中的一个,如if(age > 18) { ... } else { ... }
  • if-else if-else语句:根据多个条件判断执行不同的代码块,如if(age > 18) { ... } else if(age > 15) { ... } else { ... }

2.2 循环语句

循环语句用于重复执行代码块。

  • for循环:根据循环条件执行代码块,如for(int i = 0; i < 10; i++) { ... }
  • while循环:根据循环条件执行代码块,如while(age > 18) { ... }
  • do-while循环:至少执行一次代码块,然后根据循环条件判断是否继续执行,如do { ... } while(age > 18);

3. 函数

函数是C语言中的基本模块,用于封装代码块,实现代码的复用。

  • 函数声明:使用关键字voidintfloat等声明函数,如void printMessage();
  • 函数定义:在函数声明后面编写函数体,如void printMessage() { printf("Hello, World!"); }
  • 函数调用:使用函数名和参数调用函数,如printMessage();

4. 预处理器

预处理器是C语言中的一个重要特性,用于在编译前处理源代码。

  • 宏定义:使用#define关键字定义宏,如#define PI 3.14
  • 条件编译:使用#ifdef#ifndef#if#else#elif#endif等关键字实现条件编译,如#ifdef DEBUG { ... }

5. 编程实践

5.1 编写简单的C程序

编写一个简单的C程序,实现以下功能:

  1. 输入两个整数,计算它们的和、差、积、商和余数。
  2. 输入一个字符,判断它是大写字母、小写字母还是其他字符。
  3. 输入一个字符串,计算它的长度。

5.2 编写一个计算阶乘的程序

编写一个C程序,计算一个整数的阶乘。例如,计算5!的值。

#include <stdio.h>

int factorial(int n) {
    if (n == 0)
        return 1;
    else
        return n * factorial(n - 1);
}

int main() {
    int num;
    printf("Enter a number: ");
    scanf("%d", &num);
    printf("Factorial of %d = %d\n", num, factorial(num));
    return 0;
}

5.3 编写一个计算素数的程序

编写一个C程序,判断一个整数是否为素数。

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

bool isPrime(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 num;
    printf("Enter a number: ");
    scanf("%d", &num);
    if (isPrime(num))
        printf("%d is a prime number.\n", num);
    else
        printf("%d is not a prime number.\n", num);
    return 0;
}

6. 总结

本章介绍了C语言编程入门的关键知识点,包括数据类型、变量和常量、运算符、控制语句、函数和预处理器。通过学习本章内容,读者可以掌握C语言的基本语法和编程技巧,为后续学习更高级的编程知识打下基础。