非常感谢您的耐心指教!请高手帮忙分析一下这个C++程序?

2024-11-20 19:19:14
推荐回答(1个)
回答(1):

2.quotient=(unsigned int)floor(x/i);这个语句没问题吧,为什么运行后没有小数位了?
floor返回不大与x/i的最大整数然后强制转换成无符号整型数赋给quotient

1.zeroflag的作用是什么?
zeroflag和beginflag是两个自己设定的标志位,当满足这两个条件时候运行下面代码,如:if((zeroflag==1)&&(beginflag==1)&&(i>1000)&&remainder>0)。if((zeroflag==1)&&(beginflag==1)&&(i>1000)&&remainder>0)
这段就包含对标志位进行检查。

3.if(remainder!=0)
beginflag=1;
remainder=quotient%10; 钱模10以后如果不等于0的话标志位设置1,代表需要进行后面程序,如果模10以后等于0就没有进行后续程序的需要了。

3.if(remainder!=0)
beginflag=1;

if((zeroflag==1)&&(beginflag==1)&&(i>1000)&&remainder>0)
cout<<"零";
这条语句的作用是什么?
这是一段判断是不是读零的代码,比如我们把1001读成1千零元。

if(remainder>0)
zeroflag=0;
else if(beginflag==1)
zeroflag=1;
它的作用又是什么?

这段是用来设置标志为,当remainder>0读零标志位=0就是不读零的意思。else的情况就是当remainder==0的情况下是要读零的。