用C语言程序设计求以下问题

输入30个1~100的整数,分类统计1~20、21~65、66~100的数各有多少个?

代码如下,如有帮助,请采纳一下,谢谢。

#include <stdio.h>
int main()
{
    int i=0;
    int a=0,b=0,c=0;
    int tmp;
    printf("请输入30个1-100的整数\n");
    for (i=0;i<30;i++)
    {
        scanf("%d",&tmp);
        if(tmp >=1 && tmp <= 20)
            a++;
        else if(tmp >=21 && tmp <= 65)
            b++;
        else
            c++;
    }
    printf("1-20的个数为:%d\n",a);
    printf("21-65的个数为:%d\n",b);
    printf("66-100的个数为:%d\n",c);
    return 0;
}

代码如下:(如有帮助,望采纳!谢谢! 点击我这个回答右上方的【采纳】按钮)

#include<stdio.h>

void main()
{
    int n, i, s1=0,s2=0,s3=0;
    for (i = 0; i < 30; i++)
    {
        scanf("%d", &n);
        if (n>=1 && n<=20)
            s1++;
        else if (n>=21 && n<=65)
            s2++;
        else if (n>=66 && n<=100)
            s3++;
    }
    printf("1~20的数有 %d 个、21~65的数有 %d 个、66~100的数有 %d 个\n", s1,s2,s3);
}

img