思维有些乱,写出来调试了很久,但是是自己写的,很开心。
用的字符串变量,
- #include <iostream>
- #include <string>
- using namespace std;
- int main()
- {
- int n;
- cout<<"please input the number"<<endl;
- cin>>n;
- while (n--)
- {
- double a=1;
- double sum=0;
- int i=0;
- double c = 12.01, h=1.008,o = 16.00, n = 14.01;
- string s,s1;
- string s2="0";
- cout<<"please input the string"<<endl;
- cin>>s;
- s1=s+s2;
- while (i <= s.length() - 1)
- {
- if (s1[i] == 'C')
- {
- if(s1[i+1]<='9'&&s1[i+1]>='1')
- {
- a=(double)(s1[i+1]-48);
- sum=sum+a*c;
- a=1;
- }
- else sum=sum+a*c;
- }
- if (s1[i] == 'H')
- {
- if(s1[i+1]<='9'&&s1[i+1]>='1')
- {
- a=(double)(s1[i+1]-48);
- sum=sum+a*h;
- a=1;
- }
- else sum=sum+a*h;
- }
- if (s1[i] == 'O')
- {
- if(s1[i+1]<='9'&&s1[i+1]>='1')
- {
- a=(double)(s1[i+1]-48);
- sum=sum+a*o;
- a=1;
- }
- else sum=sum+a*o;
- }
- if (s1[i] == 'N')
- {
- if(s1[i+1]<='9'&&s1[i+1]>='1')
- {
- a=(double)(s1[i+1]-48);
- sum=sum+a*n;
- a=1;
- }
- else sum=sum+a*n;
- }
- i++;
- }
- cout<<sum<<endl;
- }
- return 0;
- }