C中的运算和数据类型

这篇具有很好参考价值的文章主要介绍了C中的运算和数据类型。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

运算

进行加法运算的+和进行乘法运算的*等符号,称为运算。本章我带大家进入基本运算符的学习

运算符和操作数

读取两个整数的值,然后显示出它们的和、差、积、商和余数。
代码如下:

#include<stdio.h>

int main()
{
	int x = 0;
	int y = 0;
	puts("请输入两个整数。");
	printf("整数x:");
	scanf("%d", &x);
	printf("整数y:");
	scanf("%d", &y);

	printf("x+y=%d\n", x + y);
	printf("x-y=%d\n", x - y);
	printf("x*y=%d\n", x * y);
	printf("x/y=%d\n", x / y);
	printf("x%%y=%d\n", x % y);

	return 0;
}

像+ - * / %这样可以进行运算的符号称为运算符,作为运算对象的变量或常量称为操作符
image.png
运算符左边的操作数称为第一操作数或者左操作数,运算符右侧的操作数称为第二操作数或者右操作数

乘除运算符和加减运算符

上述代码中使用的5个运算符,可以大致的分为乘除运算符和加减运算符。
image.png
image.png

除法运算的商和余数

除法运算符有两种。通过除法运算符求商的运算符是/。
整数/整数 商的整数部分
除法运算只取商的整数部分,也就是说会舍弃小数点以后的部分。例如:5/3的结果是1,3/5的结果是是0。
整数%整数 余数
%是求余数运算符。例如:5%3的结果是2,3%5的结果是3。

使用printf函数输出%

在printf函数中的%符号具有转换说明的功能,当不需要转换的时候要写成%%,这样就可以输出%这个符号了。

获取整数的最后一位数字

通过应用求余数的运算来获取整数的最后一位数字。例如:
代码如下:

#include<stdio.h>

int main()
{
	int n = 0;
	printf("请输入一个整数:");
	scanf("%d", &n);

	printf("最后一位数是%d。", n % 10);
	return 0;
}

运行结果如下:
image.png
进行除法运算的/运算符和%运算符的结果依赖与编译器。

当两个操作数都是正数的时候

不管是那种编译器,商和余数都是正数。如下:

C中的运算和数据类型

两个操作数至少有一个为负数

至于/运算符的结果是”小于代数商的最大整数“还是”大于代数商的最小整数“,要取决于编译器。例如:

C中的运算和数据类型

多个转换说明

读取两个整数,并显示它们的商和余数。
代码如下:

#include<stdio.h>

int main()
{
	int a = 0;
	int b = 0;
	puts("请输入两个整数");
	scanf("%d %d", &a, &b);
	printf("%d除以%d得%d余%d。\n", a, b, a / b, a % b);
	return 0;
}

运行结果如下:
image.png

单目操作符

对读取的整数进行符号取反操作,并输出结果。
代码如下:

#include<stdio.h>

int main()
{
	int n = 0;
	printf("请输入一个整数:");
	scanf("%d", &n);

	printf("符号取反之后的值是%d。\n", -n);
	return 0;
}

运行结果如下:
image.png
根据我们操作符操作的操作数来确定是单目、双目还是三目操作符。在上述代码种的-运算符,就是对符号进行取反操作。

表达式和赋值表达式

表达式由变量和常量,以及连接它们的运算符组成。例如:
x+32 进行加法运算的表达式
x+32和x、32都是表达式
c=x+32 赋值表达式

表达式语句

C语言规定语句必须以分号结尾,因此前面提到的赋值表达式写成以下形式,才能成为正确的语句。
c=x+32; 表达式语句
这种由表达式和分号组成的语句称为表达式语句

数据类型

数据类型有很多浮点型和整数型。下面主要讲下double类型。

求平均值

读取两个数,求出它们的平均值
代码如下:

#include<stdio.h>

int main()
{
	int a = 0;
	int b = 0;
	puts("请输入两个整数:");
	scanf("%d %d", &a, &b);

	printf("它们的平均值是%d。\n", (a + b) / 2);
	return 0;
}

运行结果:
image.png
将表达式a+b括起来的(),优先级运算的标记。如果该表达式是a+b/2,结果就变成了求a和b/2的和,这与我们平时所做的数学计算相同,及要遵循先乘除后加减。

数据类型

现实生活中的平均值一般都带有小数,但是我们通过上面的案例可以得知,小数点以后的部分被舍弃了,只是留下了整数部分,这就是int类型的特征。
C语言中以浮点数表示实数,浮点数有几种类型,我们主要讲下双精度浮点数double。代码如下:

#include<stdio.h>

int main()
{
	int n = 0;
	double x = 0;

	n = 9.99;
	x = 9.99;
	
	printf("int 型变量n的值:%d\n", n);
	printf("          n/2:%d\n", n / 2);

	printf("double型变量x的值:%f\n", x);
	printf("            x/2.0:%f\n ", x / 2.0);
	return 0;
}

运行结果:
image.png
我们声明一个int类型变量n和一个double类型变量x,并把9.99作为值赋给他们,当给一个int类型的变量的时候,小数点后面的部分就被舍弃了。当使用它进行除法运算的时候,小数部分还是会被舍弃的。
同时还需要注意的是使用printf函数打印浮点型数据的时候,转换说明不能用%d要使用%f。

数据类型和对象

从前面的程序可以看出来int类型只能存放整数,即使把实数传给它,也只能保留整数部分。与之相对,浮点数中的double类型可以用来存储包含小数的实数值。

总结

image.png
image.png文章来源地址https://www.toymoban.com/news/detail-478551.html

到了这里,关于C中的运算和数据类型的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • PTA 习题3.6 一元多项式的乘法与加法运算

    设计函数分别求两个一元多项式的乘积与和。 输入格式: 输入分2行,每行分别先给出多项式非零项的个数,再以指数递降方式输入一个多项式非零项系数和指数(绝对值均为不超过1000的整数)。数字间以空格分隔。 输出格式: 输出分2行,分别以指数递降方式输出乘积多项式

    2024年02月07日
    浏览(29)
  • SQL 算术运算符:加法、减法、乘法、除法和取模的用法

    存储过程是一段预先编写好的 SQL 代码,可以保存在数据库中以供反复使用。它允许将一系列 SQL 语句组合成一个逻辑单元,并为其分配一个名称,以便在需要时调用执行。存储过程可以接受参数,使其更加灵活和通用。 创建存储过程的语法如下: 执行存储过程的语法如下:

    2024年02月05日
    浏览(47)
  • 题02-线性结构2 一元多项式的乘法与加法运算(C语言)

    设计函数分别求两个一元多项式的乘积与和。 输入格式: 输入分2行,每行分别先给出多项式非零项的个数,再以指数递降方式输入一个多项式非零项系数和指数(绝对值均为不超过1000的整数)。数字间以空格分隔。 输出格式: 输出分2行,分别以指数递降方式输出乘积多项式

    2024年02月07日
    浏览(31)
  • 在simulink中进行矩阵的乘法运算

    双击 product 选择为 Matirx 要使用 Reshape 将矩阵排列成矩阵模式 Matlab 的是按列读取向量,按列放置向量 1*4 向量或者 4*1 向量,MATLAB 都只认为是 4 维向量,而不是分别的行向量或者列向量 使用矩阵乘法,必须 reshape 重塑矩阵维度

    2024年02月11日
    浏览(35)
  • C中的运算和数据类型

    进行加法运算的+和进行乘法运算的*等符号,称为运算。本章我带大家进入基本运算符的学习 读取两个整数的值,然后显示出它们的和、差、积、商和余数。 代码如下: 像+ - * / %这样可以进行运算的符号称为 运算符 ,作为运算对象的变量或常量称为 操作符 。 运算符左边的

    2024年02月08日
    浏览(20)
  • python中@运算符和*运算符在矩阵乘法中的区别与作用

      我们在看python程序时,经常可以看到@运算符和*运算符,其中@运算符在传统python中通常是作为装饰器使用的。但是在Python 3.5之后,它又具备了矩阵乘法运算的功能。下面使用示例来对比这两个运算符对矩阵运算的影响:   导入用到numpy包:   创建一个维度为2×3×3的

    2024年02月12日
    浏览(33)
  • 【数据结构】数组和字符串(十):稀疏矩阵的链接存储:十字链表的矩阵操作(加法、乘法、转置)

    【数据结构】数组和字符串(一):矩阵的数组表示   矩阵是以按行优先次序将所有矩阵元素存放在一个一维数组中。但是对于特殊矩阵,如对称矩阵、三角矩阵、对角矩阵和稀疏矩阵等, 如果用这种方式存储,会出现大量存储空间存放重复信息或零元素的情况,这样会造

    2024年02月08日
    浏览(43)
  • 【数据结构】15 队列应用实例:多项式加法运算

    我们准备采用不带头节点的单向链表结构表示一元多项式,并按照指数递减的顺序排列各项。 对列表存放的两个多项式进行加法运算时,可以使用两个指针p1和p2。初始时的p1和p2分别指向这两个多项式第1个节点(指数的最高项)。通过循环不断比较p1和p2所指的节点,比较结

    2024年02月21日
    浏览(29)
  • 如何对JS 中的数据类型进行检测

    typeof操作符可以用来检测一个值的数据类型,返回一个表示数据类型的字符串。 console.log(typeof null); // object(注意这是一个历史遗留问题,null被错误地判断为\\\"object\\\") 原因 : 当JavaScript在内部判断一个值的类型时,会使用一个表示类型的标记位。在表示对象的标记位中,nu

    2024年02月11日
    浏览(27)
  • 大数计算(大数加法/大数乘法)

    🐶博主主页: @ᰔᩚ. 一怀明月ꦿ  ❤️‍🔥 专栏系列: 线性代数,C初学者入门训练,题解C,C的使用文章,「初学」C++ 🔥 座右铭: “不要等到什么都没有了,才下定决心去做” 🚀🚀🚀大家觉不错的话,就恳求大家点点关注,点点小爱心,指点指点🚀🚀🚀 目录 概念

    2024年02月13日
    浏览(27)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包