5:44 c언어를 이 강의로 처음 접해서 공부하고있습니다! 질문이 있는데 scanf가 cmd창에서 입력하는 값을 받는 함수 아닌가요? 그럼 첫 번째 예제에서 40 10 25 20 35 이런식으로 array값을 입력한다는게 scanf("%d", &array[i]) 에서 i를 40 10 25 20 35로 (array를 40 10 25 20 35로 정의한다는) 준다는 말이 맞을까요.. scanf를 잘못 이해한것인지.. 아니면 scanf 외에 어느line에서 실제 타자로 치는 입력값을 받는건가요?
선생님 질문이 하나 있는데요, scanf("%d") 할 떄 지금 index 5 라서 5번 받았잖아요, 그런데 그때 scanf는 버퍼에 입력값이 남아있으면 그 남아있는 값을 받는다고 하셨는데, 10 20 30 40 50 이렇게 5번 받으면 10 받고 빈칸 받고 20받고 빈칸받고 등등 이렇게 되는거 아닌가요? 그래서 scanf("%d ") 이렇게 %d 뒤에 빈칸 하나 넣어서 scanf 하면 아예 실행이 안돼요. 왜그런지 설명 해주실 수 있나요?
최대 공약수를 구하는 프로그램을 한번 만들어봤어요. 맞는진 모르겠지만 틀린점이나 수정할 점 있으면 말해주세요. 다음엔 최소공배수 한번 만들어 보겠습니다. #include int main(void) { int a,b,i; int arr[sizeof(int)]; scanf("%d %d",&a,&b); for(i=1;i
@@returns0825 4를 해도 문제는 없어요^^ 어차피 1개의 수를 할당하겠다는 생각을 가지고 한것이기 때문에 4를하던 100을 하던 같습니다. 제가 굳이 sizeof(int)를 한 이유는 한번 배운걸 써먹어보자라는 느낌도 있구요. 보기 편하게 표시할려는 것도 있습니다.
강의를 들으면서 중간중간 함수 짜 주시기 전에 제가 직접먼저 한번 작성해 보고 작성해주시는걸 보는형태로 공부중인데.. 제가 작성한 함수가 컴파일 로그 에러는 안뜨는데 실행시키면 작동이 중지되었습니다 하고 오류가 납니다,, 질문드릴 부분은 홀수최댓값, 짝수최댓값 구하는 부분이고 작성해주신 함수 모두 이해가 됬습니다 제가 작성한 함수는 아래와 같습니다 #include #define NUMBER 10 int main(void) { int array[NUMBER]; int max1, max2, a; max1=0; max2=0; for(a=0; a
index+1 은 한것은 max 값은 90 즉 순번으로는 0~4 까지인데 이걸 몇번쨰로 본다면 1,2,3,4,5로 보는것이기 때문에 거기다가 1 값을 더해 준거에요 ~ 간단히 말하면 90 0~4에서는 4번쨰 index에 있는데 그걸 기본적으로 숫자처럼 1부터 세면 90 다섯번째 있으니까 +1을 해준거네요~~
영상 보다가 최대값만 보고 최소값은 제가 만들었는데 만들어 놓고나니 이상한데 잘 작동되서 질문드립니다. 최대값 부분에서 scanf("%d", &array[i]); 를 사용하고 최소값부분에는 아무것도 안했는데 최대값부분에서 사용했던 숫자들이 사용되오류없이 출력됩니다. 원래 이게 정상인가요?? #include #include #define NUMBER 5
int main(void) { int i, max, min, index;//(순서) max = INT_MAX+1; index = 0; int array[NUMBER]; for(i=0; i
이걸 보고 숫자의 개수를 직접 정해서 최대최소를 찾는 프로그램을 코딩 해봤습니다.#include #include int main(void) { int i,max,min,NUMBER,index,INDEX; max=0; min=INT_MAX; printf("숫자의 개수를 입력하세요 : "); scanf("%d",&NUMBER); int array[NUMBER]; printf("숫자를 입력하세요 : "); for(i=0;i
최솟값 출력해도 위에꺼랑 똑같이 90나오는데 어디가 이상할까요...? 아는 분들 답 좀....ㅠㅠ #include #include #define NUMBER 5 int main(void) { int i, max, min, index; // 배열 각각의 위치, 최댓값, 최솟값, 위치 int array[NUMBER]; max = 0; index = 0; // array[0] ~ array[4] : 총 5개가 들어갈 수 있는 크리의 배열 선언. for(i=0; i
5:44
c언어를 이 강의로 처음 접해서 공부하고있습니다!
질문이 있는데 scanf가 cmd창에서 입력하는 값을 받는 함수 아닌가요?
그럼 첫 번째 예제에서 40 10 25 20 35 이런식으로 array값을 입력한다는게
scanf("%d", &array[i])
에서 i를 40 10 25 20 35로 (array를 40 10 25 20 35로 정의한다는) 준다는 말이 맞을까요..
scanf를 잘못 이해한것인지.. 아니면 scanf 외에 어느line에서 실제 타자로 치는 입력값을 받는건가요?
scanf("%d", &배열[number])는 배열의number번째의 값을 입력받은 값으로 바꾸는것같습니다.
설명도 쉽고, 문제 예제로 풀어 설명해주셔서 더 보기 좋아요! 잘보고 갑니다
와 진짜 천재다 계속 이해 ㅇ,ㄴ가는거 생각하면서 보니 이해가 되네 님은 천재세요
설명 진짜 너무잘해주세요 ㅠㅠ 학원에서 이해 안간게 이렇게 잘되다니;;
와 진짜 진심으로 사랑합니다 선생님 솦웨 신입생인데 아무것도모르는상태로와서 재귀함수랑 배열 string 에서 진짜 너무 힘들었는데 영상보니까 한번에 이해됐어요
선배님.. 22학번 애기 시험 하루 전 벼락치기 하러 왔읍니다 고맙읍니다
5:41 max=0;으로 하면 음수에서는 최댓값 못구하니까 min=INT_MAX하신거처럼 max=INT_MAX+1로 해야하지 않나요?
항상 좋은 영상 감사합니다! 앞으로도 좋은 영상 기대해봅니다ㅋㅋ
영상 너무 잘 봤어요! 근데 값을 '갑슬'이라고 정확히 알려주시면 더 좋을 것 같아요! 😂
발음 지적 감사합니다!! 앞으로는 유의해서 강의 촬영하겠습니다. 최근 강의에서는 '값을' → [갑쓸]이라고 정확히 발음하고 있습니다!
ㅋㅋㅋㅋ 저만 그렇게 생각한게 아니였군요 minute 에서 부터 느꼈었는데
설명 잘하십니다......굿..대박
너무 고맙습니다.
선생님 질문이 하나 있는데요, scanf("%d") 할 떄 지금 index 5 라서 5번 받았잖아요, 그런데 그때 scanf는 버퍼에 입력값이 남아있으면 그 남아있는 값을 받는다고 하셨는데, 10 20 30 40 50 이렇게 5번 받으면 10 받고 빈칸 받고 20받고 빈칸받고 등등 이렇게 되는거 아닌가요? 그래서 scanf("%d ") 이렇게 %d 뒤에 빈칸 하나 넣어서 scanf 하면 아예 실행이 안돼요. 왜그런지 설명 해주실 수 있나요?
선생님 재밌게 잘 봤어요
좋은 강의 영상 감사합니다
미적분 계산하는 프로그램도 만들어 주세영.^^
5개의 정수가 모두 음수라면 max 가 음수 중에서 설정되는게 아니라 0으로 출력될텐데, 문제 조건을 양의 정수로 설정해야하는 것 아닌가요? 컴팩트하고 깔끔한 강의 감사합니다 갓동빈
limits.h 헤더파일 라이브러리 보니까 INT_MIN도 INT_MAX의 부호 반대값으로 정의가 되어있던데, max = INT_MIN;으로 구현하면 오류가 없겠네요!
어데고
max=INT_MAX+1 ㄱㄱ
그림판 너무 귀여워요 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ
어렵지만 이해는 잘 가네요
솔직히 이런 분들이 교수해야 하는데...
질문입니다
5개 정수에서 최대 최소의 위치를 찾는 프로그램에서 index변수를 0으로 선언할 필요가 있나요?
Max 변수는 if문에서 비교해야하니까 선언해야하지만요
배열의 첫번째에 최대나 최소값이 있으면 IF문이 작동을 안 할거고, 그러면 INDEX가 0+1로 표시되어야하니 0으로 선언 될 필요가 있습니다
'#define NUMBER 숫자'형태는 배열의 크기를 나타냄. array는 배열의 차례임.
와 이걸 왜 중간고사가 끝난다음에 보게된걸까 ㅠ
최대 공약수를 구하는 프로그램을 한번 만들어봤어요. 맞는진 모르겠지만 틀린점이나 수정할 점 있으면 말해주세요.
다음엔 최소공배수 한번 만들어 보겠습니다.
#include
int main(void)
{
int a,b,i;
int arr[sizeof(int)];
scanf("%d %d",&a,&b);
for(i=1;i
최소공배수도 만들어봤습니다.
#include
int main(void)
{
int a,b,i,j;
int arr[sizeof(int)];
scanf("%d %d",&a,&b);
for(i=1;i
굳이 arr[sizeof(int)]를 하신 이유가 뭔가요?
그냥 arr[4]하면 안되나요??
@@returns0825 4를 해도 문제는 없어요^^
어차피 1개의 수를 할당하겠다는 생각을 가지고 한것이기 때문에 4를하던 100을 하던 같습니다.
제가 굳이 sizeof(int)를 한 이유는 한번 배운걸 써먹어보자라는 느낌도 있구요. 보기 편하게 표시할려는 것도 있습니다.
@@naezan 아하 감사합니다!
너무 감사합니다 정말정맣덜맣절말
좋은영상 감사합니다.초보입니다.dev-c++ 소스컴파일하면 #include "stack_array.h" 부분에서 No such file or directory 라고 에라가 뜨는 문제 해결 방법좀 알려 주세요
감사합니다
강의를 들으면서 중간중간 함수 짜 주시기 전에 제가 직접먼저 한번 작성해 보고 작성해주시는걸 보는형태로 공부중인데..
제가 작성한 함수가 컴파일 로그 에러는 안뜨는데 실행시키면 작동이 중지되었습니다 하고 오류가 납니다,,
질문드릴 부분은 홀수최댓값, 짝수최댓값 구하는 부분이고 작성해주신 함수 모두 이해가 됬습니다
제가 작성한 함수는 아래와 같습니다
#include
#define NUMBER 10
int main(void)
{
int array[NUMBER];
int max1, max2, a;
max1=0;
max2=0;
for(a=0; a
짝수 홀수 프로그램에서 이중 if 문을 쓰지않고 if(array[i]%2 == 0 && even < array[i])식으로 해도 될까요?
2:22
비쥬얼 스튜디오에서 디버그하면 오류가 생기는데 왜 이런건가요?ㅠㅠ 해결방법도 없고..
12:00
12:00
최솟값은 int min을 int의 최대값으로 설정하였는데 , 최댓값할때는 int max를 int의 최솟값으로 설정하지 않고 0으로 설정 한 이유가 따로 있는건가요?
INT_MIN을 하게되면 음수값으로 설정됩니다. 따로 이유가 있지는 않아요.
줄바꿈 표시에서 /n 이라고 표시하여도 되나요? 아님 \n 이라고 표시해야 되나요?
\n 이라고 하면 잘 않되던 것 같은데 ....
/n으로 표시하면 문자로 인식해서 같이 출력이 됩니다.
으로 해주어야지 정상적으로 줄바꿈이 됩니다. :)
evenmax는 array[i]인지 설명해주실 분... 제가 다른 생각을 하는 건지 이해가 안 되네요 ㅠㅠ
앜ㅋㅋㅋ 마지막에 다시 바꾸셨네 ㅋㅋ 휴
조합이라는게 주택 조합이나 노동조합만 알았지.. 이런 조합이 공식이 있다는건 처음 알았네요...
쿠키런 조합
콤비네이션
정주행 11강/20강
index+1 한것은 array가 0부터 시작해서인가요?
index+1 은 한것은 max 값은 90 즉 순번으로는 0~4 까지인데 이걸 몇번쨰로 본다면 1,2,3,4,5로 보는것이기 때문에 거기다가 1 값을 더해 준거에요 ~ 간단히 말하면 90 0~4에서는 4번쨰 index에 있는데 그걸 기본적으로 숫자처럼 1부터 세면 90 다섯번째 있으니까 +1을 해준거네요~~
오름차순은 어떻게 해야되나요?
오름차순 그거 되게 어렵던데ㅋㅋa[0]이랑 a[1]이랑 비교해서 a[0]이 더 크면 변수값 바꾸고...
a[1]도 a[2]랑 비교하고 이런식으로 하면 될거에요
if(max
처음에 max가 0 이기 때문에 입력받는수보다 max가 작으면 max가 그 입력받은수가 되는겁니다. 그래서 가장 큰 값만 나오게 되는원리입니다.
아름다운 닉네임과 아름다운 답변이군요
영상 보다가 최대값만 보고 최소값은 제가 만들었는데 만들어 놓고나니
이상한데 잘 작동되서 질문드립니다.
최대값 부분에서 scanf("%d", &array[i]);
를 사용하고 최소값부분에는 아무것도 안했는데
최대값부분에서 사용했던 숫자들이 사용되오류없이 출력됩니다.
원래 이게 정상인가요??
#include
#include
#define NUMBER 5
int main(void)
{
int i, max, min, index;//(순서)
max = INT_MAX+1;
index = 0;
int array[NUMBER];
for(i=0; i
가장 작은 값을 찾는 min 변수에 정수형에서 가장 큰 값인 INT_MAX를 넣는 이유가 뭐죠?
max값을 찾을때는 max변수에 기본값을 0을주었잖아요, 반대로 최솟값을 구하기위해서 min변수에 정수형 가장큰값을 넣은거죠, 무엇과 비교하던 일단 기본값이 바뀌게하기위해서용
07:22
흑 너무 어려워 힝
아 왤케 어렵나 ㅜ
어려운가가 맞아염.
너무 빨라욥 ㅠㅠ
For 문 안에 scanf 가 있는데 입력을 한번만 해줘도 계속 값이 들어가네요?
scanf는 단순히 공백을 기준으로 해서 입력을 받기 때문입니다.
동빈나 답변감사합니다:)
프로그램 실행시키고 나서
배열에 30 34...이렇게 넣을때 scanf 없이 어떻게 그냥 입력하는건가요?
printf으로 정수를 입력하세요 라고 표시만 안 되어 있을 뿐입니다. scanf가 없는게 아니고, 글이 없는거일 뿐이에요
이걸 보고 숫자의 개수를 직접 정해서 최대최소를 찾는 프로그램을 코딩 해봤습니다.#include
#include int main(void)
{
int i,max,min,NUMBER,index,INDEX;
max=0;
min=INT_MAX;
printf("숫자의 개수를 입력하세요 : ");
scanf("%d",&NUMBER);
int array[NUMBER];
printf("숫자를 입력하세요 : ");
for(i=0;i
scanf("%d",&NUMBER);
int array[NUMBER];
이렇게 하면 오류 뜨지 않나요? number에 빨간 줄 생기건데
식에 상수값이 있어야 합니다. 라고 뜨네요..;;
max에 0말고 INT_MIN 넣어줘야하지 않나요? 만약 숫자들이 전부 음수로 이루어져 있다면 제대로 작동하지 않을텐데요
타자속도가 위협적이네요
ㅋㅋㅋ 강의가 점점 밥 아저씨 같아지네
갈수록 어려워지는구나ㅠㅠ
화팅염
ㄹ
최솟값 출력해도 위에꺼랑 똑같이 90나오는데 어디가 이상할까요...? 아는 분들 답 좀....ㅠㅠ
#include
#include
#define NUMBER 5
int main(void)
{
int i, max, min, index; // 배열 각각의 위치, 최댓값, 최솟값, 위치
int array[NUMBER];
max = 0;
index = 0;
// array[0] ~ array[4] : 총 5개가 들어갈 수 있는 크리의 배열 선언.
for(i=0; i
방금 코드돌려봤는데 15번째와 26번째에있는 if문에 ; 를 없애면 값이 제대로 나오는거같아요
#include
#define SECOND_PER_MINUTE 60
int main(void) {
int input;
int minute = input / SECOND_PER_MINUTE;
int second = input % SECOND_PER_MINUTE;
printf("초를 입력하세요: ");
scanf("%d", &input);
printf("%dsec는 %dmin %dsec입니다.
", input, minute, second);
return 0;
}
초를 입력해서 멫분 멫초인지 구하는 프로그램인데욥, 아리송해서 모르겠쩌욥. 제대로 된 코드를 아르키
주세욥.😅
대단히 고맙습니다.