(1/2)请问一下:在C语言中,定义int a=5,b=20;执行printf("%d\n",++a*--b/5);为什么结果是9,而不是22呢

作者&投稿:子岩 (若有异议请与网页底部的电邮联系)
(1/2)请问一下:在C语言中,定义int a=5,b=20;执行printf("%d\n",++a*--b/5);为什么结果是9,而不是22呢~

不对吧,就等于22
#include
int main()
{
int a=5,b=20;
printf("%d
",++a*--b/5);
getchar();
return 0;
}
测试结果就是22.

--中间无空格,--是一个运算符,自减前缀,++a*--b/5根据运算符优先级/结核性即(++a)*(--b)/5
而- -中间带空格,被编译器解释成了2个负号,(++a)*-((-b)/5)

首先,++a和--b分别是前置自加,前置自减;先自加,先自减,然后引用。相当于(a+1)*(b-1)/5。又因为*和/是同级运算符,遵循从左向右的先后顺序,且a,b均是整形变量,因此6*21/5的结果是22。注:舍弃小数。

visual studio 中运行结果为 22 ,此要考虑运算符的优先级问题:
++前缀增量运算符;--前缀减量运算符;优先级为2级
*乘法运算符;/除法运算符;优先级为3级,
(5+1)*(20-1)/5=22

vc++中运行结果是9,你用得啥编译器??
是不是说反了呢??

((++a)*(--b))/5
关键是运算符的优先级不同,++,--,的优先级比*,/的高,而*和/则是自左向依次进行
不过本题的结果就是22呀???

vc6.0运行的结果该是22,这和你用的的编译器有关,有的规定的运算先后顺序不同


“一”多音字组词
汉字“一”不是多音字,只有一个音[yī],组词为:一篇 、一同、一共 、一半 、专一、 一定 、一样 、一边 、一向 、一点、一条 、一起 、万一 一 拼音:yī,注音:一,部首:一部,部外笔画:0画,总笔画:1画 释义:1、数名,最小的正整数(在钞票和单据上常用大写“壹”代)。2、纯...

一这个字读什么字
“一”音yī,(在钞票和单据上常用大写“壹”代),汉字的基本笔画,也可单独成为汉字,基本释义是最小的正整数。读音为yī,其他音为变音。yī “一”字独用、作为词或句子的最后一个字使用时,读本调第一声(阴平),如“一九”、“统一”、“一一得一”等。yí “一”字用在第四声(去声)字...

1是什么数字?
1(阿拉伯数字)①(阿拉伯数字 序号)⒈(阿拉伯数字 带点)⑴(阿拉伯数字 带括号)一(中文简体)一(中文简体 带括号)壹(中文繁体)Ⅰ(罗马数字)one(英文)在数学中 1,阿拉伯数字。2,是0与2之间的自然数。3,奇数 。4,倒数第二小的正整数。5,既不是素数,也不是合数。6,任何数除以1...

“一”的意思?
1、数名,最小的正整数(在钞票和单据上常用大写“壹”代)。2、纯;专:专一。3、全;满:一生。4、相同:一样。5、另外的:蟋蟀一名促织。6、表示动作短暂,或是一次,或具试探性:算一算。7、乃;竞:一至于此。8、部分联成整体:统一。9、或者:一胜一负。10、初次:一见如故。11、中...

1是什么意思?
1、1最基本的定义是,属于一个阿拉伯数字,一个自然数,是最小的正整数,也是介于0和2之间的整数,是最小的正奇数。1是一个有理数,是一位数,也是单数。1既不是质数也不是合数。1的n次方(n∈R)都等于1,1的平方根也是1。2、“1”作网络用语时,代表“可以” “是”“赞同”“准备好了”...

1的解释是什么?
解释:上不在上,即“上”字没有上部分。下不在下,即“下”没有下部分。人有它大,即“人”有了“一”就组成了“大”。天无它大,即“天”没有了“一”就成了“大”。基本字义:一是汉语通用规范一级字(常用字),读作yī。此字最早见于商代甲骨文及商代金文,其本义为最小原始单位,最...

1的英文单词是什么?
1的英语是one。One是一个英文单词,名词,代词,限定词,形容词,数词。名词时翻译为“一;一美元纸币;(One) (印、马、美)温(人名)”。做代词时翻译为“一个人;任何人,人们(表泛指);那个人;(特指的)那种人”。做限定词时翻译为“一个(强调某人或某事);一个(用于比较相似的人...

1的中文是什么字??
阿拉伯数字【1】的中文汉字是【一】,【一】不是多音字,只有 yī 一种读音。国家有效发明专利《多元汉字与图形符号输入法及其键盘》(多元码)在附带的《通用规范汉字多元码表》文本查找栏输入 g 打出【一】字,即见如下截图:由此可见,【一】字是第0001号通用规范汉字,只有一个读音,在第6版《...

一的繁体字
一的繁体字就是一。基本字义:一是汉语通用规范一级字(常用字),读作yī。此字最早见于商代甲骨文及商代金文,其本义为最小原始单位,最小的正整数,后引申为相同的,无二至的、整体的、全部的、整个的、所有的等。繁体字:一,部首:一,拼音:yī 笔画:1,结构:单一结构,五行:土 首尾分解...

一是什么词性
数词。一拼音yī 1、全;满:一生。2、相同:一样。3、另外的:蟋蟀一名促织。4、表示动作短暂,或是一次,或具试探性:算一算。5、乃;竞:一至于此。

武邑县14729586436: c语言帮忙看下这个程序那里错了呀?
春要畅美: 朋友,我来告诉你答案!inti=start+(end-start)/2;if(start>end)return-1;/*没找到,返回-1*/if(str[i]==c)returni;elseif(str[i]>c)returnfind(str,c,i+1,end);elsereturnfind(str,c,start,i-1);第一个else,搞错了,应该是

武邑县14729586436: C语言:求1 - 1/2+1/3 - 1/4+.... -
春要畅美: " 1-1/2+1/3-1/4+...." C语言实现, 代码如下:#include <stdio.h> int main(void) { int go, turn; double cot = 0.0; scanf("%d", &turn); if(turn>0) for(go = 1; go <= turn; go++) if(0 != go % 2) cot += 1.0/go; else cot -= 1.0/go; printf("%g\n", cot); return 0; } 测试如下 (粗体表输入):20.560.6166671100.688622

武邑县14729586436: (1/2)我想自学电脑C语言,但不知从何学起,于是上网查了一下,却只记下了C语言C++这些名子,没用,网上说的... -
春要畅美: 我来告诉你标准答案!想学自己找本书看吧,谭浩强《C语言设计基础》很基础的,学东西不要着急,需要积累的.祝你好运!

武邑县14729586436: &在c语言中什么意思 -
春要畅美: 主要有两个意思: 1. 取地址符,用在指针表达式或输出变量地址时 例如 int a; &a就是表示变量a在内存中地址 2. 二进制位与位运算符 1&1=1 0&0=0 拓展资料:C语言主要特点: 1. C语言是高级语言.它把高级语言的基本结构和语句与低级...

武邑县14729586436: C语言:求1 - 1/2+1/3 - 1/4+....
春要畅美: 源程序如下: #include <stdio.h> int main() { int sign=1; double term,sum=1.0,deno=2.0; int n; printf("请输入所求和项n:"); scanf("%d",&n); while (deno<=n) { sign=(-1)*sign; term=sign*(1/deno); sum=sum+term; deno=deno+1; } printf("sum=%.2lf\n",sum); return 0; } VC++测试如下:望大神采纳,在线等

武邑县14729586436: 在C语言中,1&2等于多少? -
春要畅美: &是按位与运算 1 的二进制表示,只写8位 0000 0001 2 的二进制表示, 0000 0010 得到 0000 0000 因此答案是0

武邑县14729586436: 关于C语言中 || 和 &&的用法 -
春要畅美: && 逻辑与 || 逻辑或 上面的是表达式同为真时则真.(1 > 0 && 2 > 0) 下面的是表达式有一为真则真.(1>0 || 2<0) 这两个表达式的结果都返回真. 笨方法的汉字理解方法就看字与就是共同 或就是取一.一样的.

武邑县14729586436: 在C语言中<<是什么意思? -
春要畅美: 先说左移,左移就是把一个数的所有位都向左移动若干位,在C中用<<运算符.例如: int i = 1; i = i << 2; //把i里的值左移2位 也就是说,1的2进制是000...0001(这里1前面0的个数和int的位数有关,32位机器,gcc里有31个0),左移2位之后变...

武邑县14729586436: C语言中“&”这符号是什么意思? -
春要畅美: 1个&是地址符,一般用再输入里scanf("%f,%f,%f",&a,&b,&c); 的&a,&b,&c; 2个是与,,再以后的知识里会碰到,,,这里不详说

武邑县14729586436: C语言算式运算 -
春要畅美: 全部少个逗号,比如 printf("%d+%d=%d"a,b,a+b);改为 printf("%d+%d=%d",a,b,a+b);#include<stdio.h> void main() { int a,b; char c; printf("输入一个由两个数字和一个算式运算符组成的表达式,完成相应的计算,并将算式和结果输出\n...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网