精华内容
下载资源
问答
  • C语言中关于真假的处理

    千次阅读 2015-01-06 00:12:08
    ,零是假;就用1来表示,假用0来表示。来看代码例子: # include int main(void){ int i = 10; int j = 20; int m; m = (3 > 2)&&(j = 8);//注意一个 & 表示的是引用地址 printf("m = %d, j = %...

    C语言这样来处理数据的真假的:

    非零即为真,零是假;真就用1来表示,假用0来表示。来看代码例子:

    # include<stdio.h>
    
    int main(void){
    	int i = 10;
    	int j = 20;
    	int m;
    
    	m = (3 > 2)&&(j = 8);//注意一个 & 表示的是引用地址
    	printf("m = %d, j = %d\n", m ,j);
    	
    	return 0;
    }
    /*******程序输出结果如下:
            m = 1, j = 8
    */
    分析:m = (3>2)&&(j = 8);3>2为真,j = 8这是个赋值操作,把8赋值给了j,由于C语言中规定了,非零即为真,所以j = 8为真,真&&真,结果为真,那么m 就为1。再来看另外一段代码:

    # include<stdio.h>
    int main(void){
    	int i =10;
    	int j =20;
    	int m;
    	
    	m = (3 > 2)&&(j = 0);
    	printf("m = %d, j = %d\n", m ,j);
    
    	return 0;
    }
    /******输出结果为:
    	m = 0, j = 0
    */
    分析:C中规定了零为假,所以j = 0这是为假,真&&假结果为假,那么m的值就为0,由于给j 赋值0,所以最后输出结果都为0.

    # include<stdio.h>
    int main(void){
    	int i =10;
    	int j =20;
    	int m;
    	
    	m = (1 > 2)&&(j = 5);
    	printf("m = %d, j = %d\n", m ,j);
    
    	return 0;
    }
    /*************输出结果为:
    	m = 0, j = 20
    */
    分析:为什么此处j = 20而不是等于5呢?也就是j = 5 这个没有执行。记住:" &&“ 这个运算符很特别,当左边表达式是的时候,右边就不执行了,当” || “的左边为的时候,右边就不执行。



    展开全文
  • C语言

    2019-09-27 11:55:37
    ! 3. C99 添加_Bool 类型,以前是用int类型,包含stdbool.h头文件 可以用bool代替_Bool 4. scanf 得到正确的输入值,返回1,否则返回0 5. 关系运算符到优先级低于+ - * /在内的算术运算符,但高于赋值...

    1. 赋值表达式的值就是其左侧到值。 如 a=1 这个表达式到值就是a的值

    2. C把任何非零到值都认为是真。非零即为真!

    3. C99 添加_Bool 类型,以前是用int类型,包含stdbool.h头文件 可以用bool代替_Bool

    4. scanf 得到正确的输入值,返回1,否则返回0

    5. 关系运算符到优先级低于+ - * /在内的算术运算符,但高于赋值运算符5. 关系运算符到优先级低于+ - * /在内的算术运算符,但高于赋值运算符

    6. n++ 先使用n,再将n加1,++n  先将n加1,再使用

     

     

    转载于:https://www.cnblogs.com/zxwAAA/p/3751089.html

    展开全文
  • C语言

    2016-04-13 22:44:45
    位运算符: c语言中,位运算符主要是针对 int 类型和char...按位与运算&:l两个操作对象均为1时,则该位结果为1,否则为0都为1,才是,为1. 按位或运算符|:两个操作对象有一个为1时,结果为1,否则为0

    位运算符:

    c语言中,位运算符主要是针对 int 类型和char类型数据而言的,不适合用于float,double,long,和void等其他复杂类型。优先级由高到低依次为:

    ~,>>,<<,&,^,|其中只有按位取反是单目运算符,其他都是双目运算符。

    按位非运算~:将二进制的数字0变1,1变0,

    按位与运算&:l两个操作对象均为1时,则该位结果为1,否则为0,即都为1,才是真,为1.

    按位或运算符|:两个操作对象有一个为1时,结果为1,否则为0,即都为0才为0,

    按位异或^:两个操作对象相异时,则结果为1,相同时为0,相异为真,为1,相同为假,为0

    对位位运算符应该注意四点:

    位逻辑运算符的操作数应该是整型数据

    为了保证程序的可可移植性,操作数应使用十进制,八进制或者十六进制的表示形式,而不要使用二进制数的表示形式,这是因为二进制数的表示形式与

    机器硬件支持紧密相关。

    按位取反运算符仅对操作数取反码,不能直接求其补码,如果要求其某操作数的补码,应该先求出其反码,在运用增1运算对反码加1,使该操作数变为原操作数的补码。

    位逻辑运算与前面介绍的逻辑运算有质的区别,位逻辑运算是按位进行运算的,而逻辑运算则是对整个数值按0和非零进行运算的,位逻辑运算要计算具体数值,而逻辑运算

    只判断表达式的值是真还是假。

    位移运算符:(结合性为自左向右)

    a<<b,a向左移b位。

    a>>b,a向右移b位。

    注意:左移或右移时出现的空位应当补0

    如果左移或右移的位数是负值,移位的最终结果为0值

    如果参与移位运算的变量是有符号的整型变量,则应当将最左边的二进制当作符号位(负数用1补),并根据补码确定最终的结果。

    赋值表达式

    x=y==z+5,看起来很奇葩,但是应该是可以的。表示逻辑判断然后赋值给x.

    1,赋值表达式也有类型自动转换

    2,字符型变量赋值给整型时,高八位补0

    3,整型赋值给字符型,只把低八位赋给字符变量,

    大转小会丢失精度。

    逗号运算符及其表达式:

    表达式1,表达式2,先计算表达式1,然后再计算表达式2,最后结果为表达式2的计算结果。

    逗号表达式时必须注意几点:

    1,逗号表达式有可能降低程序的可读性,不利于养成良好的编程习惯,建议少用或者不用

    2,通常是要分别求逗号表达式内各表达式的值,并不一定要求整个表达式的值

    3,并不是所有出现逗号的地方都组成逗号表达式,如在变量说明中,函数参数列表中逗号只是用做各变量之间的分隔符

    支持条件表达式,a?b:c  注意类型的转换

    sizeof运算符用于计算计算机中对象占用的字节。sizeof(e)e可以是任何类型或者表达式,优先级高。




    展开全文
  • C语言分支结构

    2014-10-18 08:29:16
    C语言中,非0即。 2.关系运算符: >大于 >=大于等于 3.逻辑运算符: 逻辑与 &&: && = ; && 假 = 假; 假 && 假 = 假; 例如, 5 > 2&& -1 为。 逻辑或 || : || = ; |

    第二天我们学了C语言中的分支结构。

    1.BOOL布尔类型:在C语言中BOOL布尔类型有两个值真和假,习惯性分别用1和0代表。在C语言中,非0即为真。

    2.关系运算符: >大于  >=大于等于  <小于  <=小于等于  ==等于  !=不等于

    3.逻辑运算符:

    逻辑与 &&: 真 && 真 = 真; 真 && 假 = 假; 假 && 假 = 假;  例如, 5 > 2&& -1 为真。

    逻辑或 || : 真 || 真 = 真; 真 || 假 = 真; 假 || 假 = 假; 例如, -2 || 5> 9 为真。

    逻辑非 ! : ! 真 = 假; ! 假 = 真; 例如, int a = 5;! a = 0;

    注意:逻辑与和逻辑或的短路现象。

    && ---- 一假即假;

    || ---- 一真即真;

    4.程序的分支结构:通过一个条件表达式进行判断,在两个可选语句中选择需要执行的分支语句。

    5.if语句共有三种基本形式:

    (1) if(条件表达式){ 

               语句1; 

           }

    //当条件表达式为真时,执行语句1,否则退出if语句,执行下面语句。

    (2) if(条件表达式){ 

                 语句1; 

           } else{ 

                 语句2;

           }

    //当条件表达式为真时,执行语句1;当条件表达式为假时,则执行语句2。

    (3) if(条件表达式1){ 

                   语句1; 

           } else if(条件表达式2){ 

                   语句2; 

           }else{ 

                    语句3; 

           }

    //当条件表达式1为真时,执行语句1;当条件表达式1为假时,条件表达式2为真时,执行语句2;当条件表达式1和条件表达式2都为假时,执行语句3。

    注意:if语句中if(条件表达式)后面不能加' ; ', 否则只判断不执行语句

    6.条件运算符:  条件表达式 ? 表达式1 : 表达式2;

    //如果条件表达式为真时,整个表达式的值为表达式1的值;

    //如果条件表达式为假时,整个表达式的值为表达式2的值。

    例如,求三个整数的最大值。

    printf("请输入三个整数:");

    //定义三个int类型的变量a, b, c

    int a = 0, b = 0, c = 0;

    //输入三个整数的值

    scanf("%d%d%d", &a, &b,&c);

    //定义一个int类型的变量max,用来存储最大值

    int max = a > b ? a : b;

    max = max > c ? max : c;

    //输出最大值

    printf("输出最大值:%d\n",max);

    7.枚举类型:枚举类型是在主程序main函数之前列举的。

    其定义方法为:_enum枚举名 {枚举值};

    枚举目的:提⾼高程序的可读性。

    枚举作⽤:将⼈人能看懂的标识符与计算机能识别的数字建⽴立对应关系。

    8.switch语句: switch通常和case配套使用。switch -- 开关 ; case -- 情况。

    switch(整型表达式){

       case 值1:{

           语句1;

           break;

        }

       case 值2:{

           语句2;

           break;

        }

        default :{

           语句n;

           break;

        }

    }

    如果不满足各个case,则执行default内的语句,default语句在任何位置不影响,但习惯性放最后。

    9.break的作用:跳出switch语句,如果不加break,当选择一个case后将不再做任何判断,直接执行下面的语句。

    展开全文
  • C语言02

    2019-10-06 11:51:33
    c 语言中,非0即;在预处理里的时候讲yes替换成1,no 替换成0; #define yes 1.#define no 0; 目-操作数,三目运算符-条件表达式。赋值运算符,算术运算符,关系,逻辑运算符。双目运算符, a++单目运算符...
  • C语言中流程控制语句(在Turbo C2.0中)(if, while,do-while,continue,break, for, switch,return)/jqx_1981/blog/item/528c122dcca9f...上述结构表示: 如果表达式的值为非0(TURE)即真, 则执行语句1, 执行完语 句...
  • c语言lesson03

    2014-06-28 19:47:08
    c语言中,认为非0即. 关系运算符 > >= 主要用于比较运算,返回的结果只有真假两种情况,结果值用BOOL类型变量存储, 注意:判断两个数是否相等,用==(双等号). 逻辑运算符 &&(逻辑与):运算符两边表达式同时为
  • C语言第二课

    2014-11-08 16:21:19
    主要内容:分支结构一、BOOL数据类型BOOL是一种表示非即假两种状态的数据类型,布尔类型的变量只有YES和NO,YES表示表达式为,NO表示表达式为假C语言中认为 非0即 分支结构中,经常用BOOl做判断,与 if 语句...
  • C语言之数据结构

    2014-08-08 20:44:57
    1.顺序结构:所有程序以顺序结构开始,顺序执行语句   2.分支结构:通过进行一个判断在两个可选的语句...非0推断出条件为     二、关系运算符 > >=    三、逻辑运算符 组成的表达式结果非真即假  
  • C语言while循环

    千次阅读 2020-04-16 11:00:34
    意思是,先计算表达式的值,当值为时(非0即),执行语句块,执行完语句块后,回到循环首部再次计算表达式的值,如果为,又执行一次语句块……,这个过程会一直重复,直到表达式的值...
  • C语言 day04

    2021-04-04 14:49:02
    if语句的使用 if语句 if关键字以后均为表达式,表达式是逻辑表达式... 只要表达式的值为非0为“” 在if语句中。条件判断表达式必须用括号,在语句之后必须加分号 如: if(a==4){ printf(".........
  • C语言基础2

    2018-06-19 09:30:36
    分支结构 1、布尔类型 BOOL  类型只有YES(1) NO(2)    判断if语句 else语句 #define YES 1;  #define NO 0; 2、关系运算符  大于 ,小于,大于等于,小于等于 != 主要用于比较运算 结果可以用Bo
  • C语言 条件运算符

    2018-12-19 12:03:43
    1.一般格式: 表达式1?表达式2:表达式3 条件表达式中的&amp;amp;amp;amp;amp;amp;quot;表达式1&amp;amp;amp;amp;amp;amp;quot;、“表达式2”、“表达式3&amp;...的值为非0(逻辑)
  • 字符处理有两类函数:分类和转换,每个字符分类函数的名称以is开头,返回int类型的值,在参数为指定类时为非0即真,否则为0即假,每个字符转换函数的名称以to开头,返回int类型的值,表示一个字符或EOF。...
  • C语言流程控制

    2015-05-13 09:30:00
    在使用if语句中还应注意以下问题: 在三种形式的if语句中,在if关键字之后均为表达式。 该表达式通常是逻辑表达式或...只要表达式的值为非0为“”。如在: if(a=5)…; 中表达式的值永远为非0,所以其后...
  • C语言:逻辑运算

    2020-12-29 22:27:54
    表示表示取反 /* 闰年 */ #include <stdio.h> main() { int year; printf("please input year:\n"); scanf("%d", &year); // 当逻辑或左边表达式为时,右边表达式不参与计算 if (year % 4...
  • C语言之分支结构

    2015-09-05 20:58:43
    #import <Foundation/Foundation.h> // 引入int main(int argc, const char * argv[]) { /* //定义一个bool类型的变量 (非0即真) // yes 可以代表真,no 代表假 bool a = 1; // 1代表真,yes bool b = 0; // 0
  • C语言第三课

    2017-08-29 21:32:55
    && 逻辑与 & 按位与If(3==i)If(“abc”==”ab”) 字符串为常量,存储为地址指针 If( strcmp() ) 字符串比较不能用关系运算符来比较字符串 关系运算符用于浮点数时...非0即真,0为假最高优先级 . -> () [] 点 箭 方
  • 本文目录: 一、BOOL布尔类型 二、关系运算符 三、逻辑运算符 四、if语句 ...BOOL数据类型,是一种表示非即假的数据类型,布尔...在C语言中,认为非0即。 分支语句中,经常使用BOOL值做判断,判断执行if语...
  • 关于C语言中for循环语句的使用 ...时刻为无限循环,也就是说这句对应于判断结果的,在C语言中,非0即。 而 此时j=0;意味着假,也就是判断语句为假,也就不执行循环体里面的语句了。 ...
  • ★一:bool布尔类型 ★二:关系运算符 ★三:逻辑运算符 ...表示非即假的数据...在c语言中,认为非0即,如果为0为假. 二:关系运算符 算数运算符(+ - * / % ++ --) 位运算: 按位&(同时
  • C语言入门摘要3

    2019-09-12 14:29:37
    逻辑运算中的与运算(简称为短路与) ...(整个为假,也就是0,且短路) 逻辑运算中的或运算简称为(短路或) 或运算也成为短路或,只要有一个为,则都为,则整个为时短路! ...
  • c语言学习第二天

    2015-09-05 22:16:52
    bool类型只有两个值 非0即真 常用语判断语句 2.逻辑运算符 逻辑与 && 表达式两边同时为真的时候才为真  逻辑或 || 表达式两边又一个为真即为真 逻辑非 !与表达式的结果取反 3.if语句 if();{...
  • 需要掌握的内容: 一. 1.if语句 C语言提供一种称为if语句的语法格式,通用的形式是: if(express) ...只要是express非0(),那么programming statement就会执行。 2.if-else语句 C语言提供...
  • 一:布尔类型,非即假,YES,NO ...C语言中,非0即​ 二 :关系运算符 大于>, 大于等于>=, 小于 小于等于 等于==, 不等于!=​, 注:运算符的优先级不需要记忆,只要记住括号
  • c语言面试题——分支

    2020-04-04 08:25:40
    严格上不能说是非0)和假(0), 只能说结果 是 1 或 0 修改: 如果 表达式为 a < 5 , 则结果为(1), 所以表达式结果为1, 为 case 1, 所以结果为 打印出 this is 1 分析: ①switch表达...
  • C 语言程序语句格式及用法 // 单分支if //条件成立为1条件不成立为假0 if (表达式) //非0 执行后 语句否则跳过非0 0 为假 语句 // 双分支if if (表达式) //为执行后 语句1否则跳到else 后 的语句2 语句1 ...
  • c语言基础知识2

    2020-11-10 09:50:05
    /* 运算符与表达式 算数运算符:包括+、-、*、/、求余、取模(%),... 关系运算符返回的是一个bool类型,1”,“假0”。 逻辑运算符:返回的结果也是真假两种情况,包括与(&&),或(||),(!

空空如也

空空如也

1 2 3 4 5 ... 8
收藏数 151
精华内容 60
关键字:

c语言非0即真

c语言 订阅