C 練習例100
問題:5人の学生がいて、各学生は3科目の成績があります。キーボードから上記のデータ(学生番号、氏名、3科目の成績を含む)を入力し、平均成績を計算し、元のデータと計算した平均点をディスクファイル"stud"に保存します。
プログラム分析:なし。
プログラムソースコード:
例
// Created by www.example.com on 15/11/9.
// Copyright © 2015年 サンプル. All rights reserved.
//
#include<stdio.h>
#include<stdlib.h>
typedef struct{
int ID;
int math;
int English;
int C;
int avargrade;
char name[20];
}Stu;
int main()
{
FILE*fp;
Stu stu[5];
int i,avargrade=0;
printf("5人の学生の情報を入力してください:学生番号、氏名、3科目の成績:\n");
for(i=0;i<5;i++)
{
scanf("%d %s %d %d %d",&(stu[i].ID),stu[i].name,&(stu[i].math),&(stu[i].English),&(stu[i].C));
stu[i].avargrade=(stu[i].math+stu[i].English+stu[i].C)/3;
}
if((fp=fopen("stud","w"))==NULL)
{
printf("error :cannot open file!\n");
exit(0);
}
for(i=0;i<5;i++)
fprintf(fp,"%d %s %d %d %d %d\n",stu[i].ID,stu[i].name,stu[i].math,stu[i].English,
stu[i].C,stu[i].avargrade);
fclose(fp);
// system("pause");
return 0;
}
上記の例を実行して出力結果を得た後:
请输入5个同学的信息:学生号,姓名,3门成绩: 1 a 60 70 80 2 b 60 80 90 3 c 59 39 89 4 e 56 88 98 5 d 43 88 78
studファイルを開くと、内容は次のとおりです
1 a 60 70 80 70 2 b 60 80 90 76 3 c 59 39 89 62 4 e 56 88 98 80 5 d 43 88 78 69その他の拡張