성적을 테이블 작성하는 비교적 간단한 프로그램입니다.마지막 루프 이전에 충돌이 발생합니다.
특히 마지막 중간 입력에서 마지막 루프를 완료하는 동안 내 프로그램이 충돌합니다. 도움이 필요 하신가요?
#include <stdio.h>
#include <string.h>
#define ARRAYSIZE 2
int main(void)
{
char studentID[ARRAYSIZE][10];
int midterm[ARRAYSIZE];
int fina[ARRAYSIZE];
int i=0;
double overall[ARRAYSIZE];
for (i=0;i<ARRAYSIZE;i++)
{
printf("\nInput Student ID:");
scanf("%s",&studentID[i][10]);
printf("\nInput midterm score:");
scanf("%d",&midterm[i]);
printf("\nInput final score:");
scanf("%d",&fina[i]);
overall[i]=midterm[i]*0.3+fina[i]*0.7;
}
printf("\nStudent ID MidTerm Final Overall\n");
for (i=0;i<ARRAYSIZE;i++)
{
printf("%s%5d%5d%5f",studentID[i][10],midterm[i],fina[i],overall[i]);
}
return 0;
}
반환되는 프로세스는 -1073741819 (0xC0000005)입니다. 감사.
'는 scanf ("%의 S", studentID [I] [0]);' –
'의 printf ("% S %의 5D %의 5D %의 5 층"studentID [I] [ –
] 개행이 발생할 때 scanf()가 중지됩니다. 형식 서술문에 각각 앞에 ''문자가없는 한. 이 공백 문자는 scanf()가 공백 (예 : 개행)을 건너 뛰게합니다. – user3629249