每日一句
我关心我自己,
愈是孤单,
愈是没有朋友,
愈是无助,
那我就愈是自尊。
——《简爱》
表达式
在上一篇中,我们已经学习了运算符,接下来我们来看如何运用这些运算符写表达式。
①算术表达式
由算术运算符和操作数组成的表达式,表达式的类型型具体由运算符和操作数确定,表达式的值是一个数值,如果直接输出一个表达式,可以得到它的表达式的值。
例:
1+2*3 它的类型为int型
1.0+2.0+5.0/2 它的类型为double
如果想要把表达式的类型转换成另一个类型的话,根据情况,可能会有精度损失,对于什么类型转换成什么类型会怎么损失,以后会单独拿出来讲。
例:
(int)(a+b) —>把(a+b)的值转换成int型。
(int)a+b —>先把a转换成int型,再加上b。
②赋值表达式
将赋值符号右边表达式的值赋给左边的变量
例:
int i;
i=1;
即给i赋值,值为1,这个表达式的值也为1;
对于前篇的复合运算符'+='、'-='等:
例:
i+=5;
相当于i=i+5,
同理i-=5,相当于i=i+5
以此类推。
③关系表达式
由关系运算符和操作数组成的表达式
用于两个数值之间的比较运算
例:
a>b+c相当于a>(b+c)
比较a的值和(b+c)的值的大小
在C语言中,关系表达式为真时值为1,为假时值为0
例:
int i=1;
int j=2;
i为真,这个表达式的值为1
i=j为假,这个表达式的值为0;
④逻辑表达式
上一篇讲过逻辑表达符号与、或、非分别为'&&'、'||'、'!'
运算结果不是真就是假,所以逻辑表达式的值不是1就是0
例:
int a=1;
int b=2;
(aa)为真,则表达式的值为1;
(a>b)&&(a=1)为假,则表达式的值为0;
⑤条件表达式
还记得上一篇的a>b?a:b吗?
例:
int a=1;
int b=2;
int c;
c=a>b?a:b;
则c被赋予a,b中较大的那个数。
输入语句scanf
废话不多说,先直接上一个程序
例:
#include//头文件
#include//头文件
int main() //主函数
{
int a,b; //定义整型变量(int)a,b
scanf("%d%d\n",&a,&b);//获取键盘上输入的a,b的值
printf("%d\n",a+b); //输出a+b的和
return 0;
}
运行这个程序,如果我们从键盘输入1和2两个整数,计算机将会输出结果3。
头文件、主函数和数据的定义我们在之前的学习中已经有所了解,我们这里主要来分析一下scanf这个语句scanf("%d%d\n",&a,&b);
①其中scnaf函数的功能是:用户从键盘上输入指定格式和数量的输入项,输入的数据将赋值给相应的变量。
②scanf函数的格式为:scanf("格式控制字符串",输入项列表);
输入项列表可以是变量的地址,和字符串的首地址,'%d'是指输入的数据格式为整型,'&'则是取地址符。
输出语句printf
还是废话不多说,直接上之前那个程序
例:
#include//头文件
#include//头文件
int main() //主函数
{
int a,b; //定义整型变量(int)a,b
scanf("%d%d\n",&a,&b);//获取键盘上输入的a,b的值
printf("%d\n",a+b); //输出a+b的和
return 0;
}
现在我们来分析一下输出函数printf,printf("%d\n",a+b);
①printf函数的功能是:按格式控制字符串规定的格式,向输出设备输出信息,即例题中的输出a+b的和。
②printf函数格式为:printf("格式控制字符串",输出项列表);输出的时候不需要加取地址符,输入的时候一定要加。而且输出函数可以没有输出项列表,例如我们的经典程序中输出"Hello World!"字符串,printf("Hello World!");只有需要输出的字符串。
下期预告
这一期又双叒叕结束了,关于输入输出函数还有许多知识点,需要细讲,期待下期吧~
①运算符的优先级
②输入输出格式
拜~
▼ 往期精彩回顾▼我们一起学C语言(三)我们一起学C语言(二)我们一起学C语言(一)在最开始的最开始 扫码关注我公众号:Dululu杂七杂八随心写小红书:Du_luluya 在看点一下