首页 > 代码库 > c编程:整数的个数。

c编程:整数的个数。

//给定k(1<k<100)个正整数,其中每个数都是大于等于1,小于等于10的数。
//写程序计算给定的k个正整数中,1,5和10出现的次数。
//输入
//    输入有两行:第一行包含一个正整数k,第二行包含k个正整数,每两个正整数用一个空格分开。
//输出
//    输出有三行,第一行为1出现的次数,第二行为5出现的次数,第三行为10出现的次数。
#include<stdio.h>
int main()
{
	int k;//需要输入的正整数的个数
	int i,j;//循环变量,必须在此声明,才能在下面使用,不能要使用的时候才声明它,vc++6.0不支持!!
	int a[100]={0};//把输入的正整数先存入数组中,初始化全为0。
	int count1=0,count5=0,count10=0;//1,5,10的计数器

	scanf("%d",&k);

	for(i=0;i<k;++i)
	{
		scanf("%d",&a[i]);//注意不能在"%d"里面加空格,否则程序有问题(要多输入一个数字)
	}
	for(j=0;j<k;j++)//for循环遍历数组中的每个数字并统计每个数字的出现次数
	{
		if(a[j]==1)	
			count1++;
		if(a[j]==5)
			count5++;
		if(a[j]==10)
			count10++;
	}
	printf("%d\n",count1);
	printf("%d\n",count5);
	printf("%d\n",count10);
	return 0;
}

--====================================================================

不用数组:

#include <stdio.h>
int main()
{
    int i, k, x,//循环变量i,整数个数k,整数值x.
	int a1, a5, a10;//统计1,5,10个数的变量。
    a1 = a5 = a10 = 0;
    scanf("%d", &k);
    for (i = 1;i <= k;++i)
    {
        scanf("%d", &x);
        if (x == 1) ++a1;
        if (x == 5) ++a5;
        if (x == 10) ++a10;
    }
    printf("%d\n%d\n%d\n", a1, a5, a10);
}


c编程:整数的个数。