news 2026/4/3 4:42:42

C语言变量和算数操作符全解析1

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
C语言变量和算数操作符全解析1

创建变量

前文我们了解清楚了类型,其实类型就是用来创建变量的。

我们把C语言中经常变化的值称为变量,不变的值成为常量

变量创建的语法形式:数据类型+变量名

并且,我们给创建的变量一个初始值(比如0),这就叫初始化

补充:一个局部变量不初始化,默认为随机值;一个全局变量不初始化,默认为0。

变量的分类

全局变量

大括号外部定义的变量

局部变量

大括号内部定义的变量

那么该如何运用它们呢?以下我给出代码进行演示

#include <stdio.h> int a = 10; int main() { { int a = 100; printf("%d\n", a); } printf("%d\n",a); return 0; }

运行结果如下:

如果再深入进行挖掘,只打印大括号内部的变量,但我们定义两个变量,结果该如何?

代码如下

#include <stdio.h> int a = 100; int main() { int a = 10; { printf("%d\n",a); } return 0; }

代码结果如图所示

由结果可知,如果局部变量和全局变量同名是,局部变量优先使用

补充

在学习C语言时,我们比较关注内存中的三个区域:栈区、堆区、静态区

  • 局部变量放在内存的栈区
  • 全局变量放在内存的静态区
  • 堆区是用来动态内存管理的

算数操作符+、-、*、/、%

以上这些操作符都是双目操作符,那么为什么叫双目呢?其实是因为这些操作符需要两个操作数。

eg:a=3+5(+为操作符,3和5为操作数)

+和-

分别用来完成加法和减法

我们用代码进行演示:

#include <stdio.h> int main() { int a = 6 + 2; int b = 6 - 2; printf("%d\n",a); printf("%d\n",b); return 0; }

结果如下:

*

用来完成乘法

代码演示:

#include <stdio.h> int main() { int a = 3 * 5; printf("%d\n",a);//第一种方法 int num = 3; printf("%d\n",num*num);//第二种方法 return 0; }

代码结果如下

注意:C语言中并没有提供平方的操作符,但是我们可以用pow(x,y);来表示

/

用来完成除法

注意:除号的两端如果是整数,得到的结果也是整数,坚持用%f来打印,最后也是错误的。

我们通过以下代码来进行证明

#include <stdio.h> int main() { printf("%d\n",6/3);//结果为2 printf("%d\n",6/4);//结果为1 printf("%f\n",6/4);//结果错误 printf("%f\n",6.0/4);//结果正确为1.5 //除号的两端都是整数的时候,计算的是整数除法,结果是整除之后的商 //%f专门用来打印浮点数 //%lf打印double类型的浮点数 return 0; }

代码运行结果如下

由结果可知,要想得到浮点数的结果,两个运算数必须至少有一个浮点数,这时C语言才会进行浮点数整除。

若写int a=3.5;,则会直接把小数点后面的数去掉

%

取模/取余,得到的是整除之后的余数(这个运算符只能用于整数,不能用于浮点数

代码演示如下:

#include <stdio.h> int main() { printf("%d\n", 6 % 4); printf("%d\n", 11% 5); printf("%d\n", -11 % 5); printf("%d\n", -11 % -5); return 0; }

代码结果如图所示:

由结果可知,取模结果的正负号取决于第一个数字的正负号

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/1 5:44:30

证券研报自动生成系统:Llama-Factory金融场景落地

证券研报自动生成系统&#xff1a;Llama-Factory金融场景落地 在券商研究部门&#xff0c;一位分析师正面临这样的日常&#xff1a;每周要产出3到5份深度报告&#xff0c;每一份都需梳理财报数据、分析行业趋势、评估估值模型&#xff0c;最后组织成数千字的专业文本。即便经验…

作者头像 李华
网站建设 2026/3/29 12:01:19

ThinkPHP+Uniapp开源万能表单源码系统,企业私有化部署与二次开发

温馨提示&#xff1a;文末有资源获取方式 核心技术架构&#xff1a;稳定、高效、全栈可控的基石 系统的生命力源于其坚实的技术内核。采用经典的ThinkPHP后端框架&#xff0c;确保了代码的规范性、安全性与高性能的并发处理能力&#xff1b;搭配MySQL数据库&#xff0c;保障了…

作者头像 李华
网站建设 2026/4/1 4:30:08

springboot基于vue的儿童综合素养培训管理系统设计与实现_sc3z6fiv

目录已开发项目效果实现截图开发技术系统开发工具&#xff1a;核心代码参考示例1.建立用户稀疏矩阵&#xff0c;用于用户相似度计算【相似度矩阵】2.计算目标用户与其他用户的相似度系统测试总结源码文档获取/同行可拿货,招校园代理 &#xff1a;文章底部获取博主联系方式&…

作者头像 李华
网站建设 2026/4/1 12:57:33

基于CNN-LSTM锂电池SOC估计,MATLAB代码,二维图+三维图

MATLAB 代码基于 CNN-LSTM 混合神经网络的电池 SOC&#xff08;State of Charge&#xff09;预测&#xff1a;一、主要功能 该代码实现了一个电池 SOC 预测模型&#xff0c;使用卷积神经网络&#xff08;CNN&#xff09;与长短期记忆网络&#xff08;LSTM&#xff09;结合的混合…

作者头像 李华
网站建设 2026/4/2 11:01:08

SOAP 语法

SOAP 语法 概述 SOAP(Simple Object Access Protocol)是一种轻量级、简单的协议,用于在网络上交换结构化信息。它基于XML格式,支持多种传输协议,如HTTP、SMTP等。SOAP主要用于实现不同系统之间的互操作性,特别是在Web服务领域。 本文将详细介绍SOAP的语法,包括其基本…

作者头像 李华
网站建设 2026/4/2 19:46:09

深入Ascend C:华为昇腾AI芯片的高性能编程语言详解

引言 随着人工智能技术的迅猛发展&#xff0c;专用AI加速芯片逐渐成为推动大模型训练与推理的核心硬件。在这一背景下&#xff0c;华为推出的昇腾&#xff08;Ascend&#xff09;系列AI处理器凭借其高能效比、大规模并行计算能力以及完整的软硬件生态体系&#xff0c;迅速在全…

作者头像 李华