| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1891 人关注过本帖
标题:C语言问题 《将8,10,16进制数字串转换成十进制整数的函数》求助
只看楼主 加入收藏
zangjingyao
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2010-1-4
结帖率:50%
收藏
 问题点数:0 回复次数:3 
C语言问题 《将8,10,16进制数字串转换成十进制整数的函数》求助

  (教材习题 6.7 )( filename: CP63.C )
    设计一个名为str2int的函数,它能将八进制数字
    串( 以 0 为前导 )、十进制数字串和十六进制数字
    串( 以0x或0X为前导 )转换成 long 型十进制整数。
    要求在主函数中输入要转换的数字串和输出调用
  该函数得到的转换结果。例如,
  输入:0                      输出:0
 输入:012345            输出:5349
 输入:0x4Ab             输出:1195
 输入:6789                输出:6789
问题补充:void str2int(char s[], int n)
{  int i, r;
   {if(s[0]=='0')
   if(s[1]=='x'||'X')
   do {  r=n%10; i=1;                        
             s[i++] = r<10 ? r+'0' : r+'0'-'A';   
          } while (n/=10);
    else
 do {  r=n%8; i=0;                        
             s[i++] = r<8 ? r+'0' : r-'8';   
          } while (n/=10);
 }
 
 s[i]='\0';              
    reverse(s);
}
int main()
{  int  m;  
    char  a[20];
    printf("Input m:");
    scanf("%d", &m);
    str2int(a, m);
    puts(a);
 return 0;
}

这个程序不能运行  为什么 请指教
搜索更多相关主题的帖子: 数字 函数 整数 进制 C语言 
2010-01-04 14:14
zangjingyao
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2010-1-4
收藏
得分:0 
我还没做完整  但是出现

Linking...
63.obj : error LNK2001: unresolved external symbol _reverse
Debug/63.exe : fatal error LNK1120: 1 unresolved externals
执行 link.exe 时出错.

我不大懂 请指教
2010-01-04 14:19
jiangwu10057
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:1
帖 子:341
专家分:667
注 册:2009-3-25
收藏
得分:0 
#include<stdio.h>
#include<string.h>
#define max_length 256
main()
{
    int str2int(char sz[];int n);
    char  sz[max_length];
    long s;
    printf("请输入八进制、十进制或十六进制数字串:\n");
    gets(sz);
    s=str2int(sz,strlen(sz));
    printf("在此输出转换后的十进制数:%ld",s);
}
int str2int(char sz[];int n)
{
    int i;
    long s;
    for(i=0;i<n;i++)
    {
        if(sz[0]=='0')
        {
            if(sz[1]=='x'||sz[1]=='X')
            {

            }
            else
            {

            }
        }
        else
        {

        }
    }
    return s;
}
应该是这么写吧···
先去上课了·

[ 本帖最后由 jiangwu10057 于 2010-1-4 15:11 编辑 ]
2010-01-04 14:35
zangjingyao
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2010-1-4
收藏
得分:0 
回复 3楼 jiangwu10057
不大懂啊
2010-01-04 15:07
快速回复:C语言问题 《将8,10,16进制数字串转换成十进制整数的函数》求助
数据加载中...
 
   



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

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