c语言经典例题(在一个数字中查找统计特定数字个数)

题目描述:

每一个数字中有多少个数字‘7’。(以7为例)

输入描述:

输入第一行一个整数n(1<=n<=10)
接下来有T组测试数据,对于每组测试数据,输入一个整数k(1<=k<=10000000000)。

输出描述:

对于每组测试数据,输出对应答案。

代码展示:

1.#include<stdio.h>  
2.void fun(long long n){  
3.    int m=0;  
4.    while(n>0){  
5.        if(n%10==7) m++;  
6.        n/=10;  
7.    }  
8.    printf("%d\n",m);  
9.}  
10.int main(){  
11.    int n;  
12.    long long k;  
13.    scanf("%d",&n);  
14.    int i;  
15.    for(i=1;i<=n;i++){  
16.        scanf("%lld",&k);  
17.        fun(k);  
18.    }  
19.    return 0;     
20.} 

代码详解:

本题的重点是统计出现个数所以定义了一个m进行统计出现个数,在定义的fun函数中用逐位取余进行筛选符合条件的数,进行m的累加即可。最后注意k的值比较大,要注意进行long long型进行定义,以防空间不够的情况发生。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

无敌暴龙战士16

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值