C语言之运算讲解

目录

运算符和操作数

乘除运算符

除法运算的商和余数

使用printf函数输出%

获取整数的最后一位数

多个转换说明

 练习

单目运算符

赋值运算符

表达式和赋值表达式

表达式语句


进行加法运算的“+”,减法运算的“-”,以及“* /”等符号,称为运算符。接下来我们来学习基本的运算符。

运算符和操作数

读取两个整数的值显示它们的和差积商以及余数。

int main()
{
	int vx, vy;
	
	puts("请输入两个整数:");
	
	printf("整数1:");   scanf("%d",&vx);
	printf("整数2:");   scanf("%d",&vy);
	
    printf("vx + vy = %d\n", vx + vy);
	printf("vx - vy = %d\n", vx - vy);
	printf("vx * vy = %d\n", vx * vy);
	printf("vx / vy = %d \n", vx / vy);
	printf("vx %% vy = %d\n", vx % vy);  //格式化字符串中若有两个连续的%%,则只显示一个%

	
	return 0;
}

vx - vy只是从vx中减去vy的值,并不是实际上的求差运算,如果vy的值比vx大的话结果就为负值。

像“+、-、*、/”这样能够进行运算的符号称为运算符

作为运算对象的常量或变量称为操作数

运算符左边的操作数称为第一操作数或做左操作数,运算符右边的操作数称为第二操作数右操作数

乘除运算符

乘除运算符
双目*运算符             a*b                   a和b的乘积
/运算符                    a/b    a除以b所得到的商(整数之间的运算舍弃小数部分)
%运算符                  a%b  a除以b所得到的余数(a和b必须都是整数)

除法运算的商和余数

1.“/”是求商运算符,只取整数部分。

2,.“%”是求余运算符,5%3的结果是2,3%5的结果是3。

使用printf函数输出%

在上面的一段代码中格式化字符串写的是%%,而单独一个%具有转换说明的作用,不需要转换说明时而只像输出%d时就必须使用两个%d。

注意:当使用不具有转换说明的puts函数时,会直接输出%d%d。

获取整数的最后一位数

让我们来用求余运算来解决这个问题

#include<stdio.h>

int main()
{
	int no;
	
	puts("请输入一个整数:");
	
	printf("整数:");    
    scanf("%d", &no);
	
	printf("该整数的余数是%d", no % 10);
	
	return 0;
}

多个转换说明

读取两个整数并显示它们的商和余数

#include<stdio.h>

int main()
{
	int vx, vy;
	
	puts("请输入两个整数:");
	
	printf("整数1:");    scanf("%d", &vx);

	printf("整数2: ");    scanf("%d", &vy);


	
	printf("vx / vy 的商是%d余数是%d", vy / vy, vx % vy);
	
	return 0;
}

printf("vx / vy 的商是%d余数是%d", vy / vy, vx % vy);

这里的格式化字符串包含了两个转换说明%d,分别对应了vx和vy两个实参。

另外,在使用scanf函数输入数值时,也可使用两个转换说明,比如:

scanf(“%d%d”, &vx, &vy);

 练习

编写一段程序,读取两个整数x和y,显示出前者是后者的百分之几。

单目运算符

我们来编写一个对整数取相反数的程序。

#include<stdio.h>

int main()
{
	int num;
	
	puts("请输入一个整数:");
	
	scanf("%d", &num);
	
	printf("该整数的相反数是%d。\n", - num);
	
	
	return 0;
}

目前为止,我们用到的运算符都需要两个操作数,称为双目运算符

在C语言中,还有用到一个操作数的运算符称为单目运算符,以及用到三个操作数的三目运算符

在上面代码中用于对数值取相反数的运算符就是单目运算符。

赋值运算符

在前面中学习的“=”就称为基本赋值运算符

基本赋值运算符
基本赋值运算符                 a = b             把b的值赋值给a(并不是a与b相等)

基本赋值运算符也称为赋值运算符,为了和后面将要学习到的复合赋值运算符进行区分,我们需要以示区分。

表达式和赋值表达式

表达式通常由变量、常量和连接它们的运算符连接表示。

例如:vx + 32    进行加法运算的表达式

           vy = vx+ 32  赋值表达式

一般情况下,使用@@的运算符的表达式,称为@@的表达式。使用赋值运算符的表达式就称为赋值表达式

表达式语句

由表达式和分号组成的语句称为表达式语句

例如:  vy = vx+ 32 ;

在下一章中我们将会学习if,while等语句之外的表达式语句。

  • 22
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

学海无涯.苦作舟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值