C语言基础入门阶段

1.C语言概述

一个C语言源程序可以由多个或一个源文件组成。

每个源文件可由一个或多个函数组成。

一个源程序只能有一个main主函数。

源程序有预处理命令,预处理命令通常放在源文件或源程序的最前面。

每一个说明,每一个语句都由分号结尾。

标识符,关键字之间必须至少添加一个空格已示间隔。

2.基本数据类型

2.1数据类型介绍

整数类型:

bool:布尔类型,只有true和false,常用于逻辑判断。

char:字符类型,通常占一个字节,可表示ASCLL字符(如:'a'=97),也可作为小整数使用,有符号时范围约 -128 ~ 127 ,无符号时0-255。

short:短整型,占两个字节,范围-32768-32767或0-65535(无符号)。

int:整型,占 4 个字节,范围约 -2147483648 ~ 2147483647 (有符号)或 0 ~ 4294967295 (无符号 unsigned int )。

long :长整型,占 4 或 8 个字节(取决于平台,Windows 下通常 4 字节,类 Unix 系统常 8 字节),有符号范围更大,无符号版本为 unsigned long 。

ong long :长整型(C++11 及以后支持),占 8 个字节,范围约 -9223372036854775808 ~ 9223372036854775807 (有符号),无符号版本 unsigned long long 。

浮点类型:

用于表示带有小数部分的实数,基于科学计数法存储:

float :单精度浮点型,占 4 个字节,有效数字约 6 - 7 位,精度较低,适合对精度要求不高的场景。

double :双精度浮点型,占 8 个字节,有效数字约 15 - 17 位,精度较高,是浮点运算的常用类型。

long double :扩展精度浮点型,占 8、10 或 16 个字节(取决于平台),精度比 double 更高,但兼容性和性能可能稍差。

2.2数据类型大小

cpp 复制代码
#incldue<stdio.h>

int main(){

printf("char size: %d\n",sizeof(char));//1

printf("short size: %d\n",sizeof(short));//2

printf("int size: %d\n",sizeof(int));//4

printf("long int size: %d\n",sizeof(long int));//4

printf("long long size: %d\n",sizeof(long long));//8

printf("float size: %d\n",sizeof(float));//4

printf("double size: %d\n",sizeof(double));//8

printf("bool size: %d\n",sizeof(bool));//8

}

字节是计算机信息技术用于计量存储的一种计量单位,一个字节8位二进制构成。

2.3标识符,变量,常量

标识符

命名规则:

**字符组成:**标识符只能由字母(包括大写字母 A-Z 和小写字母 a-z )、数字( 0-9 )和下划线( _ )组成。

**开头字符:**标识符必须以字母或者下划线开头,不能以数字开头。比如 age 、 _name 是正确的开头方式,而 2num 不符合规则。

**关键字和保留字:**不能使用 C++ 中的关键(如 if 、 else 、 int 、 class 、 for 等 )和保留字作为标识符。这些词汇在 C++ 语言中有特定的语法含义,被语言本身占用。例如,不能定义变量名为 if ,否则会导致语法错误。

**大小写敏感:**C++ 是大小写敏感的语言,这意味着标识符中字母的大小写是有区别的。 myVar 和 myvar 被视为两个不同的标识符。

常量与变量

变量:变量是以标识符为名字,其数值可以改变。

变量作用域

每一个变量名有一个作用域。

1.全局变量:定义在函数外的变量。

2.局部变量:定义在函数内的变量。

3.程序块中的变量:在函数内部,再复合语句中定义变量。

常量:常量其值不可改变。

计算三角形面积简单代码示例:

cpp 复制代码
#include<stdio.h>

#include<math.h>

int main(){

float a=0.0f;

float b=0.0f;

float c=0.0f;

float d=0.0f;

float e=0.0f;

float f=0.0f;

scanf("%f %f %f",&a,&b,&c);

d=(a+b+c)/2;

e=aqrt(d*(d-a)*(d-b)*(d-c));

printf("a=%f \n",e);

return 0;

}

3.标准输入输出语句

3.1输入语句scanf

定义: scanf 是 C 语言标准库中用于从标准输入(如键盘)读取数据的函数,定义在 <stdio.h> 头文件中,核心作用是按指定格式接收用户输入并存储到变量中。

基本语法:scanf("格式控制字符串", &变量1, &变量2, ...);

格式控制字符串:用占位符(如 %d 、 %f )指定要读取的数据类型,可包含普通字符(需原样输入)。

占位符 对应数据类型 说明
%d int (整型) 读取十进制整数
%c char (字符型) 读取单个字符(包括空格、回车)
%f float (单精度浮点) 读取小数(输入时可写 3.14 )
%lf double (双精度浮点) 读取高精度小数
%s char[] (字符串) 读取字符串(遇空格 / 回车停止)

变量地址:必须传入变量的地址(用 & 符号获取,数组名除外),确保数据能正确写入变量。

3.2输出语句printf

printf 是 C 语言标准库中用于向标准输出(如控制台)打印数据的函数,同样定义在 <stdio.h> 头文件中,核心作用是按指定格式输出变量或常量。

基本语法:printf("格式控制字符串", 表达式1, 表达式2, ...)。

格式符字符串:用占位符指定输出数据的类型和格式,可包含普通字符(直接原样输出)。

占位符 对应数据类型 说明
%d int (整型) 输出十进制整数
%c char (字符型) 输出单个字符
%f float / double 输出小数(默认保留 6 位小数)
%s char[] (字符串) 输出字符串
%x int (整型) 以十六进制(小写)输出整数
%% - 输出百分号( % 本身)

4运算符

4.1赋值运算符

运算符 名称 示例 等价写法
= 简单赋值 a = 5; -
+= 加后赋值 a += 3; a = a + 3;
-= 减后赋值 a -= 2; a = a - 2;
*= 乘后赋值 a *= 4; a = a * 4;
/= 除后赋值 a /= 2; a = a / 2;
%= 取余后赋值 a %= 3; a = a % 3;

4.2算术运算符

运算符 名称 示例 说明
+ 加法 a + b 计算两数之和
- 减法 a - b 计算两数之差
* 乘法 a * b 计算两数之积
/ 除法 a / b 整数除法会截断小数(如 5/2=2 ),浮点数除法保留小数( 5.0/2=2.5 )
% 取余 a % b 求两数相除的余数,仅支持整数(如 5%2=1 )
++ 自增 a++ / ++a a++ 先使用 a 再 + 1, ++a 先 + 1 再使用
-- 自减 a-- / --a 与自增类似,仅操作是 - 1

4.3关系运算符

运算符 名称 示例 说明
== 等于 a == b 判断两值是否相等(注意不是 = )
!= 不等于 a != b 判断两值是否不相等
> 大于 a > b 判断 a 是否大于 b
< 小于 a < b 判断 a 是否小于 b
>= 大于等于 a >= b 判断 a 是否大于或等于 b
<= 小于等于 a <= b 判断 a 是否小于或等于 b

4.4逻辑运算符

运算符 名称

|------|-----|
| && | 逻辑与 |

|---|-----|
| ! | 逻辑非 |

|----|-----|
| | | 逻辑或 |

4.5条件运算符

条件运算符(三目运算符)

格式: 条件 ? 表达式1 : 表达式2 功能:若条件为真,执行表达式 1;若为假,执行表达式 2(可简化 if-else 逻辑)

逗号运算符( , )

格式: 表达式1, 表达式2, ..., 表达式n 从左到右依次执行所有表达式,最终结果取最后一个表达式的值。

取地址运算符( & )与解引用运算符( * )

& :获取变量的地址(如 &a 表示变量 a 在内存中的地址),常用于 scanf 或指针定义。

* :解引用指针,获取指针指向的变量的值(如 *p 表示指针 p 指向的变量的值)。

运算符优先级(核心规则)

运算符优先级决定了表达式中操作的执行顺序,优先级高的先执行;若优先级相同,按 "结合性"(左结合 / 右结合)执行。关键优先级排序(从高到低):

  1. 括号 () (最高)
  1. 自增 / 自减 ++ / -- 、取地址 & 、解引用 *
  1. 算术运算符( * / / / % 高于 + / - )
  1. 关系运算符( > / < / >= / <= 高于 == / != )
  1. 逻辑运算符( ! 高于 && , && 高于 || )
  1. 条件运算符 ? :
  1. 赋值运算符( = / += / -= 等,最低)

ACSll值表

相关推荐
胖咕噜的稞达鸭3 小时前
二叉树搜索树插入,查找,删除,Key/Value二叉搜索树场景应用+源码实现
c语言·数据结构·c++·算法·gitee
清风wxy4 小时前
C语言基础数组作业(冒泡算法)
c语言·开发语言·数据结构·c++·windows·算法
仲星(._.)4 小时前
C语言:自定义类型
c语言·开发语言
懒羊羊不懒@5 小时前
算法入门数学基础
c语言·数据结构·学习·算法
Aurorar0rua5 小时前
C Primer Plus 11.12 复习题
c语言·开发语言
坚持编程的菜鸟7 小时前
LeetCode每日一题——矩阵置0
c语言·算法·leetcode·矩阵
坚持编程的菜鸟13 小时前
LeetCode每日一题——困于环中的机器人
c语言·算法·leetcode·机器人
Aurorar0rua14 小时前
C Primer Plus Notes 09
java·c语言·算法
我是华为OD~HR~栗栗呀18 小时前
华为od-21届考研-C++面经
java·c语言·c++·python·华为od·华为·面试