永发信息网

编写一个函数change(x,r),将十进制整数x转换成r(1<r<10)进制数后输出.

答案:3  悬赏:40  手机版
解决时间 2021-12-17 12:16
C语言的,谢谢。
最佳答案
转成r(1 < r < 10)进制的话直接用内置整数类型表示就够了:

#include

int change(int n, int r)
{
int iresult = 0;
for(int i = 1; n > 0; n /= r, i *= 10)
{
iresult += n % r * i;
}

return iresult;
}

int main()
{
for(int i = 2; i < 10; ++i)
printf("%d 的 %2d 进制: %d\n", 16, i, change(16, i));
}
全部回答
这个函数标准库里有,不需要写。你搜下 itoa()函数;
#include <stdio.h> char *change(int n,int k, char s[]) { int i = 0,len,t,num = 0; if(k < 2 || k > 36) return NULL; while(n) { t = n % k; if(t > 9) s[i] = t - 10 + 'A'; else s[i] = t + '0'; n /= k; ++i; } s[i] = '\0'; len = i; for(i = 0; i < len/2; ++i) { t = s[i]; s[i] = s[len - 1 - i]; s[len - 1 - i] = t; } return s; } int main() { int k,num; char s[33]; printf("num newbase:"); while(scanf("%d%d",&num,&k) == 2) { if(change(num,k,s)) printf("%s\n",s); else printf("不能转换到 %d 进制。\n",k); printf("num newbase(q to quit):"); } return 0; }
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
宽城县文化局办公位置在哪啊?好找么?
床垫里有跳蚤怎么办
承德市文化局办公地址在什么地方?我要处理点
幼儿园教案故事《小黄和小花》
越狱里的男主角叫什么名字啊?
邯郸市文化局在什么地方啊,我要处理点事
现在冬天来了。为什么我的饭量增加了一倍。而
请教:普桑需要加装防盗器吗?
霸州市文化局在什么地方啊,我要处理点事
抚宁区文化局办公地址在什么地方?我要处理点
昌黎县文化局位置在什么地方啊,我要过去办理
唐山市文化局办公位置在哪啊?好找么?
形容人卑微不敢多说话的成语
男人向女友借钱是考验我们在微信认识了两天我
华为麦芒4卡槽怎么插卡
推荐资讯
插簧哪个牌子好能过16A电流不烧坏
春秋战国的历史分期
单选题矩形的一个角的平分线把一条边分为3cm
求解答,孩子晚上一年学需要什么手续
One day a pig went to the stable(马棚)to
单选题Hesaiditwasimportanttobe_________
单选题某条约规定:日本臣民得在中国通商口岸
There is 1old man in New York. He 2childre
女生,姓上官,什么名好听?
我这个人就是别人惹到你了就要发火骂人了心里
Michael Lewis writes about the inner strat
—Wouldyouliketogocampingwithusthisweekend
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?