您的位置:首页 > 其它

Uva1586

2016-02-26 16:09 211 查看
#include<stdio.h>
#include<string.h>
int main(){
int times,str_length,flag,i,j,number;
float sum,atom;
char str[100];
scanf("%d",×);
while(times--){
sum=0;
atom=0;
scanf("%s",str);
str_length=strlen(str);
for(i=0;i<str_length;i++){
if(str[i]>='A' && str[i]<='Z'){
if(atom)sum+=atom;
switch(str[i]){
case 'C':{atom=12.01;break;}
case 'H':{atom=1.008;break;}
case 'O':{atom=16.00;break;}
case 'N':{atom=14.01;break;}
}
}
else if(str[i]>='1'&&str[i]<='9'){
number=str[i]-'0';
while(str[i+1]>='1'&&str[i+1]<='9'&&(i+1)<=str_length){
number*=10;
number=number+str[i+1]-'0';
i++;
}
sum=sum+number*atom;
atom=0;
number=0;
}

}
sum+=atom;
printf("%.3lf\n",sum);
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  uva