본문 바로가기

전체 글

(48)
재귀함수로 별 찍기 WriteUp 코드는 이렇다. #include void print_star(int a){ if (a==0){ return; } for(int i = 0; i < a; i++){ printf("*"); } printf("\n"); return print_star(a-1); } int main(){ int a; printf("Input: "); scanf("%d", &a); print_star(a); return 0; } 먼저 printf를 목적으로 한 함수로, void로 print_star() 함수를 선언 해 준다. print_star 함수의 내용은 a를 인자로 받고, a가 0이면 그냥 return 아니면 for문으로 i가 a보다 같아질 때 까지 별을 찍어준다 포문을 나온 후 개행을 해 주고 재귀함수로 a-1을 인자로 ..
Compare 함수 문제 WriteUp 코드는 이렇다. int compare(int a, int b){ if(a >= b){ return 1; } else{ return 0; } } #include int main(){ int a, b; scanf("%d %d", &a, &b); if(compare(a, b)){ printf("a가 b보다 크거나 같다"); } else{ printf("a가 b보다 작다"); } } 1이나 0을 return 해야됨으로 int형으로 compare() 함수를 선언해주고 함수 내용은 if문으로 a가 b보다 크거나 같으면 1을 리턴해주고, 아니면 0을 리턴해준다 main에서는 a와 b를 먼저 선언 scanf 함수로 a와 b를 입력받고 if문의 기본적인 문법으로, 1이면 참 0이면 참이 아닌것을 이용 해 compare(..
BaekJoon - 10798: 세로읽기 문제는 다음과 같다. 정답은 다음과 같다. #include char arr[5][15]; int main() { for (int i = 0; i < 5; i++) scanf("%s", arr[i]); for (int i = 0; i < 15; i++) { for (int k = 0; k < 5; k++) { if (arr[k][i] != NULL) printf("%c", arr[k][i]); } } return 0; } 5행에 최대 15개의 문자가 입력되니 배열을 arr[5][15] 와 같이 선언 해 주고 텍스트를 다섯번 입력 받는다. 이중포문으로 1행 ~ 5행 1열 ~ 15열까지 돌려준다. 중간에 if문으로 입력이 안받아진(널문자인) 텍스트는 제외하고 출력해준다.