數與字的轉換

来自删除百科
本条目“數與字的轉換”在中文维基百科已被删除其它版本),这是一个删除前的存档副本
T.A Shirakawa删除了數與字的轉換,理由是:
存廢討論通過: 内容为:'<noinclude>{{Afd|1=试验程序代码,非百科内容|date=2009/11/01|force=}}</noinclude> 數與字的轉換(ASCII碼) 請輸入一個字串,並判別其中的數字後相加 範例輸入 serhserh484543serhserhserh
这个理由未必准确 (为什么?)

本条目共存留6天:

  • 创建于:2009-11-01
  • 删除于:2009-11-08
  • 贡献者:2
  • 编辑:2
  • 浏览:无数据
请阅读免责声明。删除百科只是中文维基百科被删除条目的存档。   Alert icon 建议删除本条目

本条目在2009/11/01提交删除。理由是:“试验程序代码,非百科内容”

數與字的轉換(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;
}