标题:用这个主函数调用编写二进制-十进制该怎么做
只看楼主
爱睡觉的猫
Rank: 1
等 级:新手上路
帖 子:84
专家分:0
注 册:2017-4-19
结帖率:83.33%
 问题点数:0 回复次数:10 
用这个主函数调用编写二进制-十进制该怎么做
#include<stdio.h>
#define FALSE 0
#define TURE 1
int main(void)
{
    long binary,decimal;
    while(1)
    {
        binary=BinaryInput();
        if(isInputError(binary)==FALSE)
        continue;
        else
        {
            decimal=Binarytodecimal(binary);
            break;
        }
    }
    printf("二进制数%d对应的十进制数是:%d\n",binary,decimal);
    return 0;
}
搜索更多相关主题的帖子: continue include return 二进制 十进制 
2017-04-19 19:53
renkejun1942
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:不是这样
等 级:贵宾
威 望:33
帖 子:1645
专家分:5297
注 册:2016-12-1
得分:0 
我看了半天没想明白,你那个死循环到底是用来做什么的。

[此贴子已经被作者于2017-4-19 20:05编辑过]


09:30 05/21 种下琵琶种子,能种活么?等待中……
21:50 05/27 没有发芽。
20:51 05/28 没有发芽。
23:03 05/29 没有发芽。
23:30 06/09 我有预感,要发芽了。
2017-04-19 20:04
爱睡觉的猫
Rank: 1
等 级:新手上路
帖 子:84
专家分:0
注 册:2017-4-19
得分:0 
哪个死循环?之前那个帖子?
2017-04-19 20:09
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:0 
进制转换也不是很难  自己写呗  
你这1楼的代码 不伦不类的 谁写的啊

DO IT YOURSELF !
2017-04-19 20:10
renkejun1942
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:不是这样
等 级:贵宾
威 望:33
帖 子:1645
专家分:5297
注 册:2016-12-1
得分:0 
回复 3楼 爱睡觉的猫
这代码真的是你自己写的?
如果是,你自己写的while( 1 ),还问是那个帖子?

09:30 05/21 种下琵琶种子,能种活么?等待中……
21:50 05/27 没有发芽。
20:51 05/28 没有发芽。
23:03 05/29 没有发芽。
23:30 06/09 我有预感,要发芽了。
2017-04-19 20:11
renkejun1942
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:不是这样
等 级:贵宾
威 望:33
帖 子:1645
专家分:5297
注 册:2016-12-1
得分:0 
回去重写吧。先想清楚,程序要干什么的,然后整理思路,想清楚了,再动手写。

拿起笔和纸,仔细整理思路,将过程一步一步写下来,最后才开始写代码。

很多糟糕透顶的代码,都是不想就直接开些的结果。

[此贴子已经被作者于2017-4-19 20:14编辑过]


09:30 05/21 种下琵琶种子,能种活么?等待中……
21:50 05/27 没有发芽。
20:51 05/28 没有发芽。
23:03 05/29 没有发芽。
23:30 06/09 我有预感,要发芽了。
2017-04-19 20:12
磊仔快乐
Rank: 2
等 级:论坛游民
帖 子:15
专家分:34
注 册:2017-3-27
得分:0 
我给你改了一下,你试试
#include<stdio.h>
#include<math.h>
int BinaryInput();
int isInputError(int binary);
int fun(int binary,int k);
int main(void)
{
     int binary,decimal,k;
     binary=BinaryInput();
     k=isInputError(binary);
     decimal=fun(binary,k);
     printf("二进制数%d对应的十进制数是:%d\n",binary,decimal);
     return 0;
}
int BinaryInput()//输入一个十进制数表示二进制数
{
     int a;
     printf("请输入一个二进制数,最前一个数为1:");
     scanf("%d",&a);
     return a;
 }
 int isInputError(int binary)//统计二进制数的位数
 {
     int i=0;
     while (binary>0)
     {
         binary=binary/10;
         i++;
     }
     return i;
 }
 int fun(int binary,int k)//将二进制数转换为十进制数
 
{
    int i,j,sum=0;
    for(i=0;i<k;i++)
    {
        j=binary%10;
        binary=binary/10;
        sum+=pow(2,i)*j;
    }
    return sum;

}
2017-04-20 18:23
爱睡觉的猫
Rank: 1
等 级:新手上路
帖 子:84
专家分:0
注 册:2017-4-19
得分:0 
回复 7楼 磊仔快乐
我发的是题目
2017-04-26 18:40
爱睡觉的猫
Rank: 1
等 级:新手上路
帖 子:84
专家分:0
注 册:2017-4-19
得分:0 
回复 7楼 磊仔快乐
我发的是题目
2017-04-26 18:40
爱睡觉的猫
Rank: 1
等 级:新手上路
帖 子:84
专家分:0
注 册:2017-4-19
得分:0 
回复 4楼 wp231957
这是题目,老铁
2017-04-26 18:43



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-476270-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.762918 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved