发个菜鸟级的题~~请高手们帮个忙~~急
编写一程序,将任意一个十进制数转换为二进制数并输出该二进制数。PS:1用最基本的程序写
2用函数调用的形式写
在此万分感谢大家了
----------------解决方案--------------------------------------------------------
什么叫做“用最基本的程序写”
----------------解决方案--------------------------------------------------------
%2取余
----------------解决方案--------------------------------------------------------
#include <stdio.h>
#include <stdlib.h>
#define N 10
int main(int argc, char *argv[])
{
int a,i,flag,s[N];
scanf("%d",&a);
flag=0;
i=0;
do
{
s[i++]=a%2;
flag++;
a=a/2;
}while(a!=0);
for(i=flag-1;i>=0;i--)
printf("%d",s[i]);
system("PAUSE");
return 0;
}
----------------解决方案--------------------------------------------------------
4#程序有的地方不太懂~~不过非常感谢
----------------解决方案--------------------------------------------------------
呵呵
用指针就没有意识了嘛 ----------------解决方案--------------------------------------------------------
不喜欢帮别人写作业
----------------解决方案--------------------------------------------------------
用函数调用的形式这样写一下
#include <stdio.h>#include <stdlib.h>
void numm(int num[],int n)
{
int i=0,j=0;
while(n!=0)
{
num[i]=n%2;
i++;
j++;
n=n/2;
}
for(i=j-1;i>=0;i--)
printf("%d",num[i]);
}
void main()
{
int a,num[15];
scanf("%d",&a);
numm(num,a);
}
----------------解决方案--------------------------------------------------------
#include <stdio.h>
#define MAX 20
void convert(int num,int n)
{
int i=0,j=0;
int array[MAX];
while(num!=0)
{
array[i]=num%n;
i++;
j++;
num=num/n;
}
for(i=j-1;i>=0;i--)
printf("%d",array[i]);
printf("\n");
}
int main()
{
int num,n;
printf("enter a number:");
scanf("%d",&num);
printf("which hex you want to convert:");
scanf("%d",&n);
convert(num,n);
return 0;
}
转换为任意进制
----------------解决方案--------------------------------------------------------
谢谢大家
----------------解决方案--------------------------------------------------------