求助c语言中if后面括号里的简写形式 C语言,if(a>b)(t=a;a=b;b=t;)这个后面的...

作者&投稿:霜残 (若有异议请与网页底部的电邮联系)
啊?你确定你的if没有错?if(s=b)是判断是否成功的将b赋值给s了,如果是判断s和b是否相等,应该是if(s==b)

改成我的那个形式后,它的执行是这样的:判断s和b是否相等,如果相等,则使s等于原值的平方。
s*=s的执行过程是这样的,cpu从内存中读取s的值到寄存器1中,再读取一次s的值到寄存器2,cpu将两个寄存器中的值相乘后赋值返回给内存中的S。如s*=a,则其过程为:
cpu从内存中读取s的值到寄存器1中,再读取a的值到寄存器2,cpu将两个寄存器中的值相乘后赋值返回给内存中的S
但愿能帮到你

if(s==b) s*=s; // 相等的比较用 == ,两个等号
如果 s 等于 b,则计算 s = s * s
s*=s 就是 新s = 老s * 老s;
程序 输入 a, b
如果 a 等于 b,则 输出 a*a,
如果 a 不等于 b,则 输出 a。

按照您这种写法if(s=b)的解释应该是:如果b赋值于s;会不会是您写错了呢?在C语言中,=是赋值表达式,==才是等于符号喔。如果是写为if(s == b)则可以理解为//如果s等于b ;s*=s等价于s=s*s;

s*=s,意思是如果s = b,s等于原来的s(即a) 乘以b,即a*b

如果s=b的话则执行s*=s

c语言中if后面括号内是什么类型的语句~

你确认你问的是语句?花括号里加什么语句都可以啊;如果是圆括号,里面的是表达式,不是语句。

if (表达式) 语句

if (表达式) 语句 else 语句

圆括号中的表达式应该有标量类型。
C99 标准原文:The controlling expression of an if statement shall have scalar type.

语句可以为复合语句,复合语句就是 { ... } 这样的!

是的,
不是版本的问题,后面的是语句块需要用大括号
if (a > b){ t = a ; a = b ; b = t ; }

在C语言中,if括号后面的语句可以是表达式吗?
答:可以是表达式。这里的执行过程是:' < '的优先级高于' == ',首先计算5<2*2为假,结果为0,然后2*2==0==4,不管结合性往哪边都是假,所以执行else部分输出F

if语句后面一对括号中的是什么表达式?
答:逻辑表达式、关系表达式等

c语言if括号里可以写英文吗
答:可以。C语言if语句的括号后面一定不要加英文分号,否则编译器将报错。C语言是一种计算机程序设计语言,既有高级语言的特点,又具有汇编语言的特点,可以作为系统设计语言,编写工作系统应用程序。

在C语言中if()语句后跟个continue是什么意思?
答:continue 表示终止本次(本轮)循环。当代码执行到continue时,本轮循环终止,进入下一轮循环,具有过滤功能。例子:continue只对直接包含它的循环体有效(也就是for,while, 而switch{}中的不算循环体);

在c语言中if()语句什么时候后面用{}什么时候不用?
答:如果只需要执行一条语句,那么用不用都可以;如果需要执行多句,那么必须用;因为if语句的有效范围只有跟在它后面的一条语句,如果想执行多条,需要用花括号括起来形成一个语句块。

在C语言中,if括号后面的语句可以是表达式吗?
答:,2*2==5);printf("%d\n",2*2==5<2*2);printf("%d\n",(2*2==5)<2*2);printf("%d\n",2*2==(5<2*2)==4);if( 2*2==5<2*2==4 ){ printf("%d\n",2*2==5<2*2==4);printf("T");} else{ printf("%d\n",2*2==5<2*2==4);printf("F");} ...

在c语言中 if(0)是什么意思
答:if(0)的意思,就是不执行if(0)后面跟着的大括号里面的语句。(这里的大括号若没有,则表示if(0)后面跟着的第一个分号的语句。)流程控制关键字 跳转结构 return:用在函数体中,返回特定值(如果是void类型,则不返回函数值)。(K&R时期引入)continue:结束当前循环,开始下一轮循环。(K&R时期...

C语言if后大括号的作用?
答:书写是正确的。加大括号表示这是一段整体的语句块,当满足else条件后,语句块里面语句按顺序执行;如果不加大括号,则只会执行else后面的第一句。然后if语句结束,后面2句已经不属于if语句中了,这样不管deta等于什么,x2 = ( -b - sqrt (deta) ) / 2 * a;和printf ("计算的结果为x1=%f x2...

C语言 新手求救: if();和if()有什么区别
答:没有花括号),如果if()后面加“;”,则if()条件语句成立的话,执行的是空语句。1.不加“;”if(contidions)statements; //执行此语句 2.加“;”if(conditions);相当于 if(conditions)空语句; //什么都不干,向下执行 注:conditions为条件,为bool型 OK,还有啥不明白的?

c语言,if语句后有大括号和没大括号有什么区别
答:而不是多条语句。如:{x=y+z;a=b+c;printf(“%d%d”,x,a);},大括号中的几条单语句是一个整体,是一条复合语句。2、语句逻辑不同:if语句后有大括号的复合语句执行逻辑是整体执行的,只要if条件成立,括号中的几条语句都会执行,如果没有大括号,只会执行紧跟if后的单条语句。