问题描述 练习 3-5 编写函数 itob(n, s, b),将整数n转换为以b为底的数,并将转换结果以字符的形式保存到字符串s中。例如,itob(n, s, 16)把整数n格式化成十六进制整数保存在s中。 Write the function itob(n,s,b) that converts t ...
分类:
编程语言 时间:
2020-05-21 21:20:18
阅读次数:
72
编写一个函数itob(intnum,chars[],intn),将整数num转换为以n进制的数。保存到s中。在本题中,二进制、八进制及十进制算法思路一样,采取模除的方式,输出各个位置的数,接着采用逆序输出。在十六进制中"0123456789abcdef"[num%16],求出各位的数字。#include<stdio.h>
..
分类:
其他好文 时间:
2015-12-02 12:45:53
阅读次数:
288
写一个函数itob(intn,chars[],intb),将整数n转换为以b进制的数。保存到s中。#include<stdio.h>
#include<stdlib.h>
voiditob(intn,chars[],intb)//整数n转换为以b进制的数
{
inti=0;
intstart=0;
intend=0;
if((b==2)||(b==8))//2进制和8进制
{
while(..
分类:
其他好文 时间:
2015-11-24 06:22:23
阅读次数:
160
题目:编写一个函数itob(intn,chars[],intb),将整数n转换为以b进制的数,保存到s中。题目分析:对于这个问题,根据进制之间的转换特点,将十进制的整数n转换为其他进制,可以利用模除的方式将其转换,但是其中有一个问题:16进制数中表示0123456789abcdef,所以可以将16进制..
分类:
其他好文 时间:
2015-10-30 02:11:34
阅读次数:
149
#include<stdio.h>
staticinti=0;
intitob(intn,chars[],intb)
{
if(n<2)
{
s[i]=n+‘0‘;
}
else
{
itob(n/2,s,b); //递归
i++;
n=n%2;
s[i]=n+‘0‘;
}
s[i+1]=‘\0‘;//结束标志
return0;
}
intmain()
{
chars[20];
intnum=0;
scanf("%d",&num..
分类:
编程语言 时间:
2015-10-27 07:10:42
阅读次数:
279
#include<stdio.h>
voiditob(intn,chars[],intb)
{
inti=1;
for(;i<=32;i++)//共循环了32次,保证得到32位的二进制数
{
s[i-1]=n%b;//数组是从编号0开始的,一直到编号31结束
n=n/b;//用模除的方法依次得到每位进制数
}
for(i=32;i>0;i--)
{
printf("%d",s[i-1]);
..
分类:
编程语言 时间:
2015-10-26 19:02:31
阅读次数:
193
编写一个函数itob(intn,chars[],intb),将整数n转换为以b进制的数。保存到s中。
#include<stdio.h>
voidreverse(char*left,char*right)
{
while(left<right)
{
chartmp=*left;
*left=*right;
*right=tmp;
left++;
right--;
}
}
voiditob(intn,chars[],intb)
{
char..
分类:
其他好文 时间:
2015-10-22 17:33:50
阅读次数:
132
首先关于函数atoi的重写,atoi的功能是字符串能够转换为整数保存,仅仅针对于整数,浮点数以后会有写://实现一个函数intmy_atoi(chars[]),可以将一个字符串转换为对应的整数。
#include<stdio.h>
#include<ctype.h>
intmain()
{
charst[50];
gets(st);
prin..
分类:
其他好文 时间:
2015-07-24 00:13:00
阅读次数:
115
k&r习题3-5,机械工业那本中文答案不咋的,只给了处理10进制以下的参考,本答案摘自网上的那本英文习题解答 /* itob(n,s,b)
* converts the integer n into a base b char
*/
void itob(int n, char s[], int b...
分类:
编程语言 时间:
2014-09-13 14:43:45
阅读次数:
203