编写C语言程序将输入的十进制正整数转换成三进制并倒序输出。例如十进制3转换成三进制为10倒序输出为01。以下是一个简单的示例程序:c#include stdiohint main int num; printf请输入一个十进制正整数:; scanfd # int tri32; 用数组存储三进制数 int i = 0; while num &g
完善上面的程序,加入输入检查,确保输入的是一个正整数。如果输入不是正整数,程序应该输出错误提示并让用户重新输入。以下是完整的程序代码:c#include <stdio.h>int main() { int num; while (1) { printf("请输入一个十进制正整数:"); if (scanf("%d", &num) != 1 || num <= 0) { // 输入检查 printf("输入错误,请重新输入!\n"); while (getchar() != '\n'); // 清空输入缓冲区 continue; } int tri[32]; // 用数组存储三进制数 int i = 0; while (num > 0) { tri[i++] = num % 3; num /= 3; } printf("转换成三进制为:"); for (int j = i - 1; j >= 0; j--) { printf("%d", tri[j]); } printf("\n"); break; } return 0;}运行程序,输入一个十进制正整数,程序会将其转换成三进制并倒序输出。如果输入不是正整数,程序会输出错误提示并让用户重新输入。
原文地址: https://www.cveoy.top/t/topic/bYER 著作权归作者所有。请勿转载和采集!