1.프로그램과 프로그래밍
프로그램 : 순서에 따라 한번에 하나씩 실행되는 명령어로 구성되어 있어 컴퓨터가 수행해야하느 절차
프로그래밍 : 주어진 문제를 해결하기 위해 처리방법(문법), 순서 를 정하는 방법
-하나의 정수를 입력받아 그정수의 2배 값을 출력하는 프로그램 작성
1 정수 입력 2 정수 2배값 출력
0저장공간>1 입력> 1.5 정수2배> 2 출력
예시)
1단계 int num; // 변수선언
integer(정수) 변수(data 저장공간) num[쓰레기값]
2단계 scranf ("%d", &num); //입력 (키보드)
함수명(기능) 입력양식 입력대상자의주소
(%~)형식변환문자 d=decimal(10진정수)
&=주소연산자
3입력>쓰레기값이 3이됨>num[3]
3단계 lv = rv
num = num*2; // 2배수만들기 num3>6
4단계 printf("num=%d",num);// 출력하기
format (출력포맷 , 출력대상)
결과 num = 6
2. 프로그래밍 언어란?
일의 처리방법과 순서를 컴퓨터가 알아듣고 실행할 수 있는 명령을 내려줄때 사용하는 언어
실제로 컴퓨터가 명령을 수행하기 위해서는 컴퓨터가 정확하게 알아들을 수 있는 기계어로 프로그램을 변환해주는 작업을 거쳐야 함.
c 속도 good / c++ java pytyon c#등 객체지향언어

c언어 특징
1. c언어는 모든언어의 기본
2. 효율성 : 프로그램의 크기가 작고(임베디드분야) 실행 속도가빠름 메모리를 가장 효율적으로 사용(직접관리)
3. 하드웨어 제어 및 로봇제어 가능
4. 탁월한 이식성 : 특정 시스템에서 작성한 c코드 다른 운영체제에서 사용하고자 할때 최소한의 수정사용가능 but java가 갑임.
3.프로그래밍 7단계
- 프로그램 목적 정의 : 어떤 작업을 할건지결정
// 요구분석
- 프로그램이 요구하는 정보
- 프로그램이 수행할 계산 및 조작
- 프로그램이 사용자에게 제공할 정보 정하기 - 프로그램 설계 : 프로그램을 어떻게 만들건지 결정
- 사용자 인터페이스 결정(화면설계)
- 프로그램 내의 데잉터 표현방버 결정(데이터형설계) ex 정수형 실수형
- 보조 파일에서 데이터 표현방법 결정(파일설계)
- 데이터 처리방법 결정(함수설계) 요구사항에 맞는 함수를 만드는경우가 많음.
복잡한 핵심로직은 flowchart나 ns-chart로 표현함. - 코드 작성 : 설계한 프로그램의 실제 구현 즉, 프로그램설계를 c언어로 번역하는거(신입 '코더')
- 컴파일 : 소스코드(source code)를 실행 코드로 변환시킴.
preprocessing > compiling > linking 과정으로 실행파일(executable file) 생성전처리 >
기계어 변환 > 연결 - 프로그램 실행 : 운영체제 상에서 파일 이름이나 아이콘을 더블 클릭 하여 실행 또는 ide(통합개발환경)에서 메뉴를 통해서 실행
- 테스트 및 디버깅 : 실질적인 데이터로 프로그램의 정확한 수행여부를 검사하고 프로그램내에 존재하는 오류(bug)를 찾아 수정(debugging)하는 과정
5단계까지 프로그래머가 6 은 테스터(큰 곳) - 유지보수(maintenance) : 사용중인 프로그램에 대해서 새로운 기능을 추가시키거나 다른 기종의 컴퓨터에서 실행시키기 위해서 기존의 프로그램을 수정. > 끊임없이 수정하는 단계(프로그래머 or 유지보수팀

프로그래밍 오류
워닝 경고발생해도 실행은 되는데 잘안됨
int정수 num; 햇는데 num = 7.5(실수) 오류
lv < rv 넣을때 7만 들어가서 손실 발생
컴파일에러 세미콜론(문장종결자) 안넣으면 나옴
초반 잘보임
링크에러 찾기힘듦
런타임에러 실행하는 도중 오류 > 프로그램 중단(대부분 메모리 관리 잘못해서 발생)
scranf ("%d", &num); > &주소연산자 까먹으면 잘가다 오류남.
로직에러(가장중요) 논리의 오류
-> 발생시 '처음부터 다시 만들기'
4.프로그램의 5대 기본 구성 요소
1. 변수 : 기억공간 (RAM공간에 할당)

2. 상수 : 값(3, 2.5, 'a', "sky" 등)
숫자상수 / ' '>문자상수/ " " > 문자열상수
상수 > 정수형인지 실수형인지 알아야함
int score; / double score;
3. 연산자 : 프로그램에서 연산을 할때 사용하는 기호(+ - * / + 등 45가지)
4. 예약어 : 프로그래밍 언어 중 특별한 의미로 고정되어 사용되는 단어로 사용자가 임의로 바꾸어 사용할 수 없는 명령어 (int ,if, for 등)
5. 함수 : 변수 상수 예약어 연산자 등을 이용하여 한가지 이상의 기능을 가진 짧은 프로그램

함수의 2분류
library function : maker에서 제공하는 함수(460여개)
soen.kr 에 함수종류있음.
user defined function : 사용자 정의 함수(무한대)
함수의 특징
외형적 특징 : 함수명 뒤에 항상 ()가 따라다님
수행측면의 특징 : 1. call(호출)해줘야만 실행됨
return(회귀)한다.
함수 사용을 위해 필요한 3요소
함수 선언부(커ㅓㅁ파일러에게 함수의 기본정보를 줌> 호출부의 에러방지)
함수 호출부(사용)
함수 정의부(실제 기능 서술)
main()함수가 무조건 먼저 시작함.
코딩시 유의점
c 프로그램은 프로그램의 기능을 함수 단위로 나누어 작성 : 입력기능, 계산기능, 출력기능 등(s/p언어특징)
c 프로그램은 소문자로 작성해야한다.(대소문자 구분) : 반드시 소문자로 작성해야하는 것 : 예약어, main함수명, 라이브러리 함수
ex) int num;// > NUM = 7 >컴파일 에러 발생'

func4() 함수사용x 오류안남. 함수 필요하면 미리만들고 나중에 호출할지말지 결정
'기초단계 > c언어' 카테고리의 다른 글
| 2022.11.10-1 배열 (0) | 2022.11.10 |
|---|---|
| 2022.11.09-2 함수 (0) | 2022.11.09 |
| 2022.11.09-1 조건 & 분기 (0) | 2022.11.09 |
| 2022.11.08.-3 반복문 (0) | 2022.11.08 |
| 2022.11.08.-2 변수, 상수, 입출력 (0) | 2022.11.08 |