2018 HITコンピュータ大学院生の再試験——機械試験部分の本題
1956 ワード
19萌新一枚.たまたま経験を共有するスレッドの中で今年のHITの再试験のプログラミングの问题を见て、小さい水の1波
もし問題があれば、各道の大物の指摘を歓迎します.
1.デパートの10種類の商品の販促(番号1~10)現在n人の顧客が購入し、1人1種類を購入し、ある商品の購入数がm(mを除く)を超えると、人気のある商品となる. プログラミングは統計出力の人気のある製品番号を実現し、複数あれば、小さいから大きいまで出力し、なければ出力しない. プロトタイプvoid Popular(int a[],int n,int m); フレームワークは以下の通りです(テーマではフレームワークを与えますが、ここでは省略します) Input customer number: 7 Input m: 2 Input product ID: 10 5 10 6 5 10 5 出力%dt 5 10
【解析】問題実質:入力数の出現回数を統計し、出現回数>mの場合、その数値を出力する.
2.英語の試験で、m個を超える(mを含まない)単語を書くことができるのはpassです.ひとつの文字列の単語の個数を統計して、mを上回ってPassを出力します!そうでなければNot passを出力します! int Count(char str[]); Input a string: I am a student Input m: 2 4 Pass!
【解析】文字列-単語の統計
文字列の最初の文字がスペースであるかどうかによって、次の2つのケースに分けられます.
(1)1番目の文字はスペース:隣接する2つの文字aとbを正常に考察し、aがスペース、bがスペースでない場合、単語数+1である.
(2)最初の文字はスペースではありません:最初の単語が現れたことを示し、単語数+1;そして(1)と同じように、正常に統計すればよい.
また、文字列にはスペースが含まれており、従来のscanf("%s",str)は使用できません.入力は、gets(str)の使用を考慮することができます.
もし問題があれば、各道の大物の指摘を歓迎します.
1.デパートの10種類の商品の販促(番号1~10)現在n人の顧客が購入し、1人1種類を購入し、ある商品の購入数がm(mを除く)を超えると、人気のある商品となる. プログラミングは統計出力の人気のある製品番号を実現し、複数あれば、小さいから大きいまで出力し、なければ出力しない. プロトタイプvoid Popular(int a[],int n,int m); フレームワークは以下の通りです(テーマではフレームワークを与えますが、ここでは省略します) Input customer number: 7 Input m: 2 Input product ID: 10 5 10 6 5 10 5 出力%dt 5 10
【解析】問題実質:入力数の出現回数を統計し、出現回数>mの場合、その数値を出力する.
#include
int n,m,a[105];
void Popular(int a[], int n, int m)
{
int i;
int IDans[15]={0};
for(i=0;im)
printf("%d\t",i);
}
}
int main()
{
int i;
printf("Input customer number: ");
scanf("%d",&n);
printf("Input m: ");
scanf("%d",&m);
printf("Input product ID: ");
for(i=0;i
2.英語の試験で、m個を超える(mを含まない)単語を書くことができるのはpassです.ひとつの文字列の単語の個数を統計して、mを上回ってPassを出力します!そうでなければNot passを出力します! int Count(char str[]); Input a string: I am a student Input m: 2 4 Pass!
【解析】文字列-単語の統計
文字列の最初の文字がスペースであるかどうかによって、次の2つのケースに分けられます.
(1)1番目の文字はスペース:隣接する2つの文字aとbを正常に考察し、aがスペース、bがスペースでない場合、単語数+1である.
(2)最初の文字はスペースではありません:最初の単語が現れたことを示し、単語数+1;そして(1)と同じように、正常に統計すればよい.
また、文字列にはスペースが含まれており、従来のscanf("%s",str)は使用できません.入力は、gets(str)の使用を考慮することができます.
#include
#include
#define maxlen 105
int m;
char word[maxlen];
int Count(char str[])
{
int i,len,ans;
len=strlen(str);
ans=0;
if(str[0]!=' ')
ans++;
for(i=0;im)
printf("Pass!
");
else
printf("Not pass!
");
return 0;
}
/*
I am a student
2
*/