■ 알고리즘의 5가지 특성
- 입력 : 입력은 0개 이상 존재한다
- 출력 : 출력은 1개 이상의 결과가 있어야 한다
- 명확성 : 명령어들은 명확해야한다
- 유한성 : 알고리즘의 명령어들은 유한 번의 수행 후 종료되어야 한다
- 유효성 : 모든 명령들은 명백하고 실행 가능한 연산들이어야 한다
■ 코드 품질 향상 기법
- 테스트 : 말 그대로 테스트. 코드를 돌려보는 것 이겠죠.
- 코드 인스펙션 : 코드에 존재하는 결함을 눈으로 발견하는 검사
- 증명 : 가장 이상적인 방법으로 소프트웨어 품질이 아주 중요한 경우에 주로 활용
- 동적 분석 : 프로그램을 실행시키고 분석하는 도구. (실행과정에서 비효율적인 코드를 분석함)
- 정적 분석 : 프로그램을 실행시키지 않고 분석하는 도구. (데드코드가 없는지, 선언이 되지 않고 사용한 변수가 없는지 등을 확인함)
* 4강에서 정적,동적이 나온다면 대부분 프로그램 실행의 유무입니다 *
■ C언어에 대하여
- C언어 변수 선언의 예약어
-변환 문자와 옵션
- : 좌측에 맞춰 출력한다
+ : 숫자 앞에 부호를 붙인다
0 : 숫자 앞 공백을 모두 0으로 채운다
ex) 정수일 경우
%7d : 7자리 수를 확보, 우측에 맞춰 출력
%-7d : 7자리 수를 확보, 좌측에 맞춰 출력
%3d : 5글자를 이걸로 출력할 경우! => 자리가 부족해도 출력
실수일 경우
%7.2f : 소수점 이하 두자리 사용, 나머지 반올림
%.1f : 자릿수를 생략하면 상수 값에 자리를 맞춰 출력
문자일 경우
%7.2s : 2문자를 끊어서 우측에 맞춰 출력
* 실수일 경우와 문자일 경우도, 정수일 경우의 규칙을 이행한다 *
- 연산자 정리 (헷갈리는거 위주)
a<<n : 변수 a를 n비트 만큼 좌 시프트한다 (숫자가 커지는 쪽)
a>>n : 변수 a를 n비트 만큼 우 시프트한다 (숫자가 작아지는 쪽)
++a : a변수를 1 증가시키고 이 문장이 있는 줄부터 증가됨이 적용
a++ : 일단 이 문장을 a값의 변화없이 넘어가고, 다음 문장부터 a의 값이 1 증가한 상태로 적용
- 변수 선언
sub(){
static int a=0 //그대로 유지, 실행 시에는 수행하지 않음
outo int b=0 //매번 새롭게 실행
a++; b++;
}
여기서 sub함수를 반복해서 실행하면 a는 처음에만 0으로 초기화되고 이후에는 초기화되지 않아서 계속해서 수가 증가한다. 반면에 b는 함수를 실행할때마다 0으로 초기화 되면서 0,1,0,1의 값을 반복하게 된다.
'자격증' 카테고리의 다른 글
컴활 1급 필기 독학하기 2주만에 성공! (인강x) (0) | 2021.04.19 |
---|---|
[정보처리기사 필기] 프로그래밍 언어 활용(3) (0) | 2021.04.19 |
[정보처리기사 필기] 프로그래밍 언어 활용(1) (0) | 2021.04.19 |