怎么样才能输入若干个数然后输出若干个对应的数啊,我只会输入一个数然后输出对应的数😩

关注♥ 该回答参考ChatGPT,由吾为汝整理提供,如若有用,还请题主采纳!♥
你可以编写一个 C 语言程序,使用一个函数将输入的十进制整数转换为二进制字符串,并在主函数中处理多个输入。下面是一个示例代码,展示了如何实现这个功能:
#include <stdio.h>
#include <stdlib.h>
// 函数:将整数转换为二进制字符串
char* decimalToBinary(int n) {
// 计算二进制位数
int bits = sizeof(n) * 8; // 计算整数的位数
char* binary = (char*)malloc(bits + 1); // 分配内存
if (binary == NULL) {
return NULL; // 内存分配失败
}
binary[bits] = '\0'; // 设置字符串结束符
for (int i = bits - 1; i >= 0; i--) {
binary[i] = (n & 1) ? '1' : '0'; // 逐位转换
n >>= 1; // 右移一位
}
// 找到第一个 '1' 的位置
char* start = binary;
while (*start == '0' && start < binary + bits - 1) {
start++; // 跳过前导零
}
return start; // 返回指向二进制字符串的指针
}
int main() {
int number;
printf("请输入若干个整数(以空格分隔,输入非数字结束):\n");
// 循环读取输入
while (scanf("%d", &number) == 1) {
char* binary = decimalToBinary(number);
printf("%s\n", binary); // 输出二进制形式
}
return 0;
}
decimalToBinary 函数:
n,并将其转换为二进制字符串。主函数:
scanf 循环读取用户输入的整数,直到输入非数字字符。decimalToBinary 函数,并输出其二进制形式。将代码保存为 decimal_to_binary.c,然后使用以下命令编译并运行:
gcc -o decimal_to_binary decimal_to_binary.c
./decimal_to_binary
15 16 17 63 64 65
1111
10000
10001
111111
1000000
1000001
这样,你就可以输入多个整数,并得到它们对应的二进制形式了。如果你有其他问题或需要进一步的帮助,请告诉我!