输入一行数字字符,请用数组元素作为计数器来统计每个数字字符出现的个数。

题目要求:

注意是:输入的为数字字符

输入一行数字字符,请用数组元素作为计数器来统计每个数字字符出现的个数。

思路:因为输入的是字符,想要统计数字,则需要将数字字符转换成对应的数字,由ASCII码可知,只要减去48即可。再将其对应的数组下标中的元素自增。

int main()
 {

    int num[10]={0},number;
    char aa; 
    printf("请输入一串数字,并以#结束:"); 
 while ((aa=getchar())!='#')   //getchar()函数只能接受单个字符,输入数字也按字符处理。
       {

       number= (int)aa; //强制类型转换,对应数字的ASCII码
        number=number-48;//数字字符转化到其对应的数字
        num[number]++; //对应数组下标元素加一
       } 

 for(int i=0;i<10;i++)
 {

printf("%d 的个数为:%d\n",i,num[i]);

 }
  printf("\n"); 
return 0;
}

打印出来的结果:

输入一行数字字符,请用数组元素作为计数器来统计每个数字字符出现的个数。

上一篇:java 集合


下一篇:c++ 静态成员和方法