P4C

#ProjectH4C 2기 Codeup 21 ~ 30

지현근 2020. 7. 10. 20:13
반응형

#TeamH4C

1021 : [기초-입출력] 단어 1개 입력받아 그대로 출력하기(설명)

대충 이런식으로 코드를 짜라는 설명이 들어가있다.

#include<stdio.h>
int main(){
  char a[51]="";
  scanf("%s", a);
  printf("%s", a);
  return 0;
}

아마 null값 때문에 50개를 저장하려면 51개로 쓰라고 설명한 것 같다.

1022 : [기초-입출력] 문장 1개 입력받아 그대로 출력하기(설명)

위 문제에서 배운걸 응용하면 된다.

#include<stdio.h>
int main(){
  char a[2001];
  fgets(a, 2000, stdin);
  printf("%s", a);
  return 0;
}

입력을 엔터로 끝낸다기에 fgets함수를 사용해주었다.

fgets함수는 \n문자(엔터)를 만날 때 까지 문자열을 읽어주기 때문에 이럴 때 쓰면 편합니다.

1023 : [기초-입출력] 실수 1개 입력받아 부분별로 출력하기(설명)

이때까지 배운걸 한번 복습시켜주는 문제이다.

#include<stdio.h>
int main(){
  int a, b;
  scanf("%d.%d", &a, &b);
  printf("%d\n%d", a, b);
  return 0;
}

약간의 꼼수를 이용해 .을 통해 정수로 구분시켜서 받은 다음 출력해주게 하였다.

1024 : [기초-입출력] 단어 1개 입력받아 나누어 출력하기(설명)

#include<stdio.h>
int main(){
  char a[21];
  scanf("%s", a);
  for(i=0; a[i]!='\0', i++){
    printf("\'%c\'", a[i]);
  }
  return 0;
}

해당문제에서는 strings를 받아줘야 해서 %s를 사용해주었다.

for문을 활용해주었는데 i를 0으로 세팅해두고 입력받은 strings에서 i번째에 null값이 입력될 때 까지 돌아가게 해주었다.

1025 : [기초-입출력] 정수 1개 입력받아 나누어 출력하기(설명)

약간 손이 아픈 문제였다.

#include<stdio.h>
int main(){
  long int a, b, c, d, e
  scanf("%ld%ld%ld%ld%ld", &a, &b, &c, &d, &e);
  printf("[%d]\n[%d]\n[%d]\n[%d]\n[%d]", a*10000, b*1000, c*100, d*10, e);
  return 0;
}

1026 : [기초-입출력] 시분초 입력받아 분만 출력하기(설명)

정말 간단한 문제였다.

#include<stdio.h>
int main(){
  int a, b, c;
  scanf("%d:%d:%d", &a, &b, &c);
  printf("%d", b);
  return 0;  
}

1027 : [기초-입출력] 년월일 입력 받아 형식 바꿔 출력하기(설명)

또 구분만 잘해주면 되는 문제다.

#include<stdio.h>
int main(){
  int a, b, c;
  scanf("%d.%d.%d", &a, &b, &c);
  printf("%02d-%02d-%04d", c, b, a);
  return 0;
}

1028 : [기초-데이터형] 정수 1개 입력받아 그대로 출력하기2(설명)

이번에는 입력될 수 있는 정수의 범위가 굉장히 크다.

이런경우에는 unsigned int를 사용하면 된다.

#include<stdio.h>
int main(){
  unsigned int a;
  scanf("%u", &a);
  printf("%u", a);
  return 0;
}

1029 : [기초-데이터형] 실수 1개 입력받아 그대로 출력하기2(설명)

이렇게 범위가 큰 실수를 받아들일 땐 double을 사용해주면 된다.

#include<stdio.h>
int main(){
  double a;
  scanf("%lf", &a);
  printf("%.11lf", a);
  return 0;
}

1030 : [기초-데이터형] 정수 1개 입력받아 그대로 출력하기3(설명)

이번에는 윗윗문제보다 훨씬 큰 정수의 범위이다.

이럴땐 long long을 사용해주면 된다.

#include<stdio.h>
int main(){
  long long int a;
  scanf("%lld", &a);
  printf("%lld", a);
  return 0;
}

 

반응형