4、硕彦博创李飞授——C语言变量,运算符,流程控制

2023-10-21 06:59

本文主要是介绍4、硕彦博创李飞授——C语言变量,运算符,流程控制,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

重点标记 : ******

C语言变量:

1.程序  =  数据结构  + 算法数据:分类:根据是否可以改变分为:常量与变量C语言的三大基本类型1.整型2.字符型3.浮点型查看类型的空间大小:sizeof(常量/变量/类型);
·					整型:短整型short  基本整型int  长整型long2byte				4byte			4byte整型分为:整型常量和整型变量整型常量:十进制,八进制(0开头),十六进制(0x开头)%d  %o %x整型变量:1,定义变量:分配空间类型   变量名;PS:不能再同一函数中,重名定义变量;short a ; ------>给A分配2byte直接的空间  就是16个bitunsigned :   无符号  signed  有符号    默认(signed)											unsigned short a ; [ ] [ ] [ ] [ ] [ ]  [ ] [ ] [  ] [ ] [ ] [ ] [  ] [ ] [ ] [ ] [ ] 最小值:0000 0000 0000 0000 最大值;1111 1111 1111 1111以上只是正数范围:如果值为负数是:														******【】[ ][ ][ ][ ][ ][ ][ ]  [ ][ ][ ][ ][ ][ ][ ] [ ]最高位位符号位:0  +     1 :-1 111 1111 1111 1111  -32768    (-0   就等于  32768) ******0 111 1111 1111 1111  32767   PS:   正数以原码存储   ,取出正数是  , 以原码取出负数以补码存储	,取出负数是, 将补码转换成原码取出	取出时,计算机是以0 和 1 判定是正是负  (理解)如图示:

在这里插入图片描述

									2.1.类型  变量名 = 值 ; 2.2 类型  变量名  ;变量名  = 值 ; 2.1叫初始化,2.2并不是初始化,是赋值(这点切记)3.引用变量:通过变量名 , 来引用变量空间的内容PS:这三点贯穿整个c语言,一定切记字符型:字符常量和变量字符常量 : 数字字符('0'),字符(‘a-z’)计算机只能识别二进制  ,  所以有特定的二进制序列来代表字符  ----》称为ascii表ASCII表: a  --- 97      A ---65    ‘0’-----》48计算机中还有一些特殊的字符:转移字符  :“\n”:换行符    “\t”:tab键   ‘\0’:空字符字符变量:1、定义变量:类型(char)   变量名  ;2、初始化变量:3、引用变量:浮点型:浮点常量和浮点变量浮点型常量:十进制 3.14  科学计数法(也叫指数(e为10)表示法  ): 3e1  浮点型变量 : float (单精度) 	:4bytedouble(双精度):8byte程序   =  算法+数据算法基础:就是运算符 和流程控制

运算符:(*****)

		弄懂:结合性优先级溢出	:	等位赋值运算符表达式: 有运算的结果

空间大小运算符:
sizeof();

	运算符和函数的区别:运算符 没有()函数 有()int a;Ps:sizeof  a  可以没有括号在不同的编译器中可能会有不同,我用的是GCC

在这里插入图片描述

1.算数运算符:+ , - , * ,/ , %

Ps:	1、同类型运算时,得同类型结果2、不同类型运算时,发生隐式转换 整型%整型 = 余

2.赋值运算符:= , += , -= (从右向左)

PS:		2.1、100=a;  //err:左侧必须是左值(变量):2.2、溢出:(等位赋值)//凡是空间,都必须考虑满的情况

在这里插入图片描述

2.3、不同类型之间赋值:

在这里插入图片描述
PS: 整型变量:只能存放整型的值
浮点型变量: 只能存放小数的值

3、隐式类型转换:

	1.大小不一时:(C语言是强类型语言,在运算过程中,必须转换成相同的类型进行转换):小位转高位short  ---》 intint	-----》long float ---> double2.不同类型int  ---》doublechar ----》int

在这里插入图片描述
强制类型转换:
(类型)变量;
例如:
float a = 3.14;
(int)a ----->3

4、判断运算符:> < >= <= != ==
结果 :真1 假0
5、逻辑运算符:&& , || , ! (从左往右结合)

		表达式1 ||  表达式2       一真则真,(只要表达式1的值为真就不用看表达式2的值-----》提高效率)表达式1&&表达式2		一假则假  !表达式Ps:表达式结果非0即为真,0为假

6、三目运算符 (?:)
结果= 表达式1?表达式2:表达式3
如果表达式1为真,结果等于表达式2的值,反之,结果等于表达式3的值
在这里插入图片描述

7、自增自减
前自加:++i; 总结:(i)先自加,(结果)后取值
后自加:i++; 总结:(结果)先取值,(i)后自加
在这里插入图片描述

8.括号运算符(优先级运算符) , (优先级最高,先内在外)
(表达式)

流程控制:

			1.代码指令的执行流程首先了解:空语句  :指令为空;2.语句块	{语句1,语句2,。。。。}2.流程分类:顺序流程:从上往下逐条执行选择控制:指令带有条件,当条件为真时才执行2.1单分支if:if(表达式)语句;//if后面只有一条语句,可以不用花括号2.2	双分支 if:if(表达式){语句块1;}else{语句块2;}2.3  多分支ifif(表达式){语句块1;}else if(表达式1){语句块2;}else if(表达式2){语句块3;}。。。。else if(表达式n){语句块n;}else{语句块;}2.4.if嵌套if(表达式1){if(表达式2){.......}else{.....}}else{if(表达式){.......}else{......}	}

在这里插入图片描述
在这里插入图片描述

	多分支:switch

拓展:
a = 1234 ;
第一位:a/1000;
第二位:a/100%10;

这篇关于4、硕彦博创李飞授——C语言变量,运算符,流程控制的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/252706

相关文章

使用Go语言开发一个命令行文件管理工具

《使用Go语言开发一个命令行文件管理工具》这篇文章主要为大家详细介绍了如何使用Go语言开发一款命令行文件管理工具,支持批量重命名,删除,创建,移动文件,需要的小伙伴可以了解下... 目录一、工具功能一览二、核心代码解析1. 主程序结构2. 批量重命名3. 批量删除4. 创建文件/目录5. 批量移动三、如何安

python使用fastapi实现多语言国际化的操作指南

《python使用fastapi实现多语言国际化的操作指南》本文介绍了使用Python和FastAPI实现多语言国际化的操作指南,包括多语言架构技术栈、翻译管理、前端本地化、语言切换机制以及常见陷阱和... 目录多语言国际化实现指南项目多语言架构技术栈目录结构翻译工作流1. 翻译数据存储2. 翻译生成脚本

Linux流媒体服务器部署流程

《Linux流媒体服务器部署流程》文章详细介绍了流媒体服务器的部署步骤,包括更新系统、安装依赖组件、编译安装Nginx和RTMP模块、配置Nginx和FFmpeg,以及测试流媒体服务器的搭建... 目录流媒体服务器部署部署安装1.更新系统2.安装依赖组件3.解压4.编译安装(添加RTMP和openssl模块

0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型的操作流程

《0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeekR1模型的操作流程》DeepSeekR1模型凭借其强大的自然语言处理能力,在未来具有广阔的应用前景,有望在多个领域发... 目录0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型,3步搞定一个应

浅析如何使用Swagger生成带权限控制的API文档

《浅析如何使用Swagger生成带权限控制的API文档》当涉及到权限控制时,如何生成既安全又详细的API文档就成了一个关键问题,所以这篇文章小编就来和大家好好聊聊如何用Swagger来生成带有... 目录准备工作配置 Swagger权限控制给 API 加上权限注解查看文档注意事项在咱们的开发工作里,API

Go语言中三种容器类型的数据结构详解

《Go语言中三种容器类型的数据结构详解》在Go语言中,有三种主要的容器类型用于存储和操作集合数据:本文主要介绍三者的使用与区别,感兴趣的小伙伴可以跟随小编一起学习一下... 目录基本概念1. 数组(Array)2. 切片(Slice)3. 映射(Map)对比总结注意事项基本概念在 Go 语言中,有三种主要

C语言中自动与强制转换全解析

《C语言中自动与强制转换全解析》在编写C程序时,类型转换是确保数据正确性和一致性的关键环节,无论是隐式转换还是显式转换,都各有特点和应用场景,本文将详细探讨C语言中的类型转换机制,帮助您更好地理解并在... 目录类型转换的重要性自动类型转换(隐式转换)强制类型转换(显式转换)常见错误与注意事项总结与建议类型

springboot启动流程过程

《springboot启动流程过程》SpringBoot简化了Spring框架的使用,通过创建`SpringApplication`对象,判断应用类型并设置初始化器和监听器,在`run`方法中,读取配... 目录springboot启动流程springboot程序启动入口1.创建SpringApplicat

通过prometheus监控Tomcat运行状态的操作流程

《通过prometheus监控Tomcat运行状态的操作流程》文章介绍了如何安装和配置Tomcat,并使用Prometheus和TomcatExporter来监控Tomcat的运行状态,文章详细讲解了... 目录Tomcat安装配置以及prometheus监控Tomcat一. 安装并配置tomcat1、安装

MySQL的cpu使用率100%的问题排查流程

《MySQL的cpu使用率100%的问题排查流程》线上mysql服务器经常性出现cpu使用率100%的告警,因此本文整理一下排查该问题的常规流程,文中通过代码示例讲解的非常详细,对大家的学习或工作有一... 目录1. 确认CPU占用来源2. 实时分析mysql活动3. 分析慢查询与执行计划4. 检查索引与表