C语⾔:运算符-符号常量-输⼊输出⽂章⽬录
运算符
运算符和表达式
运算符是表⽰某种运算规则的符号
常见的运算有:
赋值运算、算术运算
逻辑运算、关系运算、条件运算
位运算
表达式是由运算符及其所操作的数据(称操作数)组成的式⼦。表达式还可以是运算符的操作数。运算符不仅表⽰某种运算规则,还有优先级和结合性的特征。
算术运算符和算术表达式
基本算术运算符: + - * / %(求余)
结合⽅向:从左向右
优先级: * / %,+ -
说明:
如果“/”两边都是整数,结果取整数部分
“%” 要求两侧均为整型数
⽰例:
计算并输出⼀个三位数的个位、⼗位和百位数字之和
分析:
该问题的核⼼是如何分解出各个位置的数
百位:整除100即可 表达式为:n/100
个位:模取10即可 表达式为:n%10
⼗位:将三位数去头(百位)或掐尾(个位),再整除或模取10即可 表达式为:n%100/10或n/10%10应⽤:
#include <stdio.h>
int main()
{
int number =153, b0 , b1 , b2 , sum ;
b2 = number /100;
b0 = number %10;
b1 = number %100/10;
sum = b2 + b1 + b0 ;
printf("b2=%d,b1=%d,b0=%d, sum=%d\n",b2,b1,b0,sum);
return0;
}
复合赋值运算符和复合赋值表达式
⾃增⾃减运算符
作⽤:使变量值加1或减1
种类:
前置 ++i, --i
(先执⾏i=i+1或i=i-1,再使⽤i值)
后置 i++,i--
(先使⽤i值,再执⾏i=i+1或i=i-1)
说明:
++ -- 不能⽤于常量和表达式,如5++,(a+b)++
++ --结合⽅向: ⾃右向左
优先级: ++ --,* / % ,+ -
⽰例代码:
#include <stdio.h>
int main()
{
int m1,m2,m3,m4;
int n=3;
printf( ”m1=%d , n=%d\n”, m1=n++, n );
n=3;
printf( ”m2=%d , n=%d\n”, m2=n--, n );
n=3;
printf( ”m3=%d , n=%d\n”, m3=++n , n );
n=3;
printf( ”m4=%d , n=%d\n”, m4=--n , n );
return0;
}
符号常量
这⾥我们使⽤⽰例进⾏引⼊概念:
1. 编程计算并输出半径 r = 5.3的圆周长和⾯积分析:半径需要使⽤变量 r 存储,因此要定义该变量实际代码为:
int main()
{
double r =5.3;
printf ( ” Circumference =%f \n”,2*3.1415926* r );
printf ( ” Circular area =%f \n”,3.1415926* r * r );
return0;
}
2. 编程从键盘输⼊圆的半径,并输出圆周长和⾯积
分析:半径需要使⽤变量存储,定义变量 r 存储
实际代码为:
#include <stdio.h>
int main()
{
double r ;
scanf ( ” %lf ” ,&r );
printf ( ” Circumference =%f \n”,2*3.1415926* r );
printf ( ” Circular area =%f \n”,3.1415926* r * r );
return0;
}
⽐较前两个例题,分析程序后我们发现,程序中出现的常量3.141592,会造成下列⿇烦和问题:很难保证不发⽣书写错误
常量需要改变时,如改为3.14,需要修改程序中所有的常量
过多使⽤字⾯常量,程序可读性变差
于是我们引⼊符号常量的概念。
宏常量与宏替换
宏定义:
#define标识符字符串
说明:
标识符,也称宏名、宏常量、符号常量
标识符与字符串之间必须有⼀个空格
标识符习惯上全部使⽤⼤写的单词命名
宏定义是编译预处理命令,不是C语句
宏替换:在编译阶段,将字符串替换标识符的过程。宏替换仅是字符串的简单替换,不进⾏数据类型的检查。
那我们再将⽅才的例题进⾏修改:
⽤宏常量实现计算圆周长和圆⾯积
下⾯是修改后的代码:
#define PI 3.141592
int main()
{
double r;
printf(”Input Radius:”);
scanf(”%lf” ,&r );
printf(”Circumference =%f \n”,2* PI * r);
printf(”Circular area =%f \n”, PI * r * r);
return0;
}
可以看到,我们⽤PI代替了3.141593,省略了输⼊数字的时间,并且即是后期需要修改数值,也不需要再⼀个个的进⾏修改。
逗号表达式
由逗号运算符“,”将多个表达式连接起来:
表达式1,表达式2,……表达式n;
逗号表达式的语法规则:
先计算表达式1,再计算表达式2,……再计算表达式n;
最后整个逗号表达式的结果取表达式n的值。
了解逗号表达式的语法规则。
c语言中逗号表达式的用法#include <stdio.h>
main()
{
int a,b;
a=3*5,a*4;
b=(3*5,a*4);
printf("a=%d\nb=%d\n",a,b);
}
算术运算符优先于赋值运算符
赋值运算优先于逗号运算符
标准输⼊输出函数
字符输⼊输出
字符常量
字符常量是⽤单引号“’”括起来的单个字符,例如转义字符也是字符常量,是以反斜杠()开头的字符序列
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论