←

C 语言程序设计 · C语言

C 语言程序的结构

C 语言程序的结构

结构化讲义

S1-1 · 3 个大纲考点讲义 · 已精编

练本节题目

S1-1.1

程序的构成,main 函数和其他函数。

精编讲义 v1#

C 语言源程序与执行全流程

必记
  • C 语言是一门面向过程的结构化高级程序设计语言,兼顾高级语言易读性与底层内存操作能力。
  • 源程序文件扩展名为 .c,经编译(Compile)生成二进制目标文件 .obj,再与标准库函数链接(Link)生成可执行文件 .exe。
  • 计算机硬件只能直接执行二进制机器指令,C 源程序与 .obj 目标文件均不能直接运行。

C 程序函数构成与结构化设计框架

标准 C 程序结构示例(先声明、后调用)

c
#include <stdio.h>

/* 函数声明:若自定义函数定义在 main 之后,调用前必须先声明 */
int add(int a, int b);

int main(void) {
    int x = 10, y = 20; // 变量先定义后使用
    int result = add(x, y);
    printf("sum = %d\n", result);
    return 0;
}

/* 自定义函数定义:函数首部 + 函数体 {} */
int add(int a, int b) {
    return a + b;
}

高频判断与选择易错点

必记

复习提示

随堂自测(3 题 · 共 322 道关联题)展开作答
判断1 分自测不计入学习进度

C 语言程序中的 main( )函数必须放在程序的开始部分.

多选2 分自测不计入学习进度

下列不属于 C 语言特点的是( )

多选2 分自测不计入学习进度

(3 分)【多选题】对 C 语言来说,下列标识符中哪些是不合法的?

S1-1.2

头文件,数据说明,程序注释。

精编讲义 v1#

文件包含预处理(#include)规则

必记
  • 调用标准库函数前需通过 #include 引入对应头文件;预处理指令以 # 开头,行末不加分号。
  • #include <文件名>:直接到系统标准库目录查找,用于 <stdio.h>、<math.h>、<string.h>、<stdlib.h> 等标准头文件。
  • #include "文件名":先在当前源文件所在目录查找,找不到再去系统标准库目录查找,常用于自定义头文件。

常用标准头文件与基本数据类型字节数对照

<stdio.h>

头文件或 32 位字节
标准输入输出
64 位字节
标准输入输出
典型用途与说明
printf, scanf, getchar, putchar, fopen, fclose

<string.h>

头文件或 32 位字节
字符串处理
64 位字节
字符串处理
典型用途与说明
strlen, strcpy, strcat, strcmp, memset

<math.h>

头文件或 32 位字节
数学函数
64 位字节
数学函数
典型用途与说明
sqrt, pow, fabs, sin, cos(返回值多为 double)

<stdlib.h>

头文件或 32 位字节
标准通用库
64 位字节
标准通用库
典型用途与说明
malloc, calloc, free, atoi, atof, rand, exit

char

头文件或 32 位字节
1 字节
64 位字节
1 字节
典型用途与说明
字符型 / 单字节整数(1 Byte = 8 bit)

short

头文件或 32 位字节
2 字节
64 位字节
2 字节
典型用途与说明
短整型

int / float

头文件或 32 位字节
4 字节
64 位字节
4 字节
典型用途与说明
基本整型 / 单精度浮点型

double / long long

头文件或 32 位字节
8 字节
64 位字节
8 字节
典型用途与说明
双精度浮点型 / 64 位长整型

程序注释的语法与编译特性

必记
  • 单行注释:以 // 开始,持续到本行末尾。
  • 块注释(多行注释):以 /* 开始,到**最近遇到的第一个 */ 结束**;/* ... */ 块注释绝对不能嵌套。
  • 编译特性:注释在预处理阶段会被替换为一个空格,不产生任何目标代码,对程序运行速度与体积无任何影响。
随堂自测(3 题 · 共 35 道关联题)展开作答
单选2 分自测不计入学习进度

以下关于引用头文件描述,正确的是()。

填空2 分自测不计入学习进度

C语言中的引用头文件使用#____<>或""来完成。

判断1 分自测不计入学习进度

文件包含是不能嵌套的,即在一个被包含文件中不能包含另一个被包含文件。( )

S1-1.3

源程序的书写格式。

精编讲义 v1#

C 源程序书写强制性语法规则

必记
  • C 语言严格区分大小写:所有关键字(如 int, if, return)和标准库函数名必须全部使用小写字母;Main 或 PRINTF 均不是原关键字/库函数。
  • 分号 ; 是 C 语句的组成部分(而不仅是分隔符):每条执行语句、变量定义、函数声明末尾必须有分号;单独一个 ; 构成合法的空语句。
  • 不加分号的 3 类位置:预处理指令(#include、#define)末尾、函数定义首部 int main(void) 末尾、复合语句右花括号 } 之后(结构体/数组初始化除外)。
  • 复合语句(语句块):用一对花括号 {} 括起来的多条语句在语法上视为一条单语句,可出现在任何允许单语句的位置(如 if / for 分支内)。

自由书写格式与编码规范

复习提示

随堂自测(3 题 · 共 80 道关联题)展开作答
判断1 分自测不计入学习进度

在调试程序时,如果暂时不让某些语句执行,可在这些语句两端加上 “/*” 和 “/*”。

单选2 分自测不计入学习进度

以下叙述中错误的是____。

填空2 分自测不计入学习进度

C 语言程序中每条语句必须以____结束。