혜랑's STORY

[C_멘토링] 6주차 과제 본문

2020 SISS 21기 활동/1학기 C언어

[C_멘토링] 6주차 과제

hyerang0125 2020. 6. 7. 20:40

1. strcmp 함수

<코드>

#include <stdio.h>

int myStrcmp(char* firstString[], char* secondString[]);

int main() {
	char firstString[500];
	char secondString[500];

	printf("비교할 첫 번째 문자열을 입력하세요 : ");
	scanf("%s",firstString);

	printf("비교할 두 번째 문자열을 입력하세요 : ");
	scanf("%s", secondString);

	printf("%d",myStrcmp(firstString, secondString));

	return 0;

}

int myStrcmp(char* firstString[], char* secondString[]) {
	for (int i = 0; firstString[i]||secondString[i]; i++) {
		if (firstString[i] != secondString[i]) {
			if (firstString[i] - secondString[i] > 0) {
				return 1;
			}
			else if(firstString[i] - secondString[i] < 0){
				return -1;
			}
			else {
				return 0;
			}
		}
	}
}

<실행 결과>

strcmp 함수 실행 결과

<설명>

- str1의 처음 num개의 문자를 str2의 처음 num개의 문자와 비교한다.

2. 문자열 반복

<코드>

#include <stdio.h>
#include <string.h>

void repeat(char* S[], char* P[], int x);

int main() {
	char S[20],P[160];
	int T, R;

	printf("Test case : ");
	scanf("%d", &T);

	for (int i = 0; i < T; i++) {
		printf("repeat   string\n");
		scanf("%d %s", &R, S);
		repeat(S, P, R);
	}
}

void repeat(char* S, char** P[][160], int x) {
	for (int i = 0; S[i]; i++) {
		for (int j = 0; j < x; j++) {
			printf("%c", S[i]);
		}
	}
	printf("\n");
}

<실행 결과>

문자열 반복 실행 결과

<설명>

 

3. 단어의 개수

<코드>

#include <stdio.h>

int main() {
	char str[100000];
	int space = 0;
	int word = 0;

	printf("Sentence : ");
	gets_s(str, 100000);

	for (int i = 0; str[i]; i++) {
		if (str[i] == ' ')
			space++;
	}

	word = space + 1;

	printf("word : %d", word);
}

<실행 결과>

단어의 개수 실행 결과

 

'2020 SISS 21기 활동 > 1학기 C언어' 카테고리의 다른 글

[2020-2학기 C과제 5주차]  (0) 2020.11.01
[C_멘토링] 7주차 과제  (0) 2020.06.14
[C_멘토링] 5주차 과제  (0) 2020.05.31
[C_멘토링] 4주차 과제  (0) 2020.05.22
[C_멘토링]3주차 과제  (0) 2020.05.17