首页 > 代码库 > 利用数组统计输出的数值

利用数组统计输出的数值

#include <stdio.h>
#include <iostream>
int main(void){
    int c,i,nwhite,nother;
    int ndigit[10];
    nwhite=nother=0;
    
    for(i=0;i<10;++i){
       ndigit[i]=0;
       printf("%d ",ndigit[i]);
    }  
    printf("\n");
    while((c=getchar())!=EOF){
        if(c>=‘0‘ && c<=‘9‘)
          ++ndigit[c-‘0‘];
        else if(c==‘ ‘||c==‘\n‘||c==‘\t‘)
          ++nwhite;
        else
          ++nother;
     }      
    printf("digits=");
    for(i=0;i<10;++i)
       printf(" %d",ndigit[i]);
       printf(",white space= %d,other= %d\n",nwhite,nother);
    system("pause");
    return 0;
    }

其中if(c>=‘0‘ && c<=‘9‘)
          ++ndigit[c-‘0‘];
对这两条语句不太理解,当输入为:000 
                                890  时,输出结果如下:
digits=1 0 0 0 0 0 0 0 1 1,white space=2,other=3 

利用数组统计输出的数值