본문 바로가기

2017/0616

사물인터넷 기반 융합기술 교육 - C 언어 프로그래밍 5일차 file a1 = new file("경로");fflush();fseek();rewind();표준입력 : stdin 키보드표준출력 : stdout 모니터표준에러 : stderr 모니터화면 파일포인터(파일지시자) 마지막으로 이동한다. 쭉 적고 다시 읽어오기 window 에서 type xxx.txt 는 파일 내용을 읽어오라는 것 비슷한 프로그램을 만들어보자.컨트롤 에프5 를 눌렀을땐 사용법만 나온다. (프로젝트 ex01 이니 ex01) 2진 파일로 읽거나 쓰거나rb : 이진읽기wb : 이진파일 쓰기ab : 이진파일 붙이기rb+ : 이진파일 읽기, 쓰기 (r+b)wb+ : 이진파일 쓰기, 읽기 (w+b)ab+ : 이진파일 붙이기, 읽기 (a+b) 2135700 정수 : 4바이트문자열 : 7바이트 2 (ascii.. 2017. 6. 30.
putty ec2 접근 putty download link아마존 접근 docs link 컴퓨터에 설치되는 것을 별로 좋아하지 않아 아래 zip 파일로 다운 받았다. 내용 puttygen.exe 을 이용하여 ec2에서 생성된 프라이빗 키xxx.pem 파일을 putty형식 xxx.ppk 파일로 변환후 사용 putty.exe 실행 하여 순서대로자주 접속을 해야한다면 Saved Sessions 에 이름을 적고 저장하면위 과정들을 반복할 필요가 없다. 확인 ubuntu 입력 접속 완료 2017. 6. 30.
사물인터넷 기반 융합기술 교육 - C 언어 프로그래밍 4일차 double *pd1 = (double*)malloc(16) 16바이트 크기의 힙을 할당 \0 은 문자의 끝이다 내부적으로 char str2[] = "JAVA";int i = 0 ; while (str2[i] != '\0')printf("%c", *(str2 + i++)); printf("%n"); 요렇게 선언 되어있을 것이다. %s 문자열이다 해서 배열로 넘어간다 int k = 10;int *pi = k; %d, *int getch(); 하나를 입력받는 형식, 바로바로 입력받는다 저장만 putch() getche() 문자가 나올때 한번찍어주고 얘가 위에 것 동시에 이루어진다고 생각하면댐 putch()더찍어준다. //비교 함수 strcmp(str1, str2); strncmp(str1, str2, n);.. 2017. 6. 29.
포인터 간접 연산자 * 선언int *prtint 데이터의 타입만큼 커지거나 작아지거나 #include int main(void) {// 3차원 배열int ary[][3][2] = { {{1, 2}, {3,4}, {5,6}},{{7,8 }, { 9,10 }, { 11,12 }} };//[2][3][2]//행 우선순위 // 배열을 가리키는int(*ptr)[3][2]; ptr = ary; printf("%d \n", *(ptr + 1));printf("%d \n", *(*(*ptr + 1) + 1)); return 0;} 2017. 6. 29.
사물인터넷 기반 융합기술 교육 - C 언어 프로그래밍 2일차 무한반복for (;;){}while(1){}do()while(1); for(i=1; i기원 연수가 4로 나누어 떨어지는 해는 우선 윤년으로 하고, · 1번 중에서 100으로 나누어 떨어지는 해는 평년으로 하며, · 다만 400으로 나누어 떨어지는 해는 윤년으로 정한다 2. 위 문제를 참고로 표준입력으로 받은 년도와 달을 이용하여 월의 말일을 출력하는 프로그램을 switch 문을 사용하여 작성하시오.switch if로 3. 1에서 100까지의 정수 중에서 2, 3, 5, 7의 배수를 제외한 수를 한 행에 10 개씩 출력하는 프로그램을 작성하시오. 4. 다음을 출력하는 프로그램을 중첩된 for 문을 이용하여 작성하시오. 0 101 21012 3210123 432101234 54321012345 6543210.. 2017. 6. 27.
배열 배열 : 같은 자료형을 여러개 한번에 사용-선언(int[] a 불가능 java나 c#에서는 허용?)배열 자료형 배열이름[배열크기]int a[5]; // 첨자, index 0 ~ 배열크기-1a[0]; a[1]; a[2]; a[3]; a[4]; double d[4]; 선언후 d = {3.0, 2.0} 불가능 d[0] = 3.0 가능 - 이차원 배열int b[3][2]; 6개의 배열이 생긴다. 행 우선배열이기 때문에 뒤에서 부터 해성이 된다.int b[3][2] = {{1,2,3}, {4,5}};int b[][2] = {{4,5}}; // 앞에는 비워둘수 없다. 1개가 생성되어 있다. 4개의 배열이 2개가 생성되고 뒤에서 부터 2017. 6. 27.
visualstudio 를 이용한 디버깅 > 디버깅오른쪽에 끝점을 정해주고 f5 디버깅 시작f11 을 누르면 실행 순에 맞춰 노란색이 따라가줌 f10과 f11의 차이점 2017. 6. 27.
함수 함수 : 컴퓨터에게 작업을 시키는 것C 프로그램 : 함수들의 집합> 라이브러리 함수printf("")문자열을 콘솔화면에 출력하는 함수-> stdio.h에 정의되어 있다.-> 라이브러리 함수 #include srand((long)time(NULL)); // 1970.01.01.00:00:00 기준으로 해서 현재시간까지 지나간초를 반환 time(NULL)int ranval = rand(); // seudo random값이 변하지 않는다 그래서 seudo random 가 랜덤 이라고 한다 숫자 문자 함수 > 사용자 정의 함수 반환데이터 타입 함수이름(함수인자1, 함수인자2,....); 반환데이터 타입 함수이름(함수인자1, 함수인자2,....){함수구문 구체적으로 작업할 내용} 2개의 정수를 입력받아 그 합을 .. 2017. 6. 27.
연산자 a + b연산자 : +단항 연산자-b : 피연산자 1이항 연산자b + c : 표현식 (연산식) 피연산자가 2개삼항 연산자(a? b : c) 산술 연산자 (이항 연산자 )a + ba - ba * ba / ba % b 부호연산자 (단항연산자)+, - 대입 연산자 (이항연산자)- 오른쪽부터 적용a = bb = 10 int a, b, ca = (b = (c = 5));a = a + 1;a += 1축약 대입 연산자b = b - 5;b -= 5c = c * 7;c *= 7d = c / 7;d /= 7 증감 연산자 하나의 변수에만 사용 가능 증가 연산자 후위 연산자 a++라인을 실행 된 후에 전위 연산자 ++a 라인 실행되기 전에 감소 연산자 a--/--a m = 10 n =4 result 14 이 라인이 실행이 된.. 2017. 6. 26.