10进制转换为其他进制,找了半天不知道哪错了,希望有大神帮忙看下
程序代码:
#include<stdio.h> #include<string.h> void convert(int m,int k,char a[]); void reverse(char a[]); int main() { int m,k; char array[20]; printf("input m k:"); scanf("%d %d",&m,&k); convert(m,k,array); return 0; } void convert(int m,int k,char a[]) { int i; for(i=0;m!=0;i++) { a[i]=m%k; m=m/k; } reverse(a); for(int j=0;j<i-1;j++) { printf("%d",a[j]); } } void reverse(char a[]) { int k,i; char t; k=strlen(a); for(i=0;i<=k/2;i++) { t=a[i]; a[i]=a[k-i-1]; a[k-i-1]=t; } }