프로그래밍 질문드려요

글쓴이
  • 2014.11.05. 01:02
  • 1020

#include <stdio.h>

int scan(int a[ ],int max_n)
{
 int i, n;

 scanf("%d", &n);
 if(n>max_n) n=max_n;
 for(i=0; i<n && !(scanf("%d", &a[i])!=1);++i);
 return n;
}
void print(int a[ ],int n)
{
 int i;

 for(i=0;i<n;++i)
  printf("%d ", a[i]);
 printf("\n");
}

int main(void)
{
 int a[5];
 int max_n=5, n;

 n = scan(a,max_n);
 print(a,n);
 return 0;
}

 

입출력결과가 4 /n 11 22 33 ctrl + Z 누르면 11 22 33 이 나와야 되는데 마지막에 garbage 값이 나오네요..

조건에서 명시된 길이와 실제 길이가 다를 경우 둘 중 최소값을 수열의 길이로 정함

이라고 나와있는데 이 조건 식을 옮기는 부분에서 오류인 거 같은데 어떻게 고쳐야 되는지 아시는 분 계시나요?

 

인덴트 못 맞춰서 죄송합니다.. ㅠㅠ

권한이 없습니다.
댓글 12
글쓴이 글쓴이 14.11.05. 01:06
배열 a에 저장할 수 있는 수열의 최대 길이를 max_n으로 제한한다 라고 적혀있습니다.
0 0
엄격한 까마중 14.11.05. 01:18
/n??
0 0
글쓴이 글쓴이 14.11.05. 01:20
엄격한 까마중

개행이요 new line \n 는 문제 없어보입니다..

0 0
엄격한 까마중 14.11.05. 01:21
졸린데 보자면 일단 님이 짠 프로그램에서 배열 a[0] a[1] a[2] a[3]에서 11 22 33 garbage 가 들어가있을수밖에없습니다
0 0
글쓴이 글쓴이 14.11.05. 01:23
엄격한 까마중
제가 말한 부분에서 틀린건가요? 뭐라고 고쳐야 맞을까요 ㅠㅠ;;
0 0
글쓴이 글쓴이 14.11.05. 01:26
글쓴이
#include <stdio.h>

? scan(?, ?)
{
int i, n;

scanf("%d", &n);
if(?) ?;
for(i=0; ? && !(?);++i);
return ?;
}
? print(?, ?)
{
int i;

for(i=0;i<n;++i)
printf("%d ", a[i]);
printf("\n");
}

int main(void)
{
int a[5];
int max_n=5, n;

n = scan(?, ?);
print(?, ?);
return 0;
}
이게 문제 였고 ?를 채우는 문제 였는데 아무래도 if에서 틀린 거 같은데 ㅠ
0 0
엄격한 까마중 14.11.05. 01:31
글쓴이
return i 해보세요
0 0
글쓴이 글쓴이 14.11.05. 01:32
엄격한 까마중
If부분맞아요?
0 0
엄격한 까마중 14.11.05. 01:37
글쓴이
일단 return i 로 해놓고 실행해보세요 저도 지금 휴대폰이라..

컨트롤 Z눌렀을때의 갯수를 return 받아야지 입력받은 최소값을 리턴하면 안될것같네요
0 0
글쓴이 글쓴이 14.11.05. 01:39
엄격한 까마중
내일 해보겠습니다 감사합니다일단...
0 0
더러운 새머루 14.11.05. 03:58

이런 100라인도 안되는 코드는 직접 풀어봐야 자기 실력이 되는건데...

별로 안어려운거 같아서 풀어볼려다가 행라인 정리 안되어있어서 잔소리나 하고 갑니다 ㅋ

0 0
교활한 고구마 14.11.05. 08:49

return i 맞는듯... 마지막에 garbage값이 나온다는 건 값이 안 들어갔거나 길이가 잘못된 거네요. 여기선 후자

0 0
  • 공지 욕설/반말시 글쓰기 권한 영구 정지 10
  • 공지 식물원 이용규칙 (2018/09/30 최종 업데이트) - 학생회 관련 게시글, 댓글 가능 17
  • 요새 새벽벌도서관 다니는데
    초연한 냉이
    26.07.10.
  • 쉴 때 어디 좀 나가보려는데 잘 안 되네요
    나쁜 산단풍
    26.06.30.
  • 월드컵 탈락...
    청결한 연잎꿩의다리
    26.06.28.
    1
  • 슬슬 날이 좀 더워지네요
    까다로운 둥근잎나팔꽃
    26.06.20.
  • 홈플러스 동래점도 결국 문 닫으려나요...
    도도한 튤립나무
    26.06.10.
    2
  • 근데 요새 맥도날드 콜라 시키면 빨대 쑤셔넣기 힘들어지지 않았나요?
    겸연쩍은 노루오줌
    26.06.05.
    2
  • 요새 가끔씩 베란다에 누가 숨어 살거나 침입해 있는 꿈을 꾸는데
    명랑한 흰꽃나도사프란
    26.05.24.
  • 다시 돌아온 노는날~~~~
    신선한 히아신스
    26.05.22.
  • 오늘은 어버이의 날입니다
    유치한 곰취
    26.05.08.
  • 뭐여 주식 왜 이렇게 올랐어여
    끔찍한 질경이
    26.05.06.
  • 간만에 3일 휴가 ㅠㅠㅠㅠ
    활달한 머루
    26.05.01.
    2
  • 여행 많이 다니시는 분들은 저축은 어떻게 하시나요
    따듯한 애기봄맞이
    26.04.26.
  • 오늘 만덕센텀고속화도로 타봤는데
    슬픈 호두나무
    26.04.23.
  • 2년전에 건강검진 안 받고 올해 받았는데
    다친 도깨비바늘
    26.04.19.
  • 오피스텔 사는데 위층에서 물을 너무 많이 쓰네요
    도도한 긴강남차
    26.04.14.
  • 친구구합니다
    발랄한 왕원추리
    26.04.06.
    1
  • 그래도 요새는 영화관에서 나름 볼만한 영화가 꽤 있네요
    무좀걸린 갈참나무
    26.04.04.
  • 날씨는 좀 풀렸는데 세상은 아직 전쟁통이네요
    기발한 개연꽃
    26.03.27.
  • 예전에 자취하면서 먹었던 컵밥 같은 게 요샌 많이 없네요
    나쁜 큰괭이밥
    26.03.20.
    1
  • 15학번 동기들 잘지내나요
    근육질 먹넌출
    26.03.19.
    3
검색