반응형

언어 자료구조 알고리즘/C언어 예제 104

[C언어 소스] 문자열 복사 함수 만들기

[C언어 소스] 문자열 복사 함수 만들기 문자열 복사하기(dest:복사할 버퍼, src: 원본 문자열)origin:= dest반복(dest가 가리키는 곳에 src가 가리키는 문자 대입) //대입한 결과가 참이면 반복 dest와 src를 다음 위치로 증가origin 반환 소스코드 //12. 문자열 복사하는 함수 만들기#include char *mystrcpy(char *dest, const char *src);int main(void){ char source[100] = "Hello World"; char dest[100]; printf("원본 문자열:%s\n", source); mystrcpy(dest, source); printf("복사 결과 문자열: %s\n", dest); return 0;} cha..

[C언어 소스] 부분 문자열 비교 함수 만들기

[C언어 소스] 부분 문자열 비교 함수 만들기 문자열 비교하기(str1:비교 대상 문자열1, str2: 비교 대상 문자열 2, n:비교할 문자 개수)반복(n이 0보다 크면서 str이 가리키는 문자가 참이면서 str1과 str2가 가리키는 문자가 서로 같으면) str1과 str2를 다음 위치로 이동 n을 1 감소str1과 str2가 가리키는 문자의 차이 반환 소스코드//부분 문자열 비교하는 함수 만들기#include int mystrlen(const char *str);//사전식 비교: 사전에 앞에 나오는 단어가 작고 뒤에 나오는 단어가 크다고 판별//차이가 없으면 0 반환int mystrncmp(const char *str1, const char *str2, size_t n);int main(void){..

[C언어 소스] 문자열 비교 함수 만들기

[C언어 소스] 문자열 비교 함수 만들기 문자열 비교하기(str1:비교 대상 문자열1, str2: 비교 대상 문자열 2)반복(str이 가리키는 문자가 참이면서 str1과 str2가 가리키는 문자가 서로 같으면) str1과 str2를 다음 위치로 이동str1과 str2가 가리키는 문자의 차이 반환 소스코드//문자열 비교하는 함수 만들기#include //사전식 비교: 사전에 앞에 나오는 단어가 작고 뒤에 나오는 단어가 크다고 판별//차이가 없으면 0 반환int mystrcmp(const char *str1, const char *str2);int main(void){ char names[5][20] = { "홍길동","강감찬","이순신","을지문덕","한석봉" }; char name[20]; int i =..

[C언어 소스] 문자열 길이 계산 함수 만들기

[C언어 소스] 문자열 길이 계산 함수 만들기 문자열 길이 구하기(str:문자열 시작 위치)cnt:=0반복(str[cnt]가 참인 문자) cnt 1 증가cnt 반환 소스코드//9. 문자열 길이 구하는 함수 만들기#include int mystrlen(const char *str);int main(void){ char name[100] = "Hello World"; printf("%s\n", name); printf("길이: %d\n", mystrlen(name)); return 0;} int mystrlen(const char *str){ int cnt; //str[cnt]가 거짓 문자(종료 문자, '\0')가 나올 때까지 cnt를 1증가 for (cnt = 0; str[cnt]; cnt++); retu..

[C언어 소스] 1월 1일 요일 입력받아 달력 출력

[C언어 소스] 1월 1일 요일 입력받아 달력 출력 //8. 1월 1일 요일 입력받아 달력 출력 #include int days[12] = { 31,29,31,30,31,30,31,31,30,31,30,31 };const char *wname[7] = { "일","월","화","수","목","금","토" };const char *bars[2] = //데코레이션 바 { "=====================================================\n", "-----------------------------------------------------\n"};int DrawMonth(int month, int start);//달 출력(달(0~11), 시작요일:0~6), 반환값은 다음 달 ..

[C언어 소스] 년도와 일수 입력받아 시각 출력

[C언어 소스] 년도와 일수 입력받아 시각 출력 시각(년도, 일수)월별 일수:={ 31,28,31,30,31,30,31,31,30,31,30,31};조건(year is 윤년) 2월 달 일수:=29반복(일수>월별일수[달]) 일수:= 일수 - 월별일수[달]시각 출력 소스코드//7. 년도와 일수 입력받아 시각 출력 #include void date(int year, int day);//년도와 일수를 입력하면 년월일 출력 int main(void){ int year, day; printf("년도와 일수 입력(예:2016 102): "); scanf_s("%d %d", &year, &day); date(year, day); //year와 day를 입력인자로 전달하여 일 수를 출력 return 0;} void da..

[C언어 소스] 속이 빈 삼각형 출력

[C언어 소스] 속이 빈 삼각형 출력 알고리즘n:←높이 입력반복(space:1→(n-1)) 공백 출력'*'출력개행 출력반복(line:1→n-2) 반복(space:1→n-line-1) 공백 출력 '*'출력 반복(space:1→2line-1) 공백 출력 '*' 출력 개행반복(star:1→(2n-1)) '*'출력개행 소스코드 //6. 반복문 연습 - 속이 빈 삼각형 //입력//5 - n //출력// * 공백 4, 별1, 개행// * * 1- 공백 3, 별1, 공백1,별1, 개행 // * * 2- 공백 2, 별1, 공백3,별1, 개행// * * 3- 공백 1, 별1, 공백5,별1, 개행// ********* 공백0, 별9, 개행 //공백 = n-1, 별1, 개행//line: 1~(n-2)//공백 = n-line..

[C언어 소스] 다이아몬드 출력

[C언어 소스] 다이아몬드 출력 알고리즘n:←정수 입력반복(line:0→n) 반복(space:0→n-line-1) 공백 출력 반복(star:0→2*line+1) '*' 출력 개행반복(line:n-2→n) 반복(space:0→n-line-1) 공백 출력 반복(star:0→2*line+1) '*' 출력 개행 소스코드 //4. 반복문 연습 - 다이아몬드 출력 // 입력// 5 - n //출력// * 0- 공백 4, 별1, 개행// *** 1- 공백 3, 별3, 개행 // ***** 2- 공백2, 별5, 개행// ******* 3- 공백1, 별7, 개행 // ********* 4- 공백0, 별9, 개행// ******* 3- 공백1, 별7, 개행// ***** 2- 공백2, 별5, 개행// *** 1- 공백 3..

[C언어 소스] 역삼각형 출력

[C언어 소스] 역삼각형 출력 알고리즘n:←출력할 라인 수 입력반복(line:0→n) 반복(space:0→line) 공백 출력 반복(star:0→2(n-line)-1) '*' 출력 개행 소스코드 //3. 반복문 연습 - 역삼각형 출력 //입력//5 - n //출력// ********* 0- 공백0, 별9, 개행// ******* 1- 공백1, 별7, 개행 // ***** 2- 공백2, 별5, 개행// *** 3- 공백 3, 별3, 개행// * 4- 공백 4, 별1, 개행 //공백 = line//별 = 2*(n-line)-1//개행=1 #include int main(void){ int n; int line, space, star; printf("삼각형의 높이:"); scanf_s("%d", &n);//입..

반응형