欢迎来到Nepire的校OJ入门题解——————蓝桥选拔篇(一)
这次我主要是讲解第八届蓝桥杯全国软件和信息技术专业人才大赛校内选拔赛的七道题目,中间可能会扯到一些其他东西,然后就开始我们的入门题解吧呜喵
Problem A:化学题
Description
输入一个简易的化学式,求他的相对分子质量。
Input
输入数据的第一行有一个整数T,表示有T组测试数据。
每组数据有一行只包含C、H、O的化学式(这里C、H、O的相对原子质量为分别为12、1和16,且化学式长度不超过100)。Output
输出一个整数,表示化学式的相对分子质量。
每组测试数据输出一行。Sample Input
2
CHCOHOCHHH
CHOCHCHSample Output
73
55
解题思路
这是一道简单的签到题,没有什么需要注意的陷阱,先是输入一个字符串,逐个判断当前的元素的相对原子质量的值,然后进行累加,最终得到输入的化学式的相对分子质量。
参考代码
#include <stdio.h>
#include <string.h>
#include <math.h>
#define k 200
int main()
{
int i,n,m=0;
char a[k];
scanf("%d",&n);
while(n--)
{
scanf("%s",a);
m=0;
for(i=0;i<strlen(a);i++)
{
if(a[i]=='C')
{
m += 12;
}
else if(a[i]=='H')
{
m += 1;
}
else if(a[i]=='O')
{
m += 16;
}
}
printf("%d\n",m);
}
return 0;
}