C语言数组问题 (急求!!!)

2024-11-17 10:41:20
推荐回答(2个)
回答1:

循环输入10个整数,同时统计非法数字个数。并初始化计数数组的值为-1。遍历数组统计各数字出现的次数。

#include 
int main(void) {
 int ints[10]={0};
 int count[10];
 int i,vn=0;
 for(i=0;i<10;i++){
  scanf("%d",ints+i);
  count[i]=-1;
  if(ints[i]<1||ints[i]>3){
   vn++;
  }
 }
 int j,n;
 for(i=0;i<10;i++){
  n=1;
  if(count[i]==0){
   continue;
  }
  for(j=i+1;j<10;j++){
   if(ints[i]==ints[j]){
    count[j]=0;
    n++;
   }
  }
  count[i]=n;
 }
 for(i=0;i<10;i++){
  if(count[i]!=0){
   printf("%d的个数%d\n",ints[i],count[i]);
  }
 }
 printf("非法数字个数:%d\n",vn);
 return 0;
}

回答2:

#include
int main()

int i,a,b,c,d,n;
a=b=c=d=n=0;

printf("请输入十个数(如1 2 3 2 ):\n");
while(n<10)

scanf("%d",&i);
if(i==1)a++;
else if(i==2)b++;
else if(i==3)c++;
else d++;
n++;

// a b c d分别对应1 2 3 错误字符 的个数