算法入门经典P57-习题3-2(化学分子式分子量的计算)
#include<iostream> #include<string.h> #include<ctype.h> using namespace std; int main(){ double score = 0,data[] = {12.01,1.008,16.00,14.01}; char data_c[] = {'C','H','O','N'}; char s[105],s_c[50]; int s_num[50]; scanf("%s",s); int i,j = 0,k = 0,len = strlen(s); memset(s_num,0,sizeof(s_num)); for(i=0;i<len;i++){ if(isalpha(s[i])){ if(i>0&&isalpha(s[i-1])){ s_c[j++] = s[i]; s_num[k++] = 1; } else{ s_c[j++] = s[i]; } } else{ int temp = s[i]-'0'; while(i+1<len&&isdigit(s[i+1])){ temp *= 10; temp += s[i+1]-'0'; i++; } s_num[k++] = temp; } } if(s_num[k]==0){ s_num[k] = 1; k++; } for(i=0;i<j;i++){ for(k=0;k<4;k++){ if(s_c[i]==data_c[k]){ score += data[k] * s_num[i]; } } } printf("%lf\n",score); return 0; }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)