C 计算整数中特定数字的出现次数

标签 c count integer

我遇到了一些麻烦...我正在尝试输入一个数字,后跟一个由多个数字组成的整数。我试图计算第一个数字在整数中出现的次数。 现在,我编写了这段非常简单的代码来向您展示我实际上想要做什么。问题是,这段代码只比较两个整数并告诉我它们是否相同。请注意,我对 C 编程非常缺乏经验,因此这个问题......

int main(){

    int numberOne;
    int numberTwo;
    int count = 0;

    scanf("%d", &numberOne);
    scanf("%d", &numberTwo);

    if(numberOne == numberTwo){
        count++;
    }

    printf("Amount of equals found: %d", count);

return 0;
}

现在,如果我有以下输入:“1 1021023234”,输出将为:“找到的等于数量:0” 输出应该是(在本例中)“输出将是找到的等于数量:2”

希望大家能给我一些建议。

最佳答案

如果我理解正确,那么您需要以下内容

#include <stdio.h>

int main(void) 
{
    unsigned int numberOne;
    unsigned int numberTwo;
    unsigned int x;
    unsigned int base;
    size_t n;

    printf( "Enter first number: " );
    scanf( "%u", &numberOne );

    printf( "Enter second number: " );
    scanf( "%u", &numberTwo );

    x = numberOne;
    base = 1;
    do { base *= 10; } while ( x /= 10 );

    n = 0;

    do { n += numberOne == numberTwo % base; } while ( numberTwo /= 10 );

    printf( "Amount of equals found: %u", n );

    return 0;
}

对于数字1276512612,输出为

Amount of equals found: 2

关于C 计算整数中特定数字的出现次数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26063237/

相关文章:

c - 使用c语言的telnet客户端,用于自动备份一系列路由器

mysql - 连接两个表并获取一个表的计数,但所有结果都与另一个表上的 ID 匹配

java - 逐行打印数字的递归方法

java - 为什么 Integer.MAX_VALUE*2 返回 -2?

python - 在python中将两个整数变量合并到一个 float 中

有人可以向我解释 container_of 中返回的类型吗?

c - libgcrypt-1.8.2 中的 gcry_mpi_t 类型定义

c - 如何在我的 cuda 代码中使用 opencv?

Pandas 迭代行和条件计数

php - 计算 PHP 中的访问者并保存到数据库