给定数字N ,任务是编写C程序以计算从0到N的零个数。
例子:
Input: N = 10
Output: 2
Explanation:
The number with zeros are 0, 10 till 10. Hence the count of zeros is 2.
Input: N = 20
Output: 3
Explanation:
The number with zeros are 0, 10, 20 till 20. Hence the count of zeros is 3.
方法:
- 从0迭代到N。
- 对于每个数字,请执行以下操作:
- 将上述数字存储在变量temp中。
- 对于温度中的每个数字,如果数字为零,则将零计数加1。
- 打印在上述步骤中计算出的零计数。
下面是上述方法的实现:
// C program for the above approach
#include
// Function to count zero in temp
int countZero(int temp)
{
int cnt = 0;
// Iterate each digit in temp
while (temp) {
// If digit is zero, increment
// the count
if (temp % 10 == 0)
cnt++;
temp /= 10;
}
// Return the final count
return cnt;
}
// Function that counts the number of
// zeros from 0 to N
void countZerostillN(int N)
{
// To store the finalCount of zero
int finalCount = 1;
// Iterate from 0 to N
for (int i = 1; i <= N; i++) {
// Function call to count the
// zeros in variable i
finalCount += countZero(i);
}
// Print the final Count of zero
printf("%d", finalCount);
}
// Driver Code
int main()
{
// Given number
int N = 20;
// Function Call
countZerostillN(N);
}
输出:
3
时间复杂度: O(N)
辅助空间: O(1)
想要从精选的最佳视频中学习和练习问题,请查看《基础知识到高级C的C基础课程》。