본문 바로가기
  • 행복은 내게서 오는 것!
프로그래밍/C

c언어 문제 모음집

by ㅍ우주 2022. 3. 30.

정수 A를 입력받으면 해당 구구단을 출력하는 프로그램 작성

#include <stdio.h>

int main(void) {
  int dan;
  printf("알고싶은 단을 입력하시오 : ");
  scanf("%d", &dan);
  for (int i = 1; i<=9; i++){
    printf("%d * %d = %d\n", dan, i, dan*i);
  }
}

A+B를 출력하는 프로그램, 첫 번째 입력 숫자는 덧셈 계산 횟수,

두 번째 입력부터는 두 정수를 입력하여 덧셈 계산.

#include <stdio.h>

int main(void) {
  int repeat;
  printf("덧셈을 몇번 계산해드릴까요? : ");
  scanf("%d", &repeat);
  int num1, num2;
  for (int i = 1; i<=repeat; i++) {
    printf("더하고 싶은 첫번째 수를 입력하시오 : ");
    scanf("%d", &num1);
    printf("더하고 싶은 두번째 숫자를 입력하시오 : ");
    scanf("%d", &num2);
    printf("Case #%d  %d + %d = %d\n", i, num1, num2, num1+num2);
  }
}

정수 A를 입력받으면 1부터 A 까지 합을 구하는 프로그램 작성.
(단, A 는 최대 100을 넘어가면 안된다.)

#include <stdio.h>

int main(void) {
  int num;
  printf("1부터 몇까지의 합을 구하시고 싶으신가요? : "); // 5
  scanf("%d", &num); // num = 5
  int sum = 0; //sum은 숫자의 합을 저장
  for (int i = 1; i<=num; i++) {
    if (num >= 100 ){
      printf("오류입니다.");
      break;
    }
    sum+=i; // sum + i = sum
    
  }
  printf("%d", sum);
}


정수 A를 입력받으면 1부터 N 까지 한 줄에 하나씩 출력하는 프로그램 작성.
(단, A 는 최대 100을 넘어가면 안된다.

#include <stdio.h>

int main(void) {
  int a;
  printf("1부터 몇까지 출력시켜드릴까요? : ");
  scanf("%d", &a);
  for (int i = 1; i<= a; i++) {
    if (a>=100) {
      printf("다시 입력하시오.");
      break;
    }
    else
      printf("%d\n", i);
  
    }
  }


정수 A를 입력받으면 A 번째 줄까지 차례대로 별을 출력하는 프로그램 작성

#include <stdio.h>

int main(void) {
  int star;
  printf("별을 몇줄 만들고 싶으신가요?");
  scanf("%d", &star);
  for (int i=0; i<star; i++){
    
    for (int j = star; j>i; j--) {
      printf(" ");
    }
  
    for (int j = 0; j<=i; j++) {
      printf("*");
    }
    printf("\n");
  }
}


정수 A(0~99)를 입력받으면 다음과 같은 연산을 할 수 있다.
먼저 주어진 수가 10보다 작다면 앞에 0을 붙여 두 자리 수로 만들고, 각 자리의 숫자를 더한다.
그 다음, 주어진 수의 가장 오른쪽 자리 수와 앞에서 구한 합의 가장 오른쪽 자리 수를 이어 붙이면 새로운 수를 만들 수 있다

#include <stdio.h>

int main(void) {
  int n;
  printf("사이클이 궁금한 숫자를 입력하시오 : "); // 26
  scanf("%d", &n);
  int num = n;
  int cnt = 0; // 몇번 세는 변수

   while(1) {
    int a = num / 10; // 2
    int b = num % 10; // 6
    int c = (a+b) % 10; // 8
    num = (b*10) + c; // 68
    cnt += 1; 
  
  
  if (num == n){
    break;
  }
    }
  printf("%d", cnt);
}