8626 原子量计数
时间限制:1000MS 内存限制:1000K 提交次数:0 通过次数:0
题型: 编程题 语言: 无限制
Description
给出一个化学原子式,仅含有C,H,O,N 四种元素,计算其总分子量。
例如,C6H5OH 的原子量为94.108g/mol,计算方法为:6 × (12.01 g/mol) + 6 × (1.008 g/mol) +1 × (16.00 g/mol).
Input
输入的第一行是数字T,表示输入文件含有T个CASE。之后有T行,每行有一个长度小于100 的字符串,表示要求的分子式。原子都用大写字母表示,没有括号,保证所有的式子都合法。
Output
输出每个式子的原子量。
Sample Input
4CC6H5OHNH2CH2COOHC12H22O11
Sample Output
12.01094.10875.070342.296
Hint
Source
PKKJ @ 07 GIS 1
Provider
admin
#include#include double view(char w, int n){ switch(w) { case 'C' : return 12.01*n; case 'H' : return 1.008*n; case 'O' : return 16.00*n; case 'N' : return 14.01*n; default : return 0; }}int main(){ char list[120], temp; int n, T, i, j, len, count; double sum; scanf("%d", &T); while(T--) { memset(list, 0, sizeof(list)); sum = 0; scanf("%s", list); len = strlen(list); for(i=0, count=1; i
1y,最主要的是对一个字符串的分析,注意出现的各种情况,在尾位的情况有三种情况(举例说): N4 NC N11,根据各种情况进行分析编写