CodeUp C언어 기초 100제 [기초 - 입출력] 1010~1027

jychan99·2021년 8월 18일
0
post-thumbnail

1010

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

1011
printf에서 문자를 출력하려면 %d(정수형 int)가 아닌 %c를 씀

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

1012
실수형은 %f.

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

1013
scanf는 공백이 구분된다. 공백을 그대로 받으려면 나중에 나올 get명령어를 써야함

#include <stdio.h>
int main()
{
    int x,y;
    scanf("%d %d",&x,&y);
    printf("%d %d",x,y);
    return 0;
}

1014

#include <stdio.h>
int main()
{
    char x, y;
scanf("%c %c", &x, &y);
printf("%c %c", y, x);
    return 0;
}

1015
실수표현에서 소수점을 표현은 %.자릿수로 표현함

#include <stdio.h>
int main()
{
    float x;
    scanf("%f",&x);
    printf("%.2f",x);
    return 0;
}

1016은 없는듯?

1017

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

1018
입력은 : 로 구분된다고 문제에나와있긴한데 : 없어도 틀린 구조는 아닌거같은데 : 빼니까 틀림;

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

1019
년도(y)를 출력할때 %04는 4자리까지 출력하는데 빈자리는 0으로 채운다는 의미
ex) 1999년이면 1999출력, 199년이면 0199출력, 19년이면 0019로출력
월,일(m,d)을 출력할때 %02는 2자리까지 출력하고 빈자리는 0으로 채움

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

1020

#include <stdio.h>
int main()
{
    int x,y;
    scanf("%d-%d",&x,&y);
    printf("%06d%d",x,y);
    return 0;
}

00년생이면 00XXXX로 시작하기때문에 x를출력할땐 %06d로 출력한다.

1021

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

단어는 문자열로 표현해야됨
문자열은 배열로이루어져있고 ""로 초기화 함
입력받을땐 %s(string)으로 받음

1022

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

scanf는 공백을 구분하기때문에 공백을 그대로 출력하려면 get함수를 써야함
공백을 가지는 문자열은 gets로 받을수있음

1023

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

실수를 정수부분, 소수부분을 따로받아서 출력했음

1024

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

문자열끝에는 '\0'(널문자)가 들어가므로 while반복문으로 문자열이 널을 만날때까지 반복하도록 했음

1025

#include <stdio.h>
int main()
{
    int x,i;
    scanf("%d",&x);
    for(i=10000;i>0;i/=10)
    {
        printf("[%d]\n",(x/i)*i);
        x=x%i;
    }
    return 0;
}

다섯자리의 정수를 각 자리별로 나누어 출력하기위해서는10의 제곱승으로 나눈몫에 10의제곱승을 다시곱해서 값을구한다.
for문은 반복횟수가 적거나 정해져있을때 쓰면 좋아서 for문을 사용했음

1026

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

1027

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

그냥 순서만 바꿔주면됨

profile
내가 지금 두려워 하고 있는 일이 바로 내가 지금 해야 할 일이다. 🐍

0개의 댓글

관련 채용 정보