C 程序将给定整数中的所有零替换为 1。
问题
编写一个程序,用1替换给定整数中的所有零。
给定一个整数作为输入,数字中的所有0必须替换为1。
解决方案
考虑下面给出的例子-
这里,输入是102410,输出是112411。
算法
请参考下面给出的算法以将整数中的所有0替换为1。
步骤1-从用户输入整数。
步骤2-逐位遍历整数。
步骤3-如果遇到“0”,请将其替换为“1”。
步骤4-打印整数。
示例
下面给出的是在给定整数中用1替换所有0的C程序-
#include输出结果int replace(long int number){ if (number == 0) return 0; //检查最后一位数字并根据需要进行更改 int digit = number % 10; if (digit == 0) digit = 1; //转换剩余的数字并附加到它的最后一个数字 return replace(number/10) * 10 + digit; } int Convert(long int number){ if (number == 0) return 1; else return replace(number); } int main(){ long int number; printf("\nEnter any number : "); scanf("%d", &number); printf("\nAfter replacement the number is : %dn", Convert(number)); return 0; }
执行上述程序时,它会产生以下输出-
Enter any number: 1056110010 After replacement the number is: 1156111111