请用一个很简单的C语言程序:十进制转换为二进制。
5个回答
展开全部
十进制转二进制可以使用库函数itoa。
itoa函数原型:char*itoa(int value,char*string,int radix);
功能:将任意类型的数字转换为字符串。在<stdlib.h>中与之有相反功能的函数是atoi。
nt value 被转换的整数,char *string 转换后储存的字符数组,int radix 转换进制数,如2,8,10,16 进制等。
参考代码:
#include <stdio.h>
#include<stdlib.h>
int main()
{
int i=10;
char a[100];
itoa(i,a,2);
printf("%s\n",a);
return 0;
}
/*
1010
*/
itoa函数原型:char*itoa(int value,char*string,int radix);
功能:将任意类型的数字转换为字符串。在<stdlib.h>中与之有相反功能的函数是atoi。
nt value 被转换的整数,char *string 转换后储存的字符数组,int radix 转换进制数,如2,8,10,16 进制等。
参考代码:
#include <stdio.h>
#include<stdlib.h>
int main()
{
int i=10;
char a[100];
itoa(i,a,2);
printf("%s\n",a);
return 0;
}
/*
1010
*/
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
代码如下,算得挺准的:
#include<stdio.h>
int main(void){
int n,i,c=0,s[25];
scanf("%d",&n);
for(i=n;i;i-=1){
s[c]=i%2;
c+=1;
}
for(c-=1;c>0;c-=1){
printf("%d",&s[c]);
}
return 0;
}
#include<stdio.h>
int main(void){
int n,i,c=0,s[25];
scanf("%d",&n);
for(i=n;i;i-=1){
s[c]=i%2;
c+=1;
}
for(c-=1;c>0;c-=1){
printf("%d",&s[c]);
}
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
int main()
{
int n,a[1000]={0},j;
scanf("%d",&n);
for(int i=0;n;i++)
{
a[i]=n%2;
n/=2;
j=i;
}
for(j;j>=0;--j)
printf("%d",a[j]);
printf("\n");
return 0;
}
int main()
{
int n,a[1000]={0},j;
scanf("%d",&n);
for(int i=0;n;i++)
{
a[i]=n%2;
n/=2;
j=i;
}
for(j;j>=0;--j)
printf("%d",a[j]);
printf("\n");
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
输出的时候把格式符改下不就行了么-_-#
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询