题目描述
1.如果想输出%一定要格式化一下,写成%%
2.一定要强制类型转换,最后那些
3.double pc=0.0,pr=0.0,pf=0.0;
pc=c/sum100;
pr=r/sum100;
pf=f/sum*100;_
*里的这一块,你写的都是废话,都是不对的,c,r,f都是int型,而百分数虽然你定义的是double型,但是并不能算出来double型,结果是0.00;因此要像你做后那样(double)强制类型转换!!!
4.printf(“Percentage of coneys: %.2lf %%\n”,(double)c/sum100);
以后就按这样的思路来写,直接先明确:要输出,那要输出些什么?写在后面就行了,也不用再重新定义变量来存放了
样例
#include<iostream>
using namespace std;
int main()
{
int n;
cin>>n;
int a,i,c=0,r=0,f=0,sum=0;
char t;
for(i=1;i<=n;i++)
{
cin>>a>>t;
if(t=='C') c+=a;
else if(t=='R') r+=a;
else f+=a;
sum+=a;
}
_**double pc=0.0,pr=0.0,pf=0.0;
pc=c/sum*100;
pr=r/sum*100;
pf=f/sum*100;**_ **里的这一块,你写的都是废话,都是不对的,c,r,f都是int型,而百分数虽然你定义的是double型,但是并不能算出来double型,结果是0.00;因此要像你做后那样(double)强制类型转换!!!
printf("Total: %d animals\n",sum);
printf("Total coneys: %d\n",c);
printf("Total rats: %d\n",r);
printf("Total frogs: %d\n",f);
printf("Percentage of coneys: %.2lf %%\n",(double)c/sum*100);
printf("Percentage of rats: %.2lf %%\n",(double)r/sum*100);
printf("Percentage of frogs: %.2lf %%\n",(double)f/sum*100);
return 0;
}
算法1
(暴力枚举) $O(n^2)$
blablabla
时间复杂度
参考文献
C++ 代码
blablabla
算法2
(暴力枚举) $O(n^2)$
blablabla
时间复杂度
参考文献
C++ 代码
blablabla