十进制转二进制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,应从多个方面考虑