"i=!a" 在c语言中什么意思 c=b||a什么意思在c语言中什么意思?

作者&投稿:鲁扶 (若有异议请与网页底部的电邮联系)

c语言中''i=!a''的意思是将a取非的值赋值给i。

!作为单目运算符的意思是取非,如!真=假,!假=真。C语言中一般情况下0表示假,非0表示真。

另外值得注意的是=,==和!=的区别,=是赋值运算符,即把=右侧表达式的值赋值给左侧的变量;==是逻辑等于运算符,当两侧的表达式的值相等时返回真,否则返回假;!=是逻辑不等于运算符,当两则表达式的值不相等时返回真,否则返回假。

扩展资料

C语言运算符号的种类:

1、算术运算符:

用于各类数值运算。包括加(+)、减(-)、乘(*)、除(/)、求余(或称模运算,%)、自增(++)、自减(--)共七种。

2、关系运算符:

用于比较运算。包括大于(>)、小于(<)、等于(==)、大于等于(>=)、小于等于(<=)和不等于(!=)六种。

3、逻辑运算符:

用于逻辑运算。包括与(&&)、或(||)、非(!)三种。

4、位操作运算符:

参与运算的量,按二进制位进行运算。包括位与(&)、位或(|)、位非(~)、位异或(^)、左移(<<)、右移(>>)六种。

5、赋值运算符:

用于赋值运算。分为简单赋值(=)、复合算术赋值(+=、-=、*=、/=、%=)和复合位运算赋值(&=、|=、^=、>>=、<<=)三类共十一种。

6、条件运算符:

这是一个三目运算符,用于条件求值(?:)。

7、逗号运算符:

用于把若干表达式组合成一个表达式(,)。

8、指针运算符:

用于取内容(*)和取地址(&)二种运算。

9、求字节数运算符:

用于计算数据类型所占的字节数(sizeof)。

10、特殊运算符

有括号()、下标[]、成员(→,.)等几种。

参考资料来源:百度百科:c语言运算符号



c语言中i=!a的意思是将a取非的值赋值给i。
!作为单目运算符的意思是取非,如!真=假,!假=真。C语言中一般情况下0表示假,非0表示真。
另外值得注意的是=,==和!=的区别,=是赋值运算符,即把=右侧表达式的值赋值给左侧的变量;==是逻辑等于运算符,当两侧的表达式的值相等时返回真,否则返回假;!=是逻辑不等于运算符,当两则表达式的值不相等时返回真,否则返回假。

!a 是一个逻辑非表达式,当a值为0时,!a的值是1,否则是0。
那么就可以解释这个 i = !a 表达式了:对 i 赋值,其值为!a。

i是否等于非a,如果a = 0,则等同于 i = 1;如果a!=0,则等同于 i = 0

int main()
{
int i;
int a = 0;
i=!a;
printf("%d ",i);
a = 6;
i = !a;
printf("%d\n",i);
return 0;
}

gcc编译后结果为 1 0
可见先将a看做bool类型进行!(逻辑非)运算,结果为真(1)或假(0)

计算机c语言中i=!a 什么意思~

!表示“非”,是一种逻辑运算。若a的真值为1,则!a为0;若a的真值为0,则!a为1。
拓展资料逻辑运算是判断命题是否成立的运算,一共有三种,即逻辑非,逻辑与,逻辑或。逻辑表达式结果值为int型,命题成立值为1,否则为0。
值得注意的是,C语言中,在逻辑判断时,逻辑运算的操作数是0,被认为是假,操作数非0都认为是真,而不仅仅是1。三个逻辑运算符的真值表如下:

||在c语言中是指‘或’的意思 其判断是有一个为真 结果就为真

int a = 10; int i, j; i = ++a; j = a--; System.out.printf("%d,%...
答:int a = 10;int i,j;i = ++a; //此时相当于a=a+i;i=a;即:i=11,a=11 j = a--; //此时相当于j=a,a--即:j=11,a=10 System.out.printf("%d,%d,%d", a, i, j);//这里主要考的是++a,与a--的区别:++a是加了后赋值,a--是赋值了后再减,就是这个区别 希...

C语言里a=!k b=i!=j c=k&&j d=k||j 分别是什么意思? 其中的“!”又是...
答:!为逻辑非 a=!k 如果k不为0,则a=0,否则a=1 b=i!=k 如果i不等于k则b=1否则b=0 c=k&&j 如果k不为0且j不为0则c=1否则c=0 d=k||j如果k或j不为0则d=1否则d=0

main() {int a=1,i=a+1; do {a++; }while(!~i++>3); printf("%d\n",a...
答:(!~i++>3 运算符优先级:!,~,++ 一样,高于 > a初值1,i 初值 2 第一次循环,do a++; a 变 2 条件i++ 是后缀 加,表达式里 仍为 2. ~2 (0000 0010 变 1111 1101)为 -3. !(-3) 得 0 0 〉3 不成立,退出循环。printf("%d\n",a); 打印出 2 ...

C语言中i=0;a〔i〕!=′\0′;i++是什么意思?特别a〔i〕!=′\0′是什 ...
答:i=0;a〔i〕!=′\0′;i++ 一般在for语句中出现 i=0是为循环变量i赋初值 a(i)!='\0'是循环持续条件 i++是循环变量每次的变化,这里是每次递增1 其中a(i)!='\0'表示a(i)不是截止符 在c中,字符串之后都会跟随一个'\0'字符,表示字符串终止 ...

...do{a[i++];{while (a[++i]<5); for(i=0;i<5;i++) printf("%d",a[i...
答:a[i]++ ?那分析是这样:第一次: a[i]++; 此时a[0] = 4; i = 0;while (a[++i] < 5); 此时i = 1, 判断的是a[1] < 5, 条件成立 第二次:a[i]++; 此时a[1] = 5; i = 1;while (a[++i] < 5); 此时i = 2; 判断的是a[2] < 5, 条件不成立, ...

假设一个变量var是a 那么 a*=i; 这里的*=是什么意思?
答:没有说明什么语言,假定为C语言。=、+=、-=、*=、/=都称为赋值号。a=x代表将a赋为x,a+=x表示a的增量为x,即a=a+x,同理a-=x相当于a=a-x,a*=x相当于a=a*x,a/=x相当于a=a/x。

java中"a="+a是什么意思~~为什么要在a=上加引号
答:引号里面当然字符串,这里应该注意的是那个加号,加号在这里的作用是连接字符串与非字符串,在这里如果加右边的a被赋值2,则在输出语句中会显示a=2。此外加号还可以用于两个字符串的合并,如果在同一行中有这样语句。"I am a student"其与"I am a"+"student"效果一样,但加号右边的字符串可以在下...

c语言中。a[i]!=k什么意思啊。
答:!=在C语言中是“不等于”的意思,这条指令的意思是:数组a[i]不等于k。

c语言中a[i]=0和a[i]='\0'有没有区别
答:a[i]=0和a[i]='\0'是有区别的,也是有相同点的,下面分两种情况讨论如下:1、数组a是数值型(以int为例)int a[4];a[0] = '\0';a[1] = 0;printf("%d\n", a[0]); // 输出0printf("%d\n", a[1]); // 输出0上面的结果是相同的,即对于数值型数组,两者是一样的。...

如果有变量定义:int i=1,j=8,a;则表达式:a=i+(j%4!=0) 的值为___百度...
答:值为1,原因如下:表达式( j%4 != 0)表示当j 除以4的余数不为0时为真,返回1 当j 能被4整除时为假,返回0 而j=8,是4的倍数,因此( j%4 != 0)返回0 那么a=i+( j%4 != 0)=i+0=i=1,最终a的值为1,如图所示: