8626 原子量計數

2022-03-07 22:52:55 字數 1686 閱讀 3721

時間限制:1000ms  記憶體限制:1000k

提交次數:218 通過次數:89

題型: 程式設計題   語言: g++;gcc

給出乙個化學原子式,僅含有c,h,o,n 四種元素,計算其總分子量。

例如,c6h5oh 的原子量為94.108g/mol,計算方法為:

6 × (12.01 g/mol) + 6 × (1.008 g/mol) +1 × (16.00 g/mol).

輸入的第一行是數字t,表示輸入檔案含有t個case。之後有t行,每行有乙個長度小於100 的字串,

表示要求的分子式。原子都用大寫字母表示,沒有括號,保證所有的式子都合法。

輸出每個式子的原子量。

4

cc6h5oh

nh2ch2cooh

c12h22o11

12.010

94.108

75.070

342.296

pkkj @ 07 gis 1 

admin

很簡單的一道模擬題,**不是很長,測試資料也並不坑人;直接上**:

1 #include 2 #include 3 #include 

4 #include 56//

using namespace std;78

intmain()937

else

38 temp++;

39 c+=temp;40}

4142

else

if(s[j]=='o'

)4354else

55 temp++;

56 o+=temp;

5758}59

else

if(s[j]=='h'

)6071else

72 temp++;

73 h+=temp;

747576}

77else

if(s[j]=='n'

)7889else

90 temp++;

91 n+=temp;

929394}

95}96double sum_c=12.010,sum_h=1.008,sum_o=16.000,sum_n=14.010;97

double ans=c*sum_c+h*sum_h+o*sum_o+n*sum_n;

98 printf("

%.3lf\n

",ans);99}

100return0;

101 }

下面是另一種方法:

#include #include int check(int temp,int n);

int digit(char a);

int main()

return sum;

}int digit(char a)

SylixOS原子量操作

原子量操作是對乙個整形變數進行的不可被打斷的一系列操作介面。當我們的程式存在較多對變數的互斥訪問時,我們的程式必然存在較多的鎖和鎖操作,一方面這使得我們的程式難以編寫和維護,另一方面不合理的鎖操作可能會發生死鎖。為了避免這些問題,sylixos提供了原子量型別atomic t及其api,原子量型別可...

linux中原子量的學習和理解

原子量的理解 我們知道電晶體有兩種狀態,通電和不通電,對應著二進位制儲存中的1和0,這和開關的原理是一樣的,不過開關可以由人來控制,而電晶體的狀態是由電來控制的 我們可以利用一種特殊的閘電路組合控制乙個電晶體中的狀態不再受所通入電流的影響,可以說是把一位數存到了這個電晶體裡面 當需要讀取時,開放電晶...

原子計數操作 syn fetch and

多執行緒計數操作,共享狀態或者統計相關時間次數,這些都需要在多執行緒之間共享變數和修改變數,如此就需要在多線 程間對該變數進行互斥操作和訪問.我們譚老先生早都說過了!i 和 i 都是不是原子性的,本質上為三步 1.從快取取到暫存器 2.在暫存器中加1 3.再存入快取 但是有時候由於時序的元素,多執行...