第15講 多次元配列を送ることによって年間成績一覧表を作成する
第4話 合計算出社員gのコーティングとそれに伴うhのコード変更
実行画面
を実現するコーティング例
#include<stdio.h>
#include<stdlib.h>
void f(char n,int p[3][42][8]);
void g(int p[3][42][8]);
void h(int p[3][42][8]);
int main(){
int n,p[3][42][8];
for(n=0;n<3;n++)f(n,p);
g(p);
h(p);
printf("プロジェクト終了\n");
}
void f(char n,int p[3][42][8]){
int i,j;
for(i=0;i<5;i++){
for(j=0;j<5;j++){
p[n][i][j]=rand()%100;
}
}
}
void g(int p[3][42][8]){
int i,j,k,w;
for(i=0;i<3;i++){
for(j=0;j<5;j++){
w=0;
for(k=0;k<5;k++){
w+=p[i][j][k];
}
p[i][j][5]=w;
}
}
for(i=0;i<3;i++){
for(j=0;j<6;j++){
w=0;
for(k=0;k<5;k++){
w+=p[i][k][j];
}
p[i][5][j]=w;
}
}
}
void h(int p[3][42][8]){
int i,j,k;
for(i=0;i<3;i++){
printf("%d学期\n",i+1);
printf("番号 国語 社会 数学 理科 英語 合計 平均\n");
for(j=0;j<5;j++){
if(j+1<10)printf(" 0%d ",j+1);
if(j+1>=10)printf(" %d ",j+1);
for(k=0;k<6;k++){
if(p[i][j][k]<10)printf("0%d ",p[i][j][k]);
if(p[i][j][k]>=10)printf("%d ",p[i][j][k]);
}
printf("%.1f ",(float)p[i][j][5]/5);
printf("\n");
}
printf("合計 ");
for(k=0;k<6;k++){
if(p[i][5][k]<10)printf("0%d ",p[i][5][k]);
if(p[i][5][k]>=10)printf("%d ",p[i][5][k]);
}
printf("%.1f \n",(float)p[i][5][5]/5);
printf("平均 ");
for(k=0;k<6;k++){
printf("%.1f ",(float)p[i][5][k]/5);
}
printf(" %.1f ",(float)p[i][5][5]/25);
printf("\n");
printf("\n");
printf("\n");
}
}
gまでのコード
(スペースは添付ファイルに正しく反映されませんので、
文単位でこのページの該当箇所をコピペしてください。)
最後から,2番目の課題です。
表示に年間の総合成績の生徒欄まで加えて
にように表示できるように変更して下さい。
初心者のための excel 2016 マクロ VBA 入門講義 基礎から応用まで
vc++ c言語 c++ 入門 初心者 基礎から応用まで
eclipse c++ 入門
魔方陣 数独で学ぶ VBA 入門
数独のシンプルな解き方・簡単な解法の研究
VB講義へ
VB講義基礎へ
初心者のための世界で一番わかりやすいVisual C++入門基礎講座
初心者のための世界で一番わかりやすいVisual Basic入門基礎講座
初心者のための世界で一番わかりやすいVBA入門講義(基礎から応用まで)
初心者のための VC++による C言語 C++ 入門 基礎から応用まで第1部
eclipse java 入門
java 入門 サイト 基礎から応用まで
本サイトトップへ