C语言入门基础理论知识(三)

目录

数据操作

运算符

算数运算符

自反赋值

自加和自减

关系运算符

关系表达式

逻辑表达式


数据操作

运算符

用来表示运算的符号称为运算符操作符

算数运算符

 +(加)、-(减)、*(乘)、/(除)、%(求余数或者取模)

%的运算规则:

对于a%b,求a被b除所得余数,结果的符号与被除数符号相同。注意:%运算要求参与运算的都必须是整型(字符型)数据,运算所得结果为整型数据。

优先级:+、-是同级为4级;*、/、%同级为3级

结合方向:左结合

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

输出结果:

 

自反赋值

+=(自反加赋值)、-=(自反减赋值)、*=(自反乘赋值)、/=(自反除赋值)、%=(自反模赋值)。

优先级:14级。

结合方向:右结合。

 

自加和自减

++(自加运算符)、--(自减运算符)

自加运算符和自减运算符有两种形式:

1. 前缀形式:++变量、--变量

例如:++i; --i

运算规则是:把i+1或i-1赋值给变量i,而表达式(++i或--i)取变量i被赋值后的值,++i与i=i+1等价、--i与i=i-1等价。

2. 后缀形式:变量++、变量—

运算规则:把i+1或i-1赋值给变量i,而表达式(i++或i --)取变量i被赋值前的值。

注意:在运算符的一侧必须是变量,不能是常量或表达式。

优先级:自加、自减优先级是第二级,高于算术运算符。

结合方向:右结合

总的来说就是前缀形式先“增值”后引用,后缀形式就是先引用后“增值”。

关系运算符

<(小于)、<=(小于等于)、>(大于)、>=(大于等于)、==(等于)、!=(不等于)

优先级:<(小于)、<=(小于等于)、>(大于)、>=(大于等于)优先级相同为6级;==(等于)、!=(不等于)优先级相同为7级。

结合方向:左结合

关系表达式

用关系运算符将连个表达式连接起来所构成的表达式,称为关系表达式。

关系表达式的值只有两个分别是0和1(只要不是0那都是1),关系表达式成立时,值为1,关系表达式不成立时,值为0.

注意:当两个字符进行比较时,是将这两个字符型数据按ASCII值进行比较

逻辑表达式

用逻辑运算符把两个表达式连接起来的式子,称为逻辑表达式。表达式的值只有0和1 。

&&(逻辑与)、||(逻辑或)、!(逻辑非)

优先级:!(逻辑非)的优先级为2级,高于算术运算符;&&(逻辑与)的优先级是11级,||(逻辑或)的优先级是12级;&&和||的优先级都低于关系运算符,高于赋值运算符。

结合方向:!(逻辑非)为右结合,&&和||为左结合

&&(逻辑与)的表达式计算过程:

先计算&&左边的表达式,当表达式值为0时,不再计算右边的表达式;当左边的值为非0时,再计算右边的表达式。

代码

代码

||(逻辑或)的表达式计算过程:

先计算||左边的表达式,当左边的表达式的值为非0时,不在计算右边的表达式,当左边的表达式值为0时,再计算右边的表达式。


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

输出结果:

 

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

输出结果:

 

!(逻辑非)的表达式的计算过程:

假设A为表达式,如果A的值为非0,!A的值为0;如果A的值为0,!A的值为1 。

说明:

  • A不等于0可用C语音表达式表示成A!=0或A
  • A等于0可用C语音表达式表示为A==0或!A。

 

数据的输入和输出

printf输入函数

printf用于将输出列表中的各个表达式的值按格式控制字符串中对应的格式输出到标准输入/输出设备上。

格式为:printf("格式控制字符串",输出列表);

 说明:

  • 当输出列表为多个时,中间用逗号隔开。
  • 格式控制字符串,必须写在英文双引号里,它包括格式说明和普通字符。
  • 格式说明与输出列表一一对应。

 

 

scanf输出函数

通过标准输入/输出设备,按格式控制字符串中对应的格式为地址表列中的变量输入数据,存入变量的地址单元中。

格式为:scanf("格式控制字符串",&地址表列)

 说明:

  • 地址表列有输入项组成,两个输入项之间用逗号隔开,输入项一般取地址运算符&和变量名组成,即&变量名
  • 格式控制字符串,必须写在英文双引号里,它包括格式说明和普通字符。

 

putchar字符输出函数

 向标准输出设备上输出一个字符

格式:putchar(c);

说明:

  1. 函数参数c,可以使字符变量或者整型变量或者字符变量,也可以是一个转义字符。
  2. 函数的功能是想输出设备上输出c的值。
  3. putchar只能用于单个字符的输出,并且一次只能输出一个字符。

getchar字符输入函数

从标准输入设备上读入一个字符

格式:

char c;

c=getchar();

putchar();

 说明:

  1. 该函数没有参数,函数的返回值是从输入设备上得到的字符。
  2. 从键盘上输入的数据通过回车键确认结束。
  3. 该函数的字符可以赋值给一个字符变量或者整型变量,也可以不赋值。

用getchar读入的字符直接用putchar输出

putchar(getchar());

  • 5
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值