#include<stdio.h>
#include<string.h>
#include<stdlib.h>
//倒置数组
void revers(char s[])
{
int c, i, j;
j = strlen(s) - 1;//求得s的长度
for(i = 0;i < j;i++ , j--)
{
c = s[i];
s[i] = s[j]; //首尾交换
s[j] = c;
}
}
{
int i, j, sign;
sign = n;
i =0;
if( sign < 0)
{
n = -n;
}
do
{
j = n % b;
s[i++] = (j <= 9) ? j + '0' : j + 'a' -10;
} while ( (n /= b) > 0);
if(sign < 0)
{
s[i++] = '-';
}
s[i] = '\0';
revers(s);
}
int main(void)
{
char buf[500];
int n = 0;
int b = 0;
int t = 0;
printf("输入要转换的数:\n");
while( ( scanf("%d",&n)) != EOF )
{
printf("输入的是: %d\n",n);
printf("输入要转换的进制: 2 ,8,16\n");
scanf("%d",&b);
printf("你输入的:%d,转换为: %d 进制后是: ",n,b);
itob(n,buf,b);
printf("%s\n",buf);
memset(buf,'\0',sizeof(buf));//重置buf 所以元素为 0
b = n = 0; //重置 b n 为零
}
return 0;
}
#include<string.h>
#include<stdlib.h>
//倒置数组
void revers(char s[])
{
int c, i, j;
j = strlen(s) - 1;//求得s的长度
for(i = 0;i < j;i++ , j--)
{
c = s[i];
s[i] = s[j]; //首尾交换
s[j] = c;
}
}
//将整数 n 以 b 为底的数,并将转换结果以字符串的形式保存在 s 中
// 如:itob(n,s,16) 把整数 n 格式化为 16 进制保存在 s 中
void itob( int n, char s[] , int b){
int i, j, sign;
sign = n;
i =0;
if( sign < 0)
{
n = -n;
}
do
{
j = n % b;
s[i++] = (j <= 9) ? j + '0' : j + 'a' -10;
} while ( (n /= b) > 0);
if(sign < 0)
{
s[i++] = '-';
}
s[i] = '\0';
revers(s);
}
int main(void)
{
char buf[500];
int n = 0;
int b = 0;
int t = 0;
printf("输入要转换的数:\n");
while( ( scanf("%d",&n)) != EOF )
{
printf("输入的是: %d\n",n);
printf("输入要转换的进制: 2 ,8,16\n");
scanf("%d",&b);
printf("你输入的:%d,转换为: %d 进制后是: ",n,b);
itob(n,buf,b);
printf("%s\n",buf);
memset(buf,'\0',sizeof(buf));//重置buf 所以元素为 0
b = n = 0; //重置 b n 为零
}
return 0;
}

这篇博客介绍了如何使用C语言将整数转换成2, 8, 和16进制的字符串表示,提供了一个名为`itob`的函数示例,该函数能够根据指定的基数将整数格式化并存储为字符串。"
132440956,19673917,R语言与RStudio的文本分析实战,"['R语言', '文本挖掘', '数据分析', 'RStudio', '数据预处理']





