十进制转二进制C语言版

一、源码

#include <stdio.h>

 

int main(int argc, const char * argv[]) {

    int input = 0;

    

    //提示用户输入

    printf ("请输入十进制数:\n");

    

    //接收数据

    scanf("%d", &input);

    

    

    //转换成二进制

    int temp = input;

    int result = 0;

    int time = 1;

    while (temp != 0) {

        result = temp % 2 * time + result;

        temp = temp / 2;

        

        time = time * 10;

        

    }

    

    //输出二进制数

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

    

    

    return 0;

}

 

二、要点

在转换阶段三种循环控制语句的选择:

1.do...while()可以先排除,假如十进制为1,则do执行一次的操作是多余的

2.for(){}中的循环控制条件难以确定,for(int temp = input; temp>0; temp = temp/2)这样也可以,但是想到这个很难

3.while(){}中的循环条件好控制,也容易想到,应为首选项

 

注意:不要碰到循环就用for,应从多个方面考虑

posted @ 2018-07-16 20:05  健泽  阅读(488)  评论(0编辑  收藏  举报