标题:帮忙改错 八进制转换为十进制
只看楼主
熊小蛋蛋
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2014-5-22
结帖率:0
已结贴  问题点数:20 回复次数:4 
帮忙改错 八进制转换为十进制
#include <stdio.h>
main()
{ char *p,s[6];
int n;
p=&s;
gets(p);
n=*p-'0';
while(++p!='\0') n=n*8+*p-'0';
printf("%d \n",n);
}
搜索更多相关主题的帖子: include 八进制 十进制 
2014-05-22 10:34
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:5 
程序代码:
#include <stdio.h>

int main()
{ 
    char *p;
    char s[6]={'\0'};
    int n;
    p=&s[0];
    gets(p);  //令p="369"
    n=*p-'0';//n=3
    while(*p!='\0')
    {
        printf("n=%d p=%c\n",n,*p);
        n=n*8+*p-'0';
        p++;
    }
    printf("num=%d \n",n);
    return 0;
}
/*
如何调试本程序:
369
n=3 p=3
n=27 p=6
n=222 p=9
num=1785
*/

DO IT YOURSELF !
2014-05-22 11:26
砖家的谎言
Rank: 12Rank: 12Rank: 12
等 级:禁止访问
威 望:30
帖 子:693
专家分:3898
注 册:2013-12-6
得分:5 
不错的方法,学习了

我不是砖家,要努力成为砖家。
2014-05-22 13:00
Andrew_Lee
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:3
帖 子:185
专家分:626
注 册:2014-3-21
得分:5 
e ,受教了
2014-05-22 15:17
dongshimou
Rank: 3Rank: 3
等 级:论坛游侠
威 望:2
帖 子:44
专家分:152
注 册:2014-1-8
得分:5 
不需要高精度 直接 %o 读八进制,然后 %d 输出10进制就好。
高精度就是直接数组存然后转换就好。
2014-05-23 12:42



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-431899-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.348496 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved