C語言程式:將給定整數中的所有零替換為一。
問題
編寫一個程式,將給定整數中的所有零 (0) 替換為 1。
給定一個整數作為輸入,數字中的所有 0 都必須替換為 1。
解決方案
考慮以下示例:
這裡,輸入是 102410,輸出是 112411。
演算法
參考以下演算法將整數中的所有 0 替換為 1。
步驟 1 - 從使用者處輸入整數。
步驟 2 - 逐位遍歷整數。
步驟 3 - 如果遇到 '0',則將其替換為 '1'。
步驟 4 - 列印整數。
示例
以下是將給定整數中的所有 0 替換為 1 的 C 語言程式:
#include<stdio.h>
int replace(long int number){
if (number == 0)
return 0;
//check last digit and change it if needed
int digit = number % 10;
if (digit == 0)
digit = 1;
// Convert remaining digits and append to its last digit
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("
Enter any number : ");
scanf("%d", &number);
printf("
After replacement the number is : %dn", Convert(number));
return 0;
}輸出
執行上述程式後,將產生以下輸出:
Enter any number: 1056110010 After replacement the number is: 1156111111
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP