#include #include #include #include #define MAX_STRING_LEN 30void toOrc(char* str, int idec, int ibase){ char ch[MAX_STRING_LEN] = {'\0'}; if(str == NULL)return;int index = 0; while(idec) {itoa(idec % ibase, &ch[index], ibase);idec /= ibase;index++; } char preChar[2]={'\0'}; for(int i=index - 1; i>=0; i--) {preChar[0] = ch;strcat(str, &preChar[0]); }}void main(){ int iDec = 0; char* str = (char*)malloc(MAX_STRING_LEN * sizeof(char)); memset(str, '\0', MAX_STRING_LEN * sizeof(char)); printf("请输入一个整数(0~65535): "); scanf("%d", &iDec);toOrc(str, iDec, 8); printf("八进制数是: %s\n", str); free(str); str = NULL;}以前写的一个10进制和n进制数之间的转换, 稍稍改了一下, 固定的转化成8进制的... |