a=1;b=0; while(a+b<=n) {if(a<b)a++; else b++; } 执行频度怎么求

如题所述

第1个回答  2012-11-06
执行n次。因为每次执行while循环里的语句时a,b有且仅有一个自增1,而限制条件是a+b小于n。
你可以这样看,一开始a+b=1,然后每次a+b的值都增加1,所以总共执行n次。本回答被提问者采纳
第2个回答  2012-11-06
执行频度:你要分那一行程序代码;
while(a+b<=n) 行 因为a+b的和是从1到n 就是n次;
因为a+b和是从1到n 且为连续的,初值b=0 因if(a<b) 开始b++两次 ,之后a++,b++轮流执行
基本上都 是n/2 次 要精确的你要考虑 N为奇偶的问题 ……
希望能够帮到你 ……
第3个回答  2012-11-05
a+b初值是1,循环体内,a,b只有其中一个自加1,因此每次循环,a+b增加1,所以最终循环次数为n次。 希望对你有帮助
第4个回答  2020-08-04
n=float(input())

a=1
b=0
while b>100:
a+=1
b=b*1.05
if b>=n:
print(str(a)+"年")
break

a=1;b=0; while(a+b<=n) {if(a<b)a++; else b++; } 执行频度怎么求
执行n次。因为每次执行while循环里的语句时a,b有且仅有一个自增1,而限制条件是a+b小于n。你可以这样看,一开始a+b=1,然后每次a+b的值都增加1,所以总共执行n次。

...a ) b+=2; else b+=3; Printf ("b=%d\\n",b); }
"Printf ("b=%d\\n",b);"should be (应该是)"printf ("b=%d\\n",b);"you type the "p" as capital “P” lead to the error(你把小写的“p”敲成大写的“P”导致了这个错误)

...main() { int a=1,b=0; if(!a) b++; else if(a==0) if(a) b+=2...
答案是0 if(!a)不成立,所以去执行else if(a==0)但是这个条件也不成立,所以结束。后面的if(a)【相当于if(a != 0)】else 是一组,均在前面if(a==0)成立的前提下才能运行,所以本程序中这两句根本运行不到。希望对你有帮助。

...main(){int a=1,b=0; if(!a)b++; else if (a==0) if(a) b+=2...
答案是0。。。

...a=1,b=0;if(!a)b++;else if(a==0){if(a)b+=2;}else b+=3;printf...
首先a=1,则if( !a)为假,不执行b++;然后else if( a==0)也为假,不执行后面的if(a),即不会执行b+=2或b+=3;所以 最后结果b还是0;

main() {int a=1,b=0 if(!a)b++ else if(1==0) if(a
if(!a)b++;等价(不要忘;if(a==0)b=b+1;)if(a)b+=2;等价(不要忘;if(a!=0)b=b+2;)b+=3;等价b=b+3;给赞哦!!!

int a=1,b=2; if(a==1)a=b;else a++;printf("%d,%d\\n",a,b); 其中if...
if(a==1) \\\\如果a等于1(即如果a与1相等,此处的==是逻辑等号,就像大于小于一样)a=b; \\\\那么将b的数赋值给a else a++; \\\\否则,a加1(++表示自加,即自己加1)

...{ int a=1,b=0; if(--a) b++; else if(a==0) b+=2; else b+=3...
a=1,--a把a变成了0,所以第一个if不成立,跳到第二个if,因为这时候a是0,满足a==0,成立,于是进行b+=2 个人认为b++=2是错误的 ++b=2是正确

c++求输入一定的数字,求奇偶的个数
或者输入负数时结束也可以。include <iostream> using namespace std;int main() { int d,a,b;a=b=0; while ( 1 ) { cin>>d; if ( d==0 ) break; else if ( d%2==0 ) a++; else b++; }{ cout<<"偶数个数"<<a<<",奇数个数"<<b<<endl; return 0;} ...

这道题答案是0。 求问,a在第一个if和else if两个判断都不满足时,不是...
if(!a)\/\/a=1;!a=false不执行,b=0 b++;else\/\/执行 if(a==0)\/\/a!=0后面都是if的块,所以后面都不执行 if(a) b+=2;else b+=3;printf("%d\\n",b);} \/\/改成以下语句看的更清楚 \/\/if因为不加括号只执行紧随其后的一句代码,而if\/else \/\/结构是一句话 \/\/所以加花括号是好...

相似回答