2차원 배열을 이용한 성적계산기.
지희
좀더 간단하게 줄일수 잇는방법.질문 내용 :
#include stdio.h
void main()
{
char name[100][8];
int arr[100][100]={0};
int x, num, tot=0;
int kor=0, mat=0, eng=0, com=0, hap=0;
float avg, avg2; printf(학생 수를 입력하시오....최대100명\n);
scanf(%d, &num);
if(num 100)
{
printf(처리 불가능 학생수 초과\n);
goto exit;
}
printf(점수는 국어, 수학, 영어, 컴퓨터 순으로 입력하시오...(스페이스로 칸구분)\n);
for(x=1; x=num; x++)
{
printf(%d번째 학생의 이름 입력 : , x);
scanf(%s, &name[x]);
printf(\t학생의 점수 입력(4과목) 스페이스로 구분) : );
scanf(%d %d %d %d, &arr[x][0], &arr[x][1], &arr[x][2], &arr[x][3]);
}
printf(---------------------------------------------------------------\n);
printf(이름\t국어\t수학\t영어\t컴퓨터\t총점\t평균\n);
for(x=1; x=num; x++)
{
tot = arr[x][0] + arr[x][1] + arr[x][2] + arr[x][3];
kor += arr[x][0];
mat += arr[x][1];
eng += arr[x][2];
com += arr[x][3];
hap = kor + mat + eng + com;
avg = (float)tot/4;
printf(%s\t %d\t %d\t %d\t %d\t %d\t %5.2f\n, name[x], arr[x][0], arr[x][1], arr[x][2], arr[x][3], tot, avg);
}
printf(학년총점 %d\t %d\t %d\t %d\t %d\t , kor, mat, eng, com, hap);
printf(\n);
exit:;
}
너무 쉽게짯다고 다시 짜래요 ㅜㅜ 요악좀 부탁드려요 ..
-
비사벌
2단 반복문을 이용해서 짜보세요~