c언어 초보입니다 도와주세용
하림
#include stdio.h
#include string.h
#include stdlib.h
typedef struct
{
char name[1024];// 이름
int math;// 수학
int english;// 영어
int korean;// 국어
int total;
}Info;
void process(Info *_info, int n);
int main()
{
Info array[2];
int i, j;
int n = 2;
printf(아래의 정보를 입력하세요.\n);
for(i = 0; i n; i++)
{
printf(이름: );
scanf(%s,array[i].name);
printf(국어: );
scanf(%d,&array[i].korean);
printf(영어: );
scanf(%d,&array[i].english);
printf(수학: );
scanf(%d,&array[i].math);
}
process(array, n);
return 0;
}
void process(Info *_info, int n)
{
int i, j;
int math_t = 0;
int english_t = 0;
int korean_t = 0;
Info temp;
memset(&temp, 0, sizeof(Info));
for (i = 0; i n; i++)
{
for (j =i+1 ; j n; j++)
{
if (strcmp(_info[j-1].name, _info[j].name) 0);
{
temp = _info[i];
_info[i] = _info[j];
_info[j] = temp;
}
}
}
for(i = 0; i n; i++)
{
english_t+= _info[i].english;
korean_t+= _info[i].korean;
math_t+= _info[i].math;
_info[i].total = _info[i].english + _info[i].korean + _info[i].math;
printf(%s 국어(%d) 영어(%d) 수학(%d) 총점(%d)\n,_info[i].name, _info[i].korean, _info[i].english, _info[i].math,_info[i].total );
}
printf(총 과목별 총점: 국어(%d) 영어(%d) 수학(%d)\n,korean_t, english_t, math_t,_info[i].total);
}
여기서 알파벳 순으로 소팅하는 abc순으로 정렬하는 코딩을했는데실행시켜보니 그냥 맨아래부터 순서대로 올라가게 실행이 되는데abc순으로정렬하려고 하는데 어떻게 고쳐야 할까요?
-
뭘봐요
정렬방식이 틀렸네요.
if (strcmp(_info[j-1].name, _info[j].name) 0)
{
temp = _info[j-1];
_info[j-1] = _info[j];
_info[j] = temp;
}
로 고쳐보세요. -
다은
세미콜론을 빼고 했는데 이번에는 무작위로 정렬되었습니다.?
-
에드가
if (strcmp(_info[j-1].name, _info[j].name) 0);
이 부분에서 ;를 빼셔야 합니다.
번호 | 제 목 | 글쓴이 | 날짜 |
---|---|---|---|
2697465 | 수다님...^^ (2) | 가론 | 2025-06-08 |
2697432 | 서버 만드는 함수에서 궁금한게있어요~ | 파랑 | 2025-06-07 |
2697401 | 열혈강의 문제오류 (1) | 꿈 | 2025-06-07 |
2697374 | 기초적인 C언어 프로그래밍 입니다. | 얼 | 2025-06-07 |
2697341 | 좌우대칭 문제인데 Q가 입력되면 종료가 되야하는데 되지않습니다 | 무지개 | 2025-06-07 |
2697314 | fprintf와 fscanf 로 파일 입출력 할떄 | 밝음이 | 2025-06-06 |
2697293 | 툴 소스 뽑아내는법 | 도움 | 2025-06-06 |
2697264 | 소소한거 두어가지 질문할께요~ (8) | 별솔 | 2025-06-06 |
2697235 | scanf로 인풋 받을 때?! | 보담 | 2025-06-06 |
2697207 | 열혈강의 연습문제 질문이요~ (2) | 맥적다 | 2025-06-05 |
2697182 | strcmp, strtok - 어떤 기능을 하는지... | 루다 | 2025-06-05 |
2697129 | [질문] 아래 저축액을 계산하는 프로그램 ㅠ 추가 질문 (7) | 찬늘 | 2025-06-05 |
2697072 | 쌩초보 질문! (1) | 얀 | 2025-06-04 |
2697050 | 도움부탁드립니다.. | 화이트 | 2025-06-04 |
2697023 | gotoxy함수, 어떻게 사용하죠? (3) | 적송 | 2025-06-04 |
2696994 | c언어를 막 시작한 초보인데 질문이 있어용 ㅠㅠ (2) | 귀1여운렩 | 2025-06-03 |
2696944 | 윈도우 콘솔프로그램 질문드립니다 (2) | 꽃님이 | 2025-06-03 |
2696882 | c언어 입력받기 질문 입니다 (2) | 흰추위 | 2025-06-02 |
2696853 | 문자열은 정적메모리에 할당된다고 하는데 정적메모리가 뭡니까?? (6) | 다온 | 2025-06-02 |
2696799 | c c++언어입문전에 파이톤이나 자바스크립트배워두면.. (2) | 앨런 | 2025-06-02 |