第15講 構造体の学習

第5話 構造体を利用した成績一覧表
007を実現するコード例(全文記載)
#include<stdio.h>
#include <stdlib.h>
void f(); //データ生成
void g(); //平均点算出
void h(); //データ表示
struct seiseki{ //構造体seisekiの宣言
  char kurasu; //クラス
  char bangou; //出席番号
  char kokugo; //国語の成績
  char syakai; //社会の成績
  char sansu; //算数の成績
  char rika; //理科の成績
  double heikin; //4教科平均点
};
struct seiseki seito[40];
int main(){
  f(); //データ生成
  g(); //平均点算出
  h(); //データ表示
  return(0);
}
void f(){
  char i;
  for(i=0;i<40;i++){
    seito[i].kurasu=1;
    seito[i].bangou=i+1;
    while(1){
      seito[i].kokugo=rand() % 100;
      if(seito[i].kokugo>=10)break;
    }
    while(1){
      seito[i].syakai=rand() % 100;
      if(seito[i].syakai>=10)break;
    }
    while(1){
      seito[i].sansu=rand() % 100;
      if(seito[i].sansu>=10)break;
    }
    while(1){
      seito[i].rika=rand() % 100;
      if(seito[i].rika>=10)break;
    }
  }
}
void g(){ //平均点計算
  char i;
  for(i=0;i<40;i++)seito[i].heikin=(double)(seito[i].kokugo+seito[i].syakai+seito[i].sansu+seito[i].rika)/4;
}
void h(){ //データ表示
  printf("組 出席番号   国語 社会 算数 理科 平均点\n");
  char i;
  for(i=0;i<40;i++){
    if(seito[i].bangou<10)printf("%d組   %d番    %d  %d  %d  %d  %.1f\n",seito[i].kurasu,seito[i].bangou,seito[i].kokugo,seito[i].syakai,seito[i].sansu,seito[i].rika,seito[i].heikin);
    if(seito[i].bangou>=10)printf("%d組  %d番    %d  %d  %d  %d  %.1f\n",seito[i].kurasu,seito[i].bangou,seito[i].kokugo,seito[i].syakai,seito[i].sansu,seito[i].rika,seito[i].heikin);
    
  }
}
コピペ用添付ファイル

では、構造体を用いてすでに開発したテトリスとブロック崩しをもっとエレガントなものに変更することを、
考えましょう。




第4話へ   第6話へ

第2部目次に戻る  第1部目次に戻る

初心者のための excel 2016 マクロ VBA 入門講義 基礎から応用まで
vc++ c言語 c++ 入門 初心者 基礎から応用まで
ecliqse c++ 入門
魔方陣 数独で学ぶ VBA 入門

数独のシンプルな解き方・簡単な解法の研究
VB講義へ
VB講義基礎へ
初心者のための世界で一番わかりやすいVisual C++入門基礎講座
初心者のための世界で一番わかりやすいVisual Basic入門基礎講座
初心者のための世界で一番わかりやすいVBA入門講義(基礎から応用まで)
初心者のための VC++による C言語 C++ 入門 基礎から応用まで第1部
ecliqse java 入門
java 入門 サイト 基礎から応用まで
本サイトトップへ