今年计算机学院研究生入学复试分多个小
组。现在需要知道每组复试同学中男
生和女生的人数。编写程序分别统计
出男女生的总人数。
输入
输入的第一行是一个数t(0
对于每组输入数据有两行,第一行是一个
正整数n(1
数间由一个空格隔开。
输出
对于每组测试用例,输出一行,由两个数
组成,用一个空格隔开,分别表示男生和
女生的总人数
人数统计-…
输出
对于每组测试用例,输出一行,由两个数
组成,用一个空格隔开,分别表示男生和
女生的总人数
样例输入Copy
2
2
1 0
7
0 1 0 0 1 1 0
样例输出 Copy
1 1
3 4
这是我写的……输出不了,如何改正呢?
int main(){
int t,a[100],b[100],i=0,j,k,nan,nv,c[100],d[100],n;
sca***
****
```*nf("%d",&n);
do{
scanf("%d",&a[i]);
for(j=0;j"%d",b[j]);nan=0;nv=0;
for(k=0;kif(b[k]==1) nan++;
else nv++;
}c[i]=nan;d[i]=nv;
}while(ifor(i=0;i"%d %d\n",c[i],d[i]);
}
}
我写一个能满足要求的代码吧,题主可以参考:
代码如下:
#include<stdio.h>
int main()
{
int t, n;
scanf("%d", &t); // 作为用例次数
while (t--) {
int temp; // 只能是0或者1
int a0 = 0, a1 = 0; // a0、a1 分别代表女生、男生的人数
scanf("%d", &n); // 一次用例的总人数
for (int i = 0; i < n; i++)
{
scanf("%d", &temp);
// 对temp判断,0则女生加一,反之男生加一
if (temp == 0)
a0++;
else
a1++;
}
printf("%d %d",a1,a0);
}
}
你的代码乱套了 看不清楚,发布前请预览