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 位长整型
| 类别 / 类型 | 头文件或 32 位字节 | 64 位字节 | 典型用途与说明 |
|---|---|---|---|
| <stdio.h> | 标准输入输出 | 标准输入输出 | printf, scanf, getchar, putchar, fopen, fclose |
| <string.h> | 字符串处理 | 字符串处理 | strlen, strcpy, strcat, strcmp, memset |
| <math.h> | 数学函数 | 数学函数 | sqrt, pow, fabs, sin, cos(返回值多为 double) |
| <stdlib.h> | 标准通用库 | 标准通用库 | malloc, calloc, free, atoi, atof, rand, exit |
| char | 1 字节 | 1 字节 | 字符型 / 单字节整数(1 Byte = 8 bit) |
| short | 2 字节 | 2 字节 | 短整型 |
| int / float | 4 字节 | 4 字节 | 基本整型 / 单精度浮点型 |
| double / long long | 8 字节 | 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 语言程序中每条语句必须以____结束。