C言語ウィジェット(何年も書いていない)


需要:1つの関数で10人の従業員がコンピュータ等級試験を受ける情報を構造体配列に格納し、各人の情報には試験番号、氏名、性別、成績が含まれている.成績は優秀、合格、不合格の3つの等級に分けられる.各従業員の情報を関数で出力し、各等級の人数を関数で統計する.
プログラム:
#define N 10
#include "stdio.h"
struct worker
{ int num;
  char name[20];
  char sex;
  char level;
}wor[N]; 
static int s,j,k;
void sum(char x)
{ 
if(x=='A')s++;
if(x=='B')j++;
if(x=='C')k++;
} 
void output() 
{
int i;
printf("the worker information:
"); for(i=0;i<N;i++) printf("%d,%s,%c,%c
",wor[i].num,wor[i].name,wor[i].sex,wor[i].level); } main() {int i,o; for(i=0;i<N;i++) { o=i+1; printf("please input the %d worker's num,name,sex,level :
",o); scanf("%d %s %c %c",&wor[i].num,wor[i].name,&wor[i].sex,&wor[i].level); sum(wor[i].level); } output(); printf("A:%d,B:%d,C:%d
",s,j,k); }