程序要求:
编写函数itob(n,s,b),将整数n转化为以b为底数,并将结果以字符的形式保存在字符串s中。
代码如下:
- #include <stdio.h>
- void itob(int n,char s[],int b);
- int main()
- {
- int i=1234;
- int n=16;
- char buf[100];
- itob(i,buf,16);
- printf("i%d的结果为:%s",buf);
-
- reuturn 0;
- }
- void itob(int n,char s[],int b)
- {
- int i=0;
- int j;
- int sign;
- void reserve(char s[]);
-
- if((sign=n)<0)
- n=-n;
-
- while(n/b)
- {
- j=n%b;
- if(j<=9)
- s[i++]=j+'0';
- else
- s[i++] = j+'a'-10;
- }
- if(sign = -1)
- s[i++] = '-';
- s[i] = '\0';
- reserve(s);
-
- }
- void reserve(char s[])
- {
- int i;
- int j;
-
- i=0;
- for(i=0,j=strlen(s)-1;i<j;i++,j--)
- {
- int temp;
- temp = s[i];
- s[i] = s[i];
- s[j] = temp;
- }
- }
阅读(1453) | 评论(0) | 转发(0) |