网站首页

人工智能P2P分享搜索全网发布信息网站地图标签大全

当前位置:诺佳网 > 电子/半导体 > 嵌入式技术 >

从键盘输入10个整数,以二进制形式输出到“ou

时间:2023-06-07 11:28

人气:

作者:admin

标签:   10个  键盘    整数  输入 

导读:注释:`bin()`函数将整数转换为二进制字符串,`[2:]`表示去掉字符串前面的0b,`zfill(32)`表示在字符串前面填充0,使其长度为32。...

Python实现:

with open('outFile', 'w') as f: # 打开文件,以写入方式

nums = [] # 存储输入的10个整数

print("Please input 10 integers:")

for i in range(10):

    num = int(input()) # 从键盘输入一个整数

    nums.append(num)

    f.write(str(num) + '\\t') # 将整数以十进制形式写入文件

    f.write(bin(num)[2:].zfill(32) + '\\n') # 将整数以二进制形式写入文件

注释:bin()函数将整数转换为二进制字符串,[2:]表示去掉字符串前面的"0b",zfill(32)表示在字符串前面填充0,使其长度为32。

图片

C语言实现:

#include

int main() {

int nums[10]; // 存储输入的10个整数

FILE *fp; // 文件指针

fp = fopen("outFile", "w"); // 打开文件,以写入方式

if (fp == NULL) { // 判断文件是否打开成功

    printf("Failed to open file.\\n");

    return 1;

}

printf("Please input 10 integers:\\n");

for (int i = 0; i < 10; i++) {

    scanf("%d", &nums[i]); // 从键盘输入10个整数

    fprintf(fp, "%d\\t", nums[i]); // 将整数以十进制形式写入文件

    for (int j = 31; j >= 0; j--) { // 将整数以二进制形式写入文件

        fprintf(fp, "%d", (nums[i] > > j) & 1);

    }

    fprintf(fp, "\\n"); // 换行

}

fclose(fp); // 关闭文件

return 0;

}

具体解释如下:

  1. for (int j = 31; j >= 0; j--):循环从 31 开始,到 0 结束,每次递减 1,循环变量为 j。
    • 这里假设该整数是用 32 位二进制表示的,因此需要从高位到低位依次读取并写入文件。
  2. (nums[i] >> j) & 1:将当前整数 nums[i] 右移 j 位,然后和二进制数 1 进行按位与操作,得到该整数在 j 位上的二进制值。
    • 右移操作可以将该整数的二进制表示从右往左移动 j 位 ,使得它的二进制值在第 j 位变成了最低位,方便进行按位与操作。
    • 按位与操作可以将该整数在第 j 位上的二进制值提取出来,因为只有在该位上是 1 的时候才会产生运算结果为 1,否则结果为 0。
  3. fprintf(fp, "%d", (nums[i] >> j) & 1):将当前整数在 j 位上的二进制值格式化为整数类型,并写入到文件中。
    • 这里使用了 C 语言的 fprintf() 函数,它可以格式化输出数据并写入到文件中。
    • %d 表示将整数类型格式化为十进制整数,并将其保存在文件中

图片

温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信