必威体育Betway必威体育官网
当前位置:首页 > IT技术

分子量

时间:2019-06-12 22:45:13来源:IT技术作者:seo实验室小编阅读:78次「手机版」
 

分子量

一.题目

给出一种物质的分子式(不带括号),求分子量。本题中的分子式只包含4种原子,分别为C, H, O, N,原子量分别为12.01, 1.008, 16.00, 14.01(单位:g/mol)

二.分析

难点:在字符串中分离出数字和字符

一个个利用i+1去识别,识别到了就i++,没有就不变i

三.代码

#include <stdio.h>
#include<string.h>
//0的ascii 为48
char s[1000];
int main ()
{

    char temc;   //  元素
    int temi=1;  // 元素对应的个数
    double sum=0;   //分子总数
    double temM=0;  //分子量
    gets(s);
    int i=0;
    temc = s[i];
    while(temc!='\0')
    {
        temi = 1;
        switch(temc)
        {
            case 'C':temM=12.01;break;
            case 'H':temM = 1.008;break;
            case 'O':temM = 16.00;break;
            case 'N':temM = 14.01;break;
        }

        if(s[i+1]<='9'&&s[i+1]>='0')   //是数字
        {
            i++;
            temi = s[i]-'0';
            while(s[i+1]>='0'&&s[i+1]<='9')  //计算总分子量
            {
                temi*=10;
                temi+=(s[i+1]-'0');
                i++;
            }
        }
        sum += temi*temM;
        temc = s[++i];
    }
    printf("%.3f",sum);

    return 0;
}

相关阅读

分享到:

栏目导航

推荐阅读

热门阅读