下面的这道题结果是对的,但是输出格式错了,题目要求输入一些十进制数字后输出他们的二进制数,求高人修

#include<stdio.h>main(){int a[15],i,j,n,b,k;while(scanf("%d",&n)!=EOF){if(n>1000){printf("shuruyouwu!!!尀n");break;} k=0;for(i=0;n>0;i++){b=n/2;a[i]=n%2;n=n/2;k++;}for(i=k-1;i>=0;i--){printf("%d",a[i]);}}return(0);}
2026年09月28日 06:44
有3个网友回答
网友(1):

#include
main()
{
int a[15],i,j,n,b,k;
while(scanf("%d",&n)!=EOF)
{
if(n>1000)
{
printf("shuruyouwu!!!\n");break;
}
k=0;
for(i=0;n>0;i++)
{

b=n/2;
a[i]=n%2;
n=n/2;
k++;
}

for(i=k-1;i>=0;i--)
{
printf("%d",a[i]);
}
printf("\n");//增加一个换行就行
}
return(0);
}
显示和输入在同一行,增加一个换行语句就行printf("\n");

网友(2):

e,
好像没错啊。
结果怎么了?

网友(3):

t main(void)
{
int a,b;
int sum;
printf("input two number:\n");
scanf("%d%d",&a,&b);//这,不输入a,b的值怎么调用sum()?那样结果会很怪异的...
sum=add(a,b);
printf("the sum is:%d\n",sum); //这,%d不能少的
return 0;
}

int add(int a,int b)
{
return a+b;
}