将字符串转换为数字
也许你会想把内容为"439"的字符串转换为数,你可以参考这个程序:#include <stdio.h>
long i=0;long num=0;long h=0;
char sum[50];
int pow(int a/*底数*/,int p/*指数*/) {
long l;
if(p==0) {return 1;}
if(p==1) {return a;}
l=a;
p=p-1;
for(;p!=0;p--) {
l=l*a;
}
return l;
}
int main() {
for(;(sum[i]=getchar())!='\n';i++) {}
printf("转换字符串:%s\n一共%d位\n开始转换...\n",sum,i);
for(;i!=0;i--,h++) {
num=num+(sum[h]-48)*(long)(pow(10,i));}
num=num/10;
printf("转换成功:%d",num);
getchar();
return 0;
}
无聊之作,如果有兴趣的话可以移植到文曲星的Lavax上,肯定会有人喜欢的,应为Lavax中没有scanf();......
----------------解决方案--------------------------------------------------------
直接-'0'不行么?
----------------解决方案--------------------------------------------------------