C语言进制转换

易错点

1、pow(x,y) 用来计算x的y次方,x、y及函数值都是double型,若x、y是int型则需进行强制类型转换;

2、scanf("%d\n",&a) 输入时不能打换行符"\n",否则无法成功运行;输入变量有时须加地址运算符"&";

3、当输入的变量是指针类型时,不需要取地址符;

4、做分数累加时,分子分母的变量要用浮点型,否则结果为整型,会丢掉小数点后面的数字,导致结果不准确;

5、char*a[] 表示a是数组,数组中的元素是指针,指向char类型;

6、"="是赋值运算符,"=="是关系运算符,在if语句中用"=="或"!="。

 

 

十进制转任意进制

#include<stdio.h>
#include<stdlib.h>
int main()
{
    int a,to,i=0;
    char b[64]="";
    scanf("%d%d",&a,&to);
    while(a!=0)
    {
        b[i]=a%to;
        if(b[i]>=10)
            b[i]=b[i]-10+'A';
        else
            b[i]+=48;
        a/=to;
        i++;
    }
    i--;
    while(i>=0)
    {printf("%c",b[i]);
    i--;
    }
    printf("\n");
    system("pause");
    return 0;
}



    

 

posted @ 2018-11-22 00:59  YTHLW  阅读(1859)  评论(0编辑  收藏  举报