编一程序,实现将输入的一个无符号整数转换为二进制和八进制表示,分别存入字符数组并输出
- 你的回答被采纳后将获得:
- 系统奖励15(财富值+成长值)+难题奖励30(财富值+成长值)
1个回答
展开全部
用什么语言来写
更多追问追答
追问
C语言
追答
十进制数转换为其它进制,都可以使用除n取余数方法,如下编写即可:
#include <stdio.h>
/*x下面的函数把无符号数x转换为n进制数,结果保存在字符数组s里面*/
void conv(unsigned x, int x, char s[]){
int m=0,i=0,k;
/*第一步、转换到s里面*/
while (x){
s[m++]=x%n;/*把余数存入s末尾*/
x/=n;/*x整除n*/
}
s[m]='\0';
m--;
/*第二步、逆转s*/
while(m>i){
k=s[i];
s[i]=s[m];
s[m]=k;
i++;
m--;
}
}
/*下面是主程序代码*/
main(){
int x,s[127];
printf("请输入一个无符号整数:");
scanf("%u",&x);
conv(x,2,s);
printf("二进制值是:%s\n", s);
conv(x,8,s);
printf("八进制值是:%s\n", s);
}
程序逻辑机构简单,我相信你能看懂,有问题请稍微思考再说出。
来自:求助得到的回答
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询