문자열안에 개수를 셀 문자를 입력하고 그 문자를 발견하면 count를 증가시키는 프로그램을 가지고 왔습니다.
물론 단번에 코드를 본다면 좋기야 하겠지만 장기적으로 봤을때
혼자풀어보기 -> 힌트 -> 코드보기 순으로 공부하시는게 실력 향상에 큰 도움이 됩니다!
힌트를 보고 천천히 생각을 거쳐서 문제를 풀어보시고
답안을 확인해보세요
코드힌트
더보기
str_chr(char *s, char c)
s의 내용이 c와 같다면 count를 증가시키고
count를 return 해주는 함수를 작성하면 됩니다.
아래는 기본틀이니 참고하셔서 코드 작성하시면 되겠습니다.
#include <string.h>
#include <stdio.h>
#define SIZE 100
int str_chr(char *s, char c) { //s의 내용이 c와 같다면 count를 증가시키는 함수
int i;
int count=0;
for ( ) { //s의 끝까지 c와 비교하며
//만약s[i]가 c와 같다면
//카운트를 증가시킨다
}
return count;
}
int main(void) {
char str[SIZE];
char ch;
printf("문자열을 입력하시오: ");
gets(str);
printf("개수를 셀 문자를 입력하시오: ");
ch = getchar();
printf("%c의 개수: %d", ch, str_chr(str, ch));
return 0;
}
답안코드
더보기
#include <string.h>
#include <stdio.h>
#define SIZE 100
int str_chr(char *s, char c) { //s의 내용이 c와 같다면 count를 증가시키는 함수
int i;
int count=0;
for (i=0;i<strlen(s);i++) { //s의 끝까지 c와 비교하며
if( s[i] == c ) //만약s[i]가 c와 같다면
count++; //카운트를 증가시킨다
}
return count; //count를 반환
}
int main(void) {
char str[SIZE];
char ch;
printf("문자열을 입력하시오: ");
gets(str);
printf("개수를 셀 문자를 입력하시오: ");
ch = getchar();
printf("%c의 개수: %d", ch, str_chr(str, ch));
return 0;
}
더 많은 C언어 글이 궁금하다면?
https://chuinggun.tistory.com/category/C%EC%96%B8%EC%96%B4
'C언어' 카테고리의 다른 글
[C언어] 문자열을 입력받아 대문자로 변환하는 함수 str_upper(char *s)를 작성하고 테스트하시오 (0) | 2020.05.04 |
---|---|
[C언어] 문자열을 입력받아 대문자는 소문자로 소문자는 대문자로 변환하는 프로그램을 작성하시오 (0) | 2020.05.04 |
[C언어] 문자열을 입력받고 문자열에 포함된 공백문자를 삭제하라 (0) | 2020.05.04 |
[C언어] 사용자로부터 문자를 입력받고 아스키 코드 값을 출력하시오 (0) | 2020.05.04 |
[C언어] 포인터를 사용하여 2개의 정수를 입력받아 최대공약수와 최소공배수를 반환하는 함수를 작성하시오 (0) | 2020.05.04 |
댓글