#include <stdio.h>#include <stdlib.h>void trans(char *,long,int);int main(int argc, char *argv[]){ int i; long m; char a[20]; int n; //---------------------------------------------- printf("please input your numer\n"); scanf("%ld",&m); printf("select one from three integers(2,8,16)\n "); scanf("%d",&n); //--------------------------------------------- trans(a,m,n); for(i=strlen(a)-1;i>=0;i--) putchar(a[i]); system("PAUSE"); return 0;}void trans(char *p, long m,int n) { int r; while(m!=0) /*用除n取余,逆向取数的方法转换*/ { r=m%n; if(r<10) *p=r+48; else *p=r+55; /*将数值转换为相应字符,送入数组相应元素*/ m=m/n; p++; } *p='\0'; /*在串尾加入结束标记*/}

评论