와 아무생각없이 스왑이니까 바뀌겠지 ㅋ 했다가 뒷통수 한대 얻어맞은 기분이에요 ㅋㅋ 시험 전 벼락치기하는데 전공 수업때 이런 수업을 들었더라면 전 C포자가 아니었을텐데,, 무튼 몇년만에 c에 흥미를 느끼고 열심히 공부중입니당 ! 늘 좋은 강의 감사드려요 이번에는 붙어야할텐뎅 ㅋㅋ 호다닥 듣고 자바랑 파이썬도 봐야겠어용
깨알 C언어 | 37. 함수 # 함수란? 0:30 ex. 계산기 더하기, 빼기, 곱하기, 나누기 함수 등 함수 단위로 만들어서 메인 함수에서 더하기다 하면 더하기 함수를 호출, 하나의 프로그램 단위, # 함수 구조 1:01 1. 반환타입 작업을 수행하고 반환타입에 맞는 것을 돌려줌, 2. void 타입 반환타입이 없는 것은 void 타입? 반환을 하지 않아도 되는 것, # 함수 선언과 사용 2:04 섬 함수를 호출, 10, 20값을 호출(전달)> 제어권이 함수로 넘어감> 30을 호출한 곳으로 리턴> 앞에서 선언한 변수(지역변수)는 폐기 문. 3:39 함수의 순서? 왜 스왑함수를 위에다가 썼을까? 메인 함수 밑에 들어가게 되면은 순서가 메인 다음에 스왑, 메인 함수가 인식하게 하기 위해서 위에다가 선언, 함수에서 사용된 것들, 전역 변수, 정적 변수 빼고 다 페기, 리턴 받은 것도 없고 아무 것도 없다, 답. 10:20
#include void swap(int a, int b){ int temp; temp = a; a = b; b = temp; } int main(void) { int k, j; k = 3; j = 2; swap(k, j); printf("k=%d, j = %d", k, j); return 0; } 하나 궁금한게 있는데 스왑을 실행시키고 메인에 적용시키려면 리턴을 어떻게 넣어줘야 k와 j가 스왑되서 결과가 나올까요?
안녕하세요~~~ 저걸 뒤바꾸려면 포인터 형태로 전달을 해줘야 합니다. ^^ 제가 며칠전 찍어놓은 영상이 이 문제를 가지고 설명한 내용인데요~~ ruclips.net/video/ilzrAhRJ3BQ/видео.html 이걸 한번 참고해주시면 이해하는데 훨씬 도움이 되실꺼에요~~ 감사합니다. ^^
제주도 살고 계신가요? 제가 제주도 엄청 좋아하는데. ^^ 고모님도 제주도 살고 계십니다. 암튼, 아무 의미없다고 보심되요. 프로그램은 main에서 시작하는거고. int main void main int main(void) 쓰는 형태가 틀린거지 시작하는 시점이라고 보시면 됩니다. 그리고 앞에 void 가 붙는건 리턴값이 없단거에요. 앞에 int 가 붙으면 이 함수는 정수를 리턴하고 char이 붙으면 문자 하나. void면 그냥 호출한 위치로 어떤값이 전달이 안되는 함수라고 생각하시면 됩니다. 그건 자바도 똑같습니다. ^^
C언어에서는 리턴하는 값을 여러개 줄 수가 없습니다. 그리고, swap 은 리턴을 받지 않기 때문에, 리턴을 준다고 해도 값을 변경할 수는 없습니다. ruclips.net/video/ilzrAhRJ3BQ/видео.htmlsi=7n47FTDce7an0MR- 이 영상을 보시면 도움이 되실꺼에요~~^^
안녕하세요~~~ 함수에 인자를 넘길때, 값을 넘기게 되면 그냥 값을 복사해서 넘기는거고, swap 을 수행했을때, 돌려주는것도 없고, 주소를 받아서 그걸 바꾼게 아니라서 아무런 일도 일어나지 않습니다. 이런 문제는 알면 쉽게 풀지만, 모르면 값이 바뀐다고 생각해서 출제한 듯 합니다. 감사합니다. ^^
깨알특강 C언어 수업 중....
진짜 최강 강의...
아유...감사합니다. ^^
와 아무생각없이 스왑이니까 바뀌겠지 ㅋ 했다가 뒷통수 한대 얻어맞은 기분이에요 ㅋㅋ 시험 전 벼락치기하는데 전공 수업때 이런 수업을 들었더라면 전 C포자가 아니었을텐데,, 무튼 몇년만에 c에 흥미를 느끼고 열심히 공부중입니당 ! 늘 좋은 강의 감사드려요 이번에는 붙어야할텐뎅 ㅋㅋ 호다닥 듣고 자바랑 파이썬도 봐야겠어용
아흠...저도 학부 다닐때 C포자들이 많았어요.
저야 어릴때 뚜드려 맞으면서 해서 익숙했는데, 교수님이 너무 어렵게 설명을 해주셔서.
호시탐탐님 교수님도 어렵게 알려주셨나봐요...^^
암튼 시험에서 나오면 꼭 맞춰주세요~~^^
깨알 C언어 | 37. 함수
# 함수란? 0:30
ex. 계산기
더하기, 빼기, 곱하기, 나누기 함수 등 함수 단위로 만들어서 메인 함수에서 더하기다 하면 더하기 함수를 호출,
하나의 프로그램 단위,
# 함수 구조 1:01
1. 반환타입
작업을 수행하고 반환타입에 맞는 것을 돌려줌,
2. void 타입
반환타입이 없는 것은 void 타입? 반환을 하지 않아도 되는 것,
# 함수 선언과 사용 2:04
섬 함수를 호출, 10, 20값을 호출(전달)> 제어권이 함수로 넘어감> 30을 호출한 곳으로 리턴> 앞에서 선언한 변수(지역변수)는 폐기
문. 3:39
함수의 순서? 왜 스왑함수를 위에다가 썼을까?
메인 함수 밑에 들어가게 되면은 순서가 메인 다음에 스왑, 메인 함수가 인식하게 하기 위해서 위에다가 선언,
함수에서 사용된 것들, 전역 변수, 정적 변수 빼고 다 페기, 리턴 받은 것도 없고 아무 것도 없다,
답. 10:20
함수는 언듯 쉬워보이지만
나중에
함수하고 또 포인터가 만나서 고생하게 될 듯
안녕하세요~~
함수하고 포인터가 묶이면 콜바이레퍼런스가 되서 조금 헷갈리실 수 있을꺼에요..ㅜㅜ
그래도 포기하지 마시고 끝까지 함께해주세요..
꼭 합격하실꺼에요.
감사합니다. ^^
감사합니다
시청해 주셔서 감사드립니다.
감사합니다!
함수로 들어가셨군요...
이제 조금 남았으니, 좀만 힘내주세요~~
감사합니다. ^^
감사합니다! 포인터 끝나서 후련하네요..!!!!
특강이 또 남았답니다. ㅎㅎ
수강해주셔서 감사합니다 ^^
절반 이상 넘어오니 힘이 달립니다.
그래도 힘내겠습니다~~
조금만 힘내주십쇼...
끝이 얼마 남지 않았습니다. ^^
배열 처음봤을땐 세상에서 제일 어려운개념이엇는데 이제와 다시보니 선녀였네
C언어 과정에서 중간고사 까지가 반복문이거든요..
배열부터는 C포자가 탄생하기 시작해서 포인터 들어가면 멘탈이 탈탈 털려요.ㅜㅜ
그래도 익숙해지면 너무 어려운 개념은 아니니깐 조금만 힘내주세요..
완강 소식 꼭 전해주시고, 합격소식도 기다릴께요~
감사합니다.
선생님 ㅜㅜ a,b,c 이렇게 있을때 a=b 이렇게 되어있으면 a에는b의 주소값이 아니라 값이 들어간거죠? 포인트배열배웠을때 a에 b주소값을 넣으면 b값이 바뀔때 a값도 바뀌는거랑 헷갈려요,, ㅜㅜㅜ *표시가 없는 이상 그냥 값만 들어가는게 맞죠?
#include
void swap(int a, int b){
int temp;
temp = a;
a = b;
b = temp;
}
int main(void) {
int k, j;
k = 3;
j = 2;
swap(k, j);
printf("k=%d, j = %d", k, j);
return 0;
}
하나 궁금한게 있는데 스왑을 실행시키고 메인에 적용시키려면 리턴을 어떻게 넣어줘야 k와 j가 스왑되서 결과가 나올까요?
요거는 제가 오늘 촬영하러 나왔는데요..
이따가 풀이해서 영상으로 올려드리도록 할께요~~~^^
안녕하세요~~
질문주신거에 대해서 답변을 영상으로 촬영했는데, 확인 부탁드릴께요~~
좋은 질문 감사합니다. ^^
감사합니다
@@HeungSsaem 저도 궁금합니다.혹시 Q&A영상 주소를 알수있을까요?
@@김달팽-r4n ruclips.net/video/GyyU3PygEIU/видео.html 여기용
호오.. 유익하군요
아무일도 일어나지 않으면 스왑 함수는 왜 있던 건가요...?
굉장히 당황스러운 함수네요 ......... 리턴값이 .. 없으니까 아무 일도 안 일어나긴 했죠 ... 네 ......... 그럼 void타입에선 반환할 필요가 없다면, 모든 void함수는 무시해도(?) 되나요?
안녕하세요~~~
리턴값이 없는 void 형 같은 경우에는 안에서 어떤 일들이 일어나는지만 확인해주시면 됩니다.
주소값을 넘겨서 해당 주소값의 값들을 변경 시킬수가 있기 때문에, 그 안에 있는 내용들은 확인해주셔야 합니다.
감사합니다. ^^
@@HeungSsaem 아 주소값이 있었네요! 감사합니다!
24년 2회 실기때 나온 리턴값없는 스왑문제
안녕하세요. 선생님 질문이 하나 있습니다. 어떤 식으로 void 함수 뒤에 표현을 해두어야, k와 j 가 바뀐 값으로 출력되나요?
안녕하세요~~~
저걸 뒤바꾸려면 포인터 형태로 전달을 해줘야 합니다. ^^
제가 며칠전 찍어놓은 영상이 이 문제를 가지고 설명한 내용인데요~~
ruclips.net/video/ilzrAhRJ3BQ/видео.html
이걸 한번 참고해주시면 이해하는데 훨씬 도움이 되실꺼에요~~
감사합니다. ^^
@@HeungSsaem 네엡! 답변 감사합니다!!
흥달샘..유료강의 들으면서 동시에 깨알영상도 보는중인데요..
어느순간분터 이해가 100프로 이해가 안되요ㅠㅠ
void swap 여기에 void는 뭐고
int main (void) 는 뭔가요?
앞으로 나오는 거에도 int main (void) 로 시작하던데 제껴두고 풀이하시더라고요ㅠㅠ
제주도 살고 계신가요?
제가 제주도 엄청 좋아하는데. ^^
고모님도 제주도 살고 계십니다.
암튼,
아무 의미없다고 보심되요.
프로그램은 main에서 시작하는거고.
int main
void main
int main(void)
쓰는 형태가 틀린거지 시작하는 시점이라고 보시면 됩니다.
그리고 앞에 void 가 붙는건 리턴값이 없단거에요.
앞에 int 가 붙으면 이 함수는 정수를 리턴하고 char이 붙으면 문자 하나.
void면 그냥 호출한 위치로 어떤값이 전달이 안되는 함수라고 생각하시면 됩니다.
그건 자바도 똑같습니다. ^^
@@HeungSsaem 답변 감사합니다ㅠㅠ
앞에 void가 붙는게 void swap 이거 아니에요?어떤 경우인가요?
그리고 리턴0은 리턴 하라는거에요 말라는거에요?잘 모르겠어요ㅠㅠ
동영상 자꾸 보니까 어느정도 이해 되네요ㅜ감사합니다ㅠㅠ
그럼 만약에 저 식에서 실제로 k랑 j를 스왑하는 걸로 출력하고 싶으면 무엇을 넣어야 하나요? b=temp 밑에 retrun int a, int b 라 적으면 될까요?
C언어에서는 리턴하는 값을 여러개 줄 수가 없습니다.
그리고, swap 은 리턴을 받지 않기 때문에, 리턴을 준다고 해도 값을 변경할 수는 없습니다.
ruclips.net/video/ilzrAhRJ3BQ/видео.htmlsi=7n47FTDce7an0MR-
이 영상을 보시면 도움이 되실꺼에요~~^^
k=3, j=2
===============================
#include
void swap(int a, int b){
int temp;
temp=a;
a=b;
b=temp;
}
int main(void){
int k, j;
k=3;
j=2;
swap(k, j);
printf("k=%d, j=%d", k, j);
return 0;
}
===============================
ruclips.net/video/1-VH1ZGgVG0/видео.html
**********************************************************************
**********************************************************************
*swap함수를 진짜로 수행시키는 문제임
k=2, j=3
===============================
#include
void swap(int *a, int *b){
int temp;
temp = *a;
*a = *b;
*b = temp;
}
int main(void){
int k, j;
k=3;
j=2;
swap(&k, &j);
printf("k=%d, j=%d", k, j);
return 0;
}
===============================
ruclips.net/video/GyyU3PygEIU/видео.html
선생님 함수가 위에 있어도 메인부터 먼저 풀고 다시 함수로 돌아와야되는건가요?
안녕하세요~~~
함수는 하나의 일처리 단위이고, 호출을 하게 되는건 main 에서 시작되게 됩니다.
그래서 main 부터 하나씩 읽어주셔야 합니다.
감사합니다. ^^
속을 뻔...ㅎㅎ
감사합니다~
오늘도 열공하시는군요..^^
화이팅입니다.
K는 2아닌가요 !?ㅠㅠ 식 다 수행해놓고 왜 아무것도 안일어난건가요!? 왜 한건가요... ?
안녕하세요~~~
함수에 인자를 넘길때, 값을 넘기게 되면 그냥 값을 복사해서 넘기는거고, swap 을 수행했을때, 돌려주는것도 없고, 주소를 받아서 그걸 바꾼게 아니라서 아무런 일도 일어나지 않습니다.
이런 문제는 알면 쉽게 풀지만, 모르면 값이 바뀐다고 생각해서 출제한 듯 합니다.
감사합니다. ^^
ㅋㅋㅋㅋ 왜 1번이지? 하고 10분동안 돌려보다 모르겠어서 해설을 봤는데 ㅋㅋㅋㅋ 허무하네요 이렇게 문제 나오면 틀릴수도 ㅋㅋ
안녕하세요~~~
프로그램 문제들이 많이 헷갈리지요..ㅜㅜ
좀만 힘내주세요~~~
화이팅!!!
우와 엄청많이 틀렸을듯...
프로그램은 실수해라 라고 작정하고 문제 출제하면 정말 어마어마하게 틀릴꺼에요~~^^
꼭 익숙해지셔야 해요~~