news 2026/4/18 8:38:32

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/18 5:33:13

Ascend C 高阶编程艺术:多核协同、流水线调度与异构任务编排实战

引言&#xff1a;从“单算子优化”到“系统级性能工程”在掌握 Ascend C 基础算子开发后&#xff0c;许多开发者会遇到新的瓶颈&#xff1a;即使单个算子已极致优化&#xff0c;端到端推理延迟仍不理想。问题往往出在 任务调度、数据流转、多核协作 等系统层面。昇腾 AI 处理器…

作者头像 李华
网站建设 2026/4/18 7:39:17

震惊!Linux开发板稳定性排行,这家竟碾压群雄!

Linux开发板稳定性排行揭晓&#xff0c;这家企业竟碾压群雄&#xff01;在当今数字化浪潮中&#xff0c;Linux开发板作为嵌入式系统的核心组件&#xff0c;其稳定性直接关系到工业自动化、智能家居、物联网终端等关键应用的可靠性。市场上各类开发板品牌林立&#xff0c;性能参…

作者头像 李华
网站建设 2026/4/18 8:08:18

Day37 模型可视化与推理

一、模型可视化 1. nn.model自带的方法 # nn.Module 的内置功能&#xff0c;直接输出模型结构 print(model) MLP((fc1): Linear(in_features4, out_features10, biasTrue)(relu): ReLU()(fc2): Linear(in_features10, out_features3, biasTrue) ) # nn.Module 的内置功能&a…

作者头像 李华
网站建设 2026/4/18 8:31:45

n8n第十节 把Markdown格式的会议纪要发到企微

朋友们&#xff0c;有没有感觉整理纪要格式很乱&#xff0c;发到企微群里还得截图&#xff0c;别人看着也费劲。今天教你——用n8n工作流&#xff0c;把AI生成的Markdown格式会议纪要&#xff0c;原汁原味直接发到企业微信&#xff01;最大亮点&#xff1a;直接传Markdown格式&…

作者头像 李华
网站建设 2026/4/18 5:37:46

鸡排哥申请个体户,商标名称10年前已被注册!

近日鸡排哥&#xff08;本名李俊永&#xff09;是在江西景德镇因炸鸡排走红的草根摊主&#xff0c;近日注册成立景德镇市珠山区李俊永餐饮管理工作室&#xff0c;经营范围涵盖餐饮管理、食品销售。普推知产商标老杨检索发现&#xff0c;“鸡排哥”在2015年已有上海公司申请注册…

作者头像 李华