打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
谁帮帮忙给我改下这程序。。
#include"stdio.h"

  int transform(int *a, int b);

  void output(int *a,int n);

  void handle(int *a,int n);

  void main()

  {

  int i;

  int num;

  int a[20];

  printf("input a decimal(from 0 to 999) number: ");

  scanf("%d",&num);

  if(num>1)

  {

  i=transform(a,num);

  handle(a,i);

  printf("transformde number: ");

  output(a,i);

  printf("\n");

  }

  else

  {

  printf("%d\n",num);

  }

  }

  int transform(int *a, int b)

  {

  int *p;

  int re=0;

  p=a;

  while(b/2>=1)

  {

  re++;

  *p=b%2;

  p++;

  b=(b/2);

  }

  *p=1;

  re=re+1;

  return re;

  }

  void output(int *a, int n)

  {

  int *p;

  int i;

  p=a;

  for(i=0;i<n;i++)

  {

  printf("%d",*(p+i));

  }

  }

  void handle(int *a,int n)

  {

  int *p,*q;

  int temp;

  for(p=a,q=a+n-1;p<q;p++,q--)

  {

  temp=*p;

  *p=*q;

  *q=temp;

  }

  }

  这是一个将输入的十进制数以二进制形式输出的程序,可是我编的代码有点耍赖了。。。哪个高人能给我改改我的 int transform(int *a, int b); 这个子函数?我是实在想不出别的算法了。。。。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
C语言数组练习题
c语言经典游戏代码
用VC++类实现快速排序(并输出过程)
USACO/transform
c语言中四个数比较大小问题
使用c语言实现飞机游戏
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服