我需要一些代码帮助,因为heahline说我需要找到一个数字0-9出现在整数中的次数并打印出来如下: 300 在10的基础上 0:2 1:0 2:0 3:1 4:0 5:0 6:0 7:0 8:0 9:0 我试过了
#include <stdio.h>
#include <stdlib.h>
int main()
{
int num, div=1, rem, count=0, i;
printf("Enter Number: ");
scanf("%d", &num);
div = num;
for(i=1; i<=10; i++)
{
div = num;
while(div!< 0)
{
rem = div % 10;
div = div / 10;
if(i == rem)
{
count++;
}
if(i == rem && count >= 2)
{
printf("\n%d is present %d times", i, count);
}
}
}
return 0;
}
它返回正确的答案,但不是我需要的方式。谢谢你的帮助!
答案 0 :(得分:0)
此代码将为您提供每个数字的计数
#include <stdlib.h>
int main()
{
int num, div=1, rem,j, i;
printf("Enter Number: ");
scanf("%d", &num); //3002
div = num;
int count[10]={0,0,0,0,0,0,0,0,0,0};
while(div>0)
{
rem=div%10;
div=div/10;
printf("%d \n",rem);
for(i=0; i<=9; i++)
{
if(rem==i)
{
count[i]=count[i]+1;
}
}
}
for(j=0;j<=9;j++)
{
printf("%d",count[j]);}
return 0;
}
如果输入数字3002,它将输出为2011000000,表示2 0,1 2和1。