字符串转化

来源:互联网 发布:数据实时可视化 编辑:程序博客网 时间:2024/06/05 08:01
字符串转化
运行时限: 1000 ms   单次运行时限: 1000 ms   内存限制: 64 MB
总提交: 561次   通过: 297次

题目描述

要求将一个数字字符串,转化为整数的函数,并且每位数字加一;详细请看样例。

程序输入说明

多组输入;
输入数字字符串a[]('0'<=a[i]<='8',0<=i<=1000)

程序输出说明

输入一个整数,并且各个位的数字加1.

程序输入样例

可见格式带空格和换行符的格式带空格和换行符的格式说明
12345634513


程序输出样例

OriginalTransformed带空格和换行符的格式说明
23456745624

提示

没啥 主要想让速度快起来的话 就要写个特殊的函数
代码AC情况:

代码C GCC
# include <stdio.h>   # define N 1001 # define DEX 10int CF(char C[],int n); char A[N];int main(){    int a=-1,b;   while(gets(A)){    a=-1;    while(A[++a])A[a]-=47; //'0'=48     if(!a)break;    b=CF(A,a);    if(b)printf("%d",b);    for(b=0;b<a;b++)       printf("%d",A[b]);       printf("\n");   }   return 0;  }  int CF(char C[],int n){      int i,j=0;      for(i=n-1;i>0;i--)        if(C[i]>=DEX){//当前位>=10       C[i-1]+=C[i]/DEX;//进位        C[i]%=DEX;//当前位%10        }       if(C[i]>=DEX){//处理最高位           j=C[i]/DEX;           C[i]%=DEX;       }       return j;  //返回最高位的进位 }


原创粉丝点击