我是靠谱客的博主 明理小馒头,最近开发中收集的这篇文章主要介绍用树的思想,队列方式(数组)实现十进制转二进制,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

用树的思想,队列方式(数组)实现十进制转二进制

输入十进制n=2,首先"1"入队(相当于树根),然后“1”出队,添加他两个孩子“10”和“11”,依次入队。注意队列是一头进一头出,所以循环一次之后n—变成1,再次出队,出的是“10”,出队的孩子“100”和“101”入队。

| | |

#include<stdio.h>
#include<stdlib.h>
#include<string.h>

typedef struct QN{
 char s[10];
 struct QN *next;
}QNode;

int main()
{
 int n;
 printf("请输入n");
 scanf("%d",&n);
 struct QN *QU;
  QNode qu[100];
 int front,rear,fronter;
 front=rear=0;
  if(n==1)
 {
  printf("十进制1");
 }
     else if(n>=1) 
 {
      strcpy(qu[0].s ,"1");rear++;
      
   while(n>0)
   {
  printf("%sn",qu[front].s ); front++;
  fronter=front-1;
  strcpy(qu[rear].s,qu[fronter].s);strcat(qu[rear].s,"0");rear++;
       //printf("rear=%dn",rear);
       strcpy(qu[rear].s,qu[fronter].s);strcat(qu[rear].s,"1");rear++;
  n=n-1;
   }
 } 
}

最后

以上就是明理小馒头为你收集整理的用树的思想,队列方式(数组)实现十进制转二进制的全部内容,希望文章能够帮你解决用树的思想,队列方式(数组)实现十进制转二进制所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(39)

评论列表共有 0 条评论

立即
投稿
返回
顶部