L1-017 到底有多二
程序员文章站
2022-05-25 19:49:08
题目: 知识点for me: 1、计算res时要先把num强制转换成浮点型,否则两个整形相除会自动转换成整形保存。最开始没加(float),结果res一直是0.00000. 2、输出百分号:%% 3、已经好几次忘记把不是int型的数字-‘0’后再使用了。 上代码: ......
题目:
知识点for me:
1、计算res时要先把num强制转换成浮点型,否则两个整形相除会自动转换成整形保存。最开始没加(float),结果res一直是0.00000.
2、输出百分号:%%
3、已经好几次忘记把不是int型的数字-‘0’后再使用了。
上代码:
#include <iostream> using namespace std; int main() { string s; cin>>s; int num=0; int len; float res; //char c=s[0]; //bool b=(s[0]=='-'); for(int i=0;i<s.length();i++) { if(s[i]-'0'==2) { num++; } } if(s[0]=='-') { len=s.length()-1; if((s[len]-'0')%2==0){ res=(float)num/len*1.5*2*100; }else{ res=(float)num/len*1.5*100; } }else{ len=s.length(); if((s[len-1]-'0')%2==0){ res=(float)num/len*2*100; }else{ res=(float)num/len*100; } } printf("%0.2f%%",res); return 0; }
上一篇: 宇文直为什么*?浅谈背后的真正原因
下一篇: 盒子边框