首页
友情链接
每日60s读懂世界
Search
1
伊朗.ir后缀域名免费注册
225 阅读
2
Python模拟实现“京东秒杀”界面文字内容
182 阅读
3
用C语言程序将十进制数转换为二进制数
173 阅读
4
Python的NumPy库
157 阅读
5
英语词汇105-121
141 阅读
英语的平行世界
HTML5+CSS3
Python
C语言
MySQL
技术分享
登录
Search
标签搜索
英语的平行世界
正文
词汇
Python程序设计任务驱动式教程
Python数据分析案例实战
Numpy库
C语言程序设计实例教程慕课版|第二版
中华人民共和国网络安全法
.ir域名
域名注册
免费域名
M.
累计撰写
21
篇文章
累计收到
88
条评论
首页
栏目
英语的平行世界
HTML5+CSS3
Python
C语言
MySQL
技术分享
页面
友情链接
每日60s读懂世界
搜索到
1
篇与
的结果
2023-10-25
用C语言程序将十进制数转换为二进制数
将十进制数18转换为二进制将18除以2,得商9,余数为0将9除以2,得商4,余数为14除以2,得商2,余数为02除以2,得商1,余数为01除以2,得商0,余数为1将余数从下往上排列,得到二进制数10010同样的,在C语言中,可以通过代码实现二进制数的转换,例如:说明引入头文件 stdio.h 使得程序能够使用其中定义的函数和宏。例如, printf() 函数用于向标准输出设备打印输出int main() {} 主函数的开始,程序从这个位置开始执行int 是一种基本数据类型,用于表示整数,然后创建为一个变量为 decimal ,赋值18 换种说法:定义一个整型变量 decimal 并赋值为 18,指定要转换的十进制数。创建一个名为 binary 的整型数组,用于存储二进制数的每一位。通过 [] 指定数组大小为 32 个元素,可以用来存储较长的二进制数 换种说法:定义一个数组 binary ,用于存储二进制数的每一位。最大为32位创建一个名为 i 的变量,并赋值为 0 ,用于循环控制、索引数组等需要使用整数计数器的场景。 换种说法:初始化变量 i 为 0,作为数组索引while 是 C 语言中的一个循环控制语句,用于在满足指定条件时重复执行一段代码块。在这个例子中,循环条件为 decimal > 0 当 decimal 大于0时程序会一直执行 换种说法:进入 while 循环,判断 decimal 是否大于 0binary[i] = decimal % 2; 的作用是将变量 decimal除以 2 的余数赋值给数组 binary 的第 i 个元素。这样可以将 decimal 的二进制表示的每一位存储在数组 binary 中的对应位置。 换种说法:在循环中,将 decimal 对 2 求余并将结果存储到 binary 数组中的第 i 位将变量 decimal 除以 2 的结果赋值给自身,相当于将 decimal 右移一位,这个操作可以在将十进制数转换为二进制数时用于获取二进制数的下一位。 /= 是 C 语言中的除并赋值运算符,等于 decimal = decimal / 2;i++ 是 C 语言中的自增操作符,用于将变量 i 的值增加 1。它等价于 i = i + 1; 或者 i += 1; 。通过这行代码,可以使循环控制变量 i 每次循环后自增,以便在数组中逐个存储二进制数的每一位。这样,每次循环后 binary[i] 就会存储下一个二进制位的值。 换种说法: i++ 是一个自增运算符,用于将变量 i 的值加一}: 循环重复上述步骤,直到 decimal 不大于 0循环结束输出 Binary: ,表示二进制数这行代码是一个 for 循环,用于逆序输出二进制数的每一位。 int j = i - 1 在循环开始前,初始化循环变量 j 的值为 i - 1 。这里使用 i - 1 是因为在之前的循环中, i 已经自增过了,所以需要减去 1 才能正确对应数组最后一位的索引。 j >= 0 循环条件,当 j 大于等于 0 时继续循环。这保证了循环会一直进行,直到遍历完所有的二进制位。 j-- 每次循环结束后,将 j 自减 1,使其逐渐减小,实现逆序的效果。 简单来说 for (int j = i - 1; j >= 0; j--) { 就是开始一个倒序循环,从最高位到最低位迭代输出二进制数。printf("%d", binary[j]); 按照倒序顺序输出 binary[j] 中的二进制数值。循环结束输出换行符return 0; 返回 0 表示程序结束程序{tabs}{tabs-pane label="代码内容"}#include <stdio.h> int main() { int decimal = 18; int binary[32]; int i = 0; while (decimal > 0) { binary[i] = decimal % 2; decimal /= 2; i++; } printf("Binary: "); for (int j = i - 1; j >= 0; j--) { printf("%d", binary[j]); } printf("\n"); return 0; }{/tabs-pane}{tabs-pane label="运行成功效果"}{/tabs-pane}{/tabs}用C语言创建一个十进制数转换为二进制数说明在 decimalToBinary 函数中,定义一个整型数组 binary 来存储二进制数,数组长度为 32,足够存储大多数整数的二进制表示。定义一个变量 i 作为数组 binary 的索引,初始化为 0。进入一个 while 循环,判断输入的十进制数 decimal 是否大于 0。在循环中,使用运算 % 计算 decimal 对 2 取余数,并将结果存储到 binary 数组的第 i 位上。使用整除运算 / 将 decimal 右移一位,等效于将 decimal 除以 2,以便更新 decimal 的值。自增 i 以便在下一次循环中存储下一个二进制位。循环结束后,通过 printf 函数输出提示信息 "二进制数为: "。进入一个 for 循环,从数组 binary 的最后一位开始,逆序输出每一位的值。最后使用 printf("\n") 输出换行符在 main 函数中,声明一个整型变量 decimal ,用于接收用户输入的十进制数。使用 printf 函数提示用户输入一个十进制数。使用 scanf 函数读取用户输入的十进制数,并将其赋值给变量 decimal调用 decimalToBinary 函数,传入 decimal 的值,实现将十进制数转换为二进制并输出的功能。返回 0,表示程序正常终止。程序{tabs}{tabs-pane label="程序代码"}#include <stdio.h> void decimalToBinary(int decimal) { int binary[32]; // 用于存储二进制数的数组 int i = 0; // 数组索引 while (decimal > 0) { binary[i] = decimal % 2; // 计算余数,并存储到数组中 decimal /= 2; // 右移一位,更新十进制数 i++; // 索引自增 } printf("二进制数为: "); for (int j = i - 1; j >= 0; j--) { printf("%d", binary[j]); // 逆序输出数组中的二进制位 } printf("\n"); } int main() { int decimal; printf("请输入一个十进制数: "); scanf("%d", &decimal); decimalToBinary(decimal); // 调用函数转换并输出二进制数 return 0; }{/tabs-pane}{tabs-pane label="运行成功效果"}{/tabs-pane}{/tabs}
2023年10月25日
173 阅读
16 评论
0 点赞