鱼C论坛

 找回密码
 立即注册
查看: 4063|回复: 0

n进制转换十进制的问题,欢迎帮忙解惑,谢谢!

[复制链接]
发表于 2013-8-24 11:52:02 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
#include<stdio.h>
#include<string.h>
void main()
{
        long t1;                                                                                   /*最终结果t1输出*/
        int i,n,t,t3;
        char  a[100];
        printf("please input a number string:\n");
        gets(a);                                                                                    /*输入n进制数存到组a中*/
        strupr(a);                                                                                 /*将a中的小写字母转换成大写字母*/
        t3=strlen(a);                                                                            /*求出数组a的长度*/
        t1=0;
        printf("please input n(2or8or16):\n");
        scanf("%d",&n);
        for(i=0;i<13;i++)
        {
                if(a[i]-'0'>n&&a[i]<'A'||a[i]-'A'+10>=0)                             /*判断输入的数据和进制是否相等*/
                {
                        printf("data error!!!");
                        break;                                                                     /*退出程序*/
                }
                if(a[i]>='0'&&a[i]<='9')                                                   /*判断是否为数字*/
                        t=a[i]-'0';
                else if(n>=11&&(a[i]>='A'&&a[i]<='A'+n-10))                /*判断是否为字母*/
                        t=a[i]-'A'+10;                                                        /*求出字母所代表的十进制数*/
                t1=t1*n+t;                                                                   /*求出最终转换成的十进制数*/
        }
         printf("the decimal is %ld\n ",t1);

}




if(a[i]-'0'>n&&a[i]<'A'||a[i]-'A'+10>=0)                             /*判断输入的数据和进制是否相等*/     else if(n>=11&&(a[i]>='A'&&a[i]<='A'+n-10))                /*判断是否为字母*/                   这两条语句是什么意思?是 怎样判断的?谢谢!


小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-11-5 15:19

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表