黑马程序员技术交流社区

标题: 表达式 [打印本页]

作者: sxakljf    时间: 2015-6-21 11:26
标题: 表达式
格式: scanf("格式控制字符串",输入项地址列表);  
如果输入缓冲区的内容不为空,scanf会一直从缓冲区中获取,而不要求再次输入




格式:printf("格式说明",变量列表)
输出的原理 : printf把要输出的内容--->输出缓冲区-->输出到控制台



问号表达式 a>b ? 1 : 0

复合赋值运算符:(双目运算符)

        一次性作两件事情:先运算  再赋值

         +=     a+=3; ---> a = a + 3;
         -=     a-=3; ---> a = a - 3;
         *=     a*=3; ---> a = a *3;
         /=     a/=3; ---> a = a / 3;
         %=     a%=3; ---> a = a % 3;

三目运算符的格式:

       表达式1 ?表达式2 :表达式3;

    三目运算符的求值顺序:
       表达式1的值  真
                        表达式2的值 作为整个三目运算表达式的值
                                              假
                        表达式3的值 作为整个三目运算表达式的值返回
#include <stdio.h>
int main(int argc, const char * argv[]) {
    int a = 3,b = 4 ,result = 0;
    result = a>b?10:100;  //把10作为整个条件表达式的值
    result = !a?b:a;
    printf("result = %d\n",result);
    return 0;
}


","  是一个逗号运算符

   逗号表达式:用逗号连接的表达式

   逗号表达式的求值:对逗号连接的每个表达式逐个求值,用最后一个表达式的值
                  作为整个逗号表达式的值

               int a = 3,b = 4 ,result = 0;  
                result = (a+3,b+2,a+b,122)    //100就是这个表达式的值
作者: pp584995727    时间: 2015-6-22 22:33
首先表达式,是有返回值的
作者: 杨庆庆    时间: 2015-6-22 22:38
貌似好深奥的样子..
作者: S970028126    时间: 2015-6-22 22:42
你这是提问吗,明明是论述




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2