作业帮 > 综合 > 作业

-1无符号八进制怎么表示

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/16 14:58:41
-1无符号八进制怎么表示
第一个:
main()
{
const char bin[2] = ;
const char oct[8] = ;
char buf[64] = ;
unsigned int iNum = 0,i = 0,j = 0,n = 0,old = 0;
printf("please input number:\r\n");
scanf("%d",&iNum);
printf("decimal Num is %d\n",iNum);
old = iNum;
n = 62;
do
{
i = iNum / 2;
j = iNum % 2;
iNum = i;
if(iNum)
{
buf[n] = bin[j];
n--;
}
if(n == 0) return;
}while(iNum);
buf[n] = '1';
printf("binary num is %s\r\n",&buf[n]);
n = 62;
iNum = old;
do
{
i = iNum / 8;
j = iNum % 8;
iNum = i;
if(iNum)
{
buf[n] = oct[j];
n--;
}
if(n == 0) return;
}while(iNum);
buf[n] = '1';
printf("octal num is %s\r\n",&buf[n]);
return;
}
第二个:
main()
{
char buf[32],ch;
unsigned int iNum = 0,i = 0,j = 0,n_num = 0;
printf("please input number:\r\n");
scanf("%5d",&iNum);
printf("decimal Num is %d\n",iNum);
sprintf(buf,"%d",iNum);
if(strlen(buf) != 5) return;
for(i = 0; i < 5; i++)
{
if(buf[i] == 0) break;
for(j = i+1; j < 5; j++)
{
if(buf[j] > buf[i])
{
ch = buf[j];
buf[j] = buf[i];
buf[i] = ch;
}
}
}
n_num = atoi(buf);
printf("new num is %d\n",n_num);
printf("new num is %s\n",buf);
return;
}
再问: 白哥,程序运行有问题的么,有一个错误,还是前面定义语句没写的原因,我的意思是-1的八进制数怎么表示,现在我知道了177777,是进制方面的算法