1. 程式人生 > >PAT 1038. 統計同成績學生(20)

PAT 1038. 統計同成績學生(20)

本題要求讀入N名學生的成績,將獲得某一給定分數的學生人數輸出。

輸入格式:

輸入在第1行給出不超過105的正整數N,即學生總人數。隨後1行給出N名學生的百分制整數成績,中間以空格分隔。最後1行給出要查詢的分數個數K(不超過N的正整數),隨後是K個分數,中間以空格分隔。

輸出格式:

在一行中按查詢順序給出得分等於指定分數的學生人數,中間以空格分隔,但行末不得有多餘空格。

輸入樣例:
10
60 75 90 55 75 99 82 90 75 50
3 75 90 88
輸出樣例:

3 2 0

題目大意為,輸入一個正整數(0 < n < 10000),隨後輸入n個整數,第三行輸入一個k(為查詢數的個數),再輸入k個數進行查詢,輸出查詢結果即可

程式碼如下:

#include<stdio.h>
int num[101]={0};         //一共有0-100 101種成績
int main()
{
	long n;
	scanf("%ld",&n);
	int x;
	for(int i=0;i<n;i++){
		scanf("%d",&x);
		num[x]++;             //次數
	}
	scanf("%d",&x);
	int num2[x];                  //進行查詢次數的陣列
	for(int i=0;i<x;i++)
		scanf("%d",&num2[i]);
		for(int i = 0;i<x;i++){
			printf("%d%s",num[num2[i]],i!=x-1?" ":"");       //進行輸出查詢結果,若是滿足i<x-1 則列印要給空格 
		}
	return 0; 
}