C언어 strlen 함수 구현하기
코드 #include void my_strlen(char *); void main() { char fruit[20] = "Starwberry"; my_strlen(fruit); printf("%s\n",fruit); } void my_strlen(char *des) { int count=0; while(*des != '\0') { count++; des++; } printf("%d글자입니다",count); }
2022.02.20
C언어 strcpy 함수 구현하기
코드 #include void my_strcpy(char *, char*); void main() { char fruit[20]; my_strcpy(fruit,"Starwberry"); printf("%s",fruit); } void my_strcpy(char *str, char *des) { while(*des != '\0') { *str = *des; str++; des++; } *str = '\0'; }
2022.02.20
C언어 문자열 포인터 Swap 예시
코드 #include void myswap(char **, char **, char**); void main() { char *name = "mlog"; char *age = "26"; char *tall = "secret"; myswap(&name, &age, &tall); printf("%s\n", name); printf("%s\n", age); printf("%s\n", tall); } void myswap(char **name, char**age, char **tall) { char* temp; temp = *name; *name = *age; *age = *tall; *tall = temp; }
2022.02.20
C언어 동적 할당 및 해제 malloc 예시
코드 #include #include #include int main(void) { char *str[3]; char temp[100]; int i; for (i=0; i
2022.02.20
C언어 구조체 배열 선언 및 초기화
코드 #include struct address { char name[20]; int age; char tel[20]; char addr[80]; }; int main(void) { struct address list[5] = { { "Mr. Kim", 23, "123-456-7890", "서울 강남" }, { "Mr. Park", 35, "123-456-7891", "서울 신촌" }, { "Mr. Lee", 19, "123-456-7892", "서울 명동" }}; int i; for (i = 0; i
2022.02.20
C언어 구조체 Swap 함수
코드 #include struct major{ double math; double english; }; struct major swap(struct major); int main(void) { struct major s1 = { 0, 0 }; printf("수학점수와 영어점수를 입력하세요\n"); scanf_s("%lf %lf", &s1.math, &s1.english); printf("수학 %.2lf 영어 %.2lf \n", s1.math, s1.english); s1 = swap(s1); printf("수학 %.2lf 영어 %.2lf\n", s1.math, s1.english); } struct major swap(struct major s1) { double temp; temp = s1.math; ..
2022.02.20
C언어 구조체 연결리스트 정렬 삽입 삭제
코드 #include #include void PrintNode( void ); // 리스트에 있는 Node들을 출력 void InsertNode( char* name, int age ); // 새로운 Node를 추가 void DeleteNode( unsigned int id ); // id 값을 통해 Node 제거 void FreeList( void ); // 리스트의 모든 Node를 제거 typedef struct Node { unsigned int id; char *name; int age; struct Node *next; }NodeStruct; NodeStruct* g_pHead = NULL; // 리스트의 가장 첫 Node를 가르킴. NodeStruct* g_pTail = NULL; // 리스..
2022.02.20
C언어 영타연습기 프로그램
문제개요 이번 과제는 영문타자연습기로서 오타의 위치, 오타의 개수, 정확도 등등 을 출력해주며 텍스트 파일에 점수판을 구현하는 과제이다. 문제 분석 이번 과제에서 필요했던 기능들은, 파일 입출력, 구조체배열, 문자열 길이, 문자열 비교, 오타의 길이와 문장의 길이로 타자속도를 구하고, 이번 연습에서 가장 최고타자속도와 평균 타자속도를 화면에 출력해주어야 한다. 또한 점수판은 구조체배열로 구성되어 있으며, 이때까지 저장되어 있던 점수판을 불러들여 최대 점수로 비교를 한뒤 순위별로 정렬(버블)을 해서 다시 score.txt 넣어주는 역할을 하는 기능들이 필요로 한다. 또한 마지막으로 분할컴파일이 이번과제의 완성이 된다. 참고 처음에 1번은 게임시작 2번은 점수판 보기 게임시작후 이름을 작성하고 문장수를 선택..
2022.02.20