數與字的轉換
请阅读免责声明。删除百科只是中文维基百科被删除条目的存档。 | 建议删除本条目 |
數與字的轉換(ASCII碼)
請輸入一個字串,並判別其中的數字後相加
範例輸入
serhserh484543serhserhserh453erhserh786erh
範例輸出 485782 /* 484543 + 453 + 786 = 485782 */
C 解法:
#include<stdio.h> #include<stdlib.h> #include<string.h> // strlen() 所需 int main() { char s[1000]={0}; while(gets(s)) { int n=strlen(s); // 字串長度 int sum=0; // 總合 int x; // 每一節數字的值 int a; for(a=0;a<=n;a++) // 從第一項開始 { if(s[a]>='0'&&s[a]<='9') x=x*10+(s[a]-48); // 處理數字進位 // '字元' 代表著此字元的ASCII碼 else sum+=x,x=0; // 加到總和並歸0 } printf("%d\n",sum); } return 0; }