-
변환·랜덤 라이브러리
학습내용 학습목표 ▪ 변환 라이브러리
▪ 랜덤함수▪ 문자열을 숫자로 변환하는 라이브러리 사용법을 구현할 수 있다.
▪ 랜덤함수를 이용하여 랜덤값이 필요한 작업에 적용할 수 있다.변환 라이브러리
1. 데이터 변환
☞ atoi 문자열을 정수(int)로 변환
☞ atof 문자열을 실수(double)로 변환
☞ strtof 실수 문자열을 float형 실수로 변환
☞ strtod 실수 문자열을 double형 실수로 변환
#include <stdio.h> #include <stdlib.h> int main( void) { printf( “%s = %d\n", “2020” , atoi( “2020” )); printf( “%s = %d\n", “2020Happy new year ”, atoi( “2020Happy new year”)); printf( “%s = %d\n", “Happy new year 2020”, atoi( “Happy new year2020”)); printf( “%s = %d\n", “ 2020” , atoi( “2020” )); printf( “%s = %d\n", “.,2020” , atoi( “.,2020” )); printf( “%s = %d\n", “#$2020” , atoi( “#$2020” )); printf( “%s = %d\n", “2020.123” , atoi( “2020.123” )); return 0; }
2. 활용 예제
[1] 기능
▪ 근무일 입력 시 급여 계산
[2] 요구사항
☞ 급여 계산식 : 급여 = 근무일 * (근무연수 * 1000)
☞ 사원번호에서 입사연도를 자동으로 추출하여 급여 계산
☞ 사원번호체계: 총10자리입사연도+ 일련번호-부서코드 (예20080123-02)
랜덤함수
1. 랜덤값 발생☞ 데이터를 입력하지 않고 넘어가는 경우를 검사
2. 활용 예제
[1] 기능
▪ 학번에 따라 3개의 그룹으로 분류
[2] 요구사항
☞ 10명의 학생을 학번에 따라 랜덤하게 3개의 그룹으로 분류
☞ 학번을 시드로 랜덤하게 생성하기
#include <stdio.h> #include <stdlib.h> #include <time.h> int main( void) { int i, std[10]={2017011,2017015.2017023,2017034,2017041,2018002,2018052,2018154,2018217,2018328}; for ( i = 0; i < 10; i++) { srand (std[i]); printf( “%d 번 은 그룹 %d\n”, i+1, rand() % 3 +1); } return 0; }
학습정리
1. 변환 라이브러리
▪ 숫자 형태의 문자열을 변환하는 라이브러리 함수는 stdlib.h 헤더파일에 선언되어 있음
▪ 숫자 형태의 문자열을 정수형으로 변환하는 함수 : atoi
▪ 숫자 형태의 문자열을 실수형으로 변환하는 함수 : atof
2. 랜덤함수
▪ 랜덤값을 생성하는 라이브러리 함수 : rand
▪ rand함수는 실행 시 동일한 랜덤값을 생성하므로 시드함수를 이용해야 함
▪ rand함수 사용 시 시드함수로 srand가 있음
'Blog > JAVA기반 스마트웹 개발2021' 카테고리의 다른 글
프로그래밍 언어 활용 part 2 - 게임 프로젝트 (0) 2021.08.10 프로그래밍 언어 활용 part 2 - 주소록 관리 시스템 (0) 2021.08.10 프로그래밍 언어 활용 part 2 - 시간 관련 라이브러리 (0) 2021.08.10 프로그래밍 언어 활용 part 2 - 도서관리 시스템 고도화(파일 처리) (0) 2021.08.09 프로그래밍 언어 활용 part 2 - 파일 입출력 라이브러리(응용) (0) 2021.08.09 댓글