본문 바로가기

언어/C33

[C] 배열의 오름차순 병합 a,b,c 배열의 오름차순 병합 a,b,c 요건 6시간^^ 처음으로 한 소스코드는 두개의 배열의 길이비교를 하는 과정이 들어가있고, 두번째로 한 소스코드는 길이비교 과정을 삭제해 간략하게 나타냈다. 첫번째 코드가 맨처음에 짠 코드이고, 두번째 코드가 셤공부 하면서 핵심만 뽑아 만든 코드다. (처음코드) 길이가 길어서 두번으로 나눠서 올리겠음 12번째 줄이 배열 a,b의 길이를 비교하는 구문임 14~24줄은 작은 배열이 a일 경우 26~36줄은 작은 배열이 b일 경우인데, 28번째 줄이 j인데 오타났음 (주석부분) 40~50 줄은 작은 배열의 길이만큼 반복이 끝난후 나머지는 큰 배열에 그대로 대입하는 것......인데 지금 올리려고 다시보니까 코드가 잘못된게 보인다... 만약 길이가 작은배열에 큰배열보다 큰 수가 있.. 2018. 10. 28.
[C] sin/cos 함수그리기 sin/cos 함수 C언어로 그리기 C언어를 풀면서 어려웠던 문제만 따로 정리하려고 한다. 요거 푸는데 장장 10시간..☆ 그마저도 처음에 기본적인 틀은 따와서 이를 변경했다..ㅠㅠ 함수 다만들고 마지막에 모양 반대로 뒤집는건 도움을 받았다 ㅠㅠ '-'만 붙이면 되는거였어..씁 15, 16번째 줄ㅎㅎ (소스코드) 폭은 Y값을 바꿔서 조정할 수 있음. . . . (결과창) ☆그래프가 이쁘다☆ 2018. 10. 28.
[C] 포인터와 함수 C포인터와 함수 "함수호출 시 전달되는 인자의 값은 매개변수에 복사가 된다." -함수를 호출하면서 매개변수에 배열을 통째로 넘겨주는 방법은 존재x-함수 내에서 배열에 접근할 수 있도록 배열의 주소 값을 전달하는 것은 가능 7행: int형 포인터 변수의 이름을 대상으로 배열형태의 접근을 진행 int * param => int param[] (매개 변수의 선언으로 제한됨) arr1의 값이 계속 변경됨. * 함수 내에서는 인자로 전달된 배열의 길이를 계산할 수 없음 그래서 배열의 크기나 길이정보도 함께 인자로 전달해야 함 Call-by-value = 단순히 값을 전달하는 형태의 함수호출Call-by-reference = 메모리의 접근에 사용되는 주소 값을 전달하는 형태의 함수호출ex) Swap 함수의 경우 포.. 2018. 10. 10.
[C] 포인터와 배열(☆) C포인터와 배열 배열의 이름: 포인터그 값을 바꿀 수 없는 '상수 형태의 포인터'배열의 시작 주소 값을 의미하며, 그 형태는 값의 저장이 불가능한 상수임. 포인터 변수 배열의 이름 이름이 존재하는가? 존재o 존재o 무엇을 나타내거나 저장하는가? 메모리의 주소 값 메모리의 주소 값 주소 값의 변경이 가능한가? 가능 불가능 배열의 이름도 포인터이기 때문에 배열의 이름을 피연산자로 하는 * 연산이 가능1차원 배열이름의 포인터 형은 배열의 이름이 가리키는 대상을 기준으로 결정 ex) 포인터 변수로 할 수 있는 연산은 배열의 이름으로도 할 수 있고, 배열의 이름으로 할 수 있는 연산은 포인터 변수로도 할 수 있음. 포인터 변수 ptr이 배열이름 arr과 동일한 주소 값을 갖도록 하기 위해서 첫 번째 요소의 주소 .. 2018. 10. 9.
[C] 포인터 C포인터 포인터 변수 : 메모리의 주소 값을 저장하기 위한 변수 type * ptr; => type형 변수의 주소 값을 저장하는 포인터 변수 ptr의 선언 ex) type * type형 포인터type * ptr; type형 포인터 변수 ptr *포인터 변수의 선언에 있어서 * 연산자의 위치는 상관x.이렇게 & 연산자의 피연산자는 변수 이어야 함. 상수는 피연산자가 될 수x.변수의 자료형에 맞지 않는 포인터 변수의 선언은 문제가 됨.포인터 형은 메모리 공간을 참조하는 기준이 됨. ex)//보니까 포인터는 임대 내놓은 집이고, 변수는 임대집 들어가는 사람? 으로 생각하면 될것같다 ㅋㅋ 일반 변수와 포인터 변수를 하나의 문장 안에서 동시에 선언하는 것도 가능 이렇게 '문장의 수가 적다고 좋은 코드는 아니다. .. 2018. 10. 6.
[C] 1차원 배열 C 1차원 배열 배열 : '둘 이상의 변수를 모아 놓은 것' 다수의 데이터를 저장하고 처리하는 경우에 유용 선언에 필요한 세가지int 배열을 이루는 요소(변수)의 자료형 merona 배열의 이름 [7] 배열의 길이 => "int형 변수 7개로 이뤄진 배열을 선언하되, 그 배열의 이름은 merona이다!" * 7개의 int형 변수가 '나란히' 선언되어 있음 * 배열의 길이 정보는 상수* 배열의 위치 정보를 명시하는 인덱스 값은 1이 아닌 0에서부터 시작 (1)초기화 리스트를 다 적어줌. (2)초기화 리스트가 선언되면 배열의 길이정보를 생략할 수o컴파일러가 초기화 리스트의 수를 참조하여 길이정보를 채워줌. (3)뒤에 남은요소들은 0으로 채워짐. 1,2,0,0,0 식임. -char형 배열을 이용하면 문자열의 .. 2018. 10. 2.
[C] 반복문 (C언어정석_5) C언어 정석 5강수업 5일차 5강 문제 소스코드 * while과 do~while의 다른점: do~while은 최소 한번이상 루프 블록을 실행 while은 루프 내부를 한번도 실행하지 않을 수 o 예제 05-07-6 //for->while(1)로 바꾸기 #include int main(){ int s=2, e, fact=1; while(1){ printf("%d!=",s); for(e=1; e 2018. 10. 1.
[C] 도전프밍1 C 도전프밍_1 프밍1~8문제 소스코드 5시간 걸려서 푼 열혈C 10강^^ //열혈C를 공부한게 먼가 되게 올만인듯한..ㅎㅎ 2018. 9. 30.
반응형