习题3-2 分子量 解题报告
来源:互联网 发布:部落迫击炮升级数据 编辑:程序博客网 时间:2024/04/29 08:47
题目:
代码:
#include <iostream>#include <cctype>#include <string.h>#include <stdio.h>#include <stdlib.h>#define C 12.01#define H 1.008#define O 16.00#define N 14.01using namespace std;int main(){ double sum,k; int n,i; char a[85]; cin >> n; while(n--) { sum=0; cin >> a; for(i=0;i<strlen(a);i++) { k=0; if(isalpha(a[i])) { k=atoi(a+i+1); if(a[i]=='C') { if(k) { sum+=C*k; } else { sum+=C; } continue; } if(a[i]=='H') { if(k) { sum+=H*k; } else { sum+=H; } continue; } if(a[i]=='O') { if(k) { sum+=O*k; } else { sum+=O; } continue; } if(a[i]=='N') { if(k) { sum+=N*k; } else { sum+=N; } continue; } } } printf("%.3lf\n",sum); } return 0;}
解析:
1、本题将四个元素符定义为常量将有利于后面的计算。
2、isalpha()是用来判断一个字符是不是字母,atoi()是将字符串转化为数字的函数。具体用法自行百度。
0 0
- 习题3-2 分子量 解题报告
- 习题3-2 分子量 UVa1586
- 习题3-2 分子量 UVa1586
- 习题3-2 分子量(Molar Mass)
- 习题3-2 分子量(字符+数字)
- 小紫书 习题 3-2(UVA 1586) 分子量(Molar mass)
- 习题3-3 数数字 解题报告
- 习题2-2 韩信点兵 解题报告
- 习题1-3 连续和 解题报告
- 习题3-1 得分 解题报告
- 习题3-4 周期串 解题报告
- 习题3-5 谜题 解题报告
- 习题1-2 温度 解题报告
- 习题2-1 水仙花数 解题报告
- 习题2-6 排列 解题报告
- UVa1586 分子量 算法竞赛入门经典第二版CH-3习题3-2
- 算法竞赛入门经典(第2版)习题3-2 分子量 Molar Mass UVa1586
- 算法竞赛入门经典(第2版)习题3-2 分子量 Uva1586
- 图像的频率域高斯低通滤波
- 面试9
- Nim Game
- Android的一个登录小实例
- J2EE开发技术点4:ajax技术
- 习题3-2 分子量 解题报告
- Android Studio 导入github源码
- Keil MDK V5.0 安装及注册(附软件及注册机下载地址)
- UI-Target-action模式
- 深入理解dispatch_queue
- C++内存分配原则方法
- 字符编码详解
- centos 部署内容
- 一个靠谱的简历