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; }