본문 바로가기

컴퓨터/C 언어

배열없이 3개 정수 정렬하기 3개의 정수에서만 사용할 수 있는 트릭을 사용한 코드이다.최솟값과 최댓값을 알면 나머지 한 값도 알 수 있는 방식이다. #include <stdio.h> #include <limits.h> int main(int argc, char const *argv[]) { int m, M, val, i, t; m = INT_MAX, M = INT_MIN, t = 0; for(i = 0; i < 3; ++i) {..
삼중자(Trigraph) C언어에서 기본으로 사용하는 문자집합(Character set)은 ASCII입니다.하지만 일부 국가들에서 ISO/IEC 646를 기준으로 하는 키보드를 사용하는데, 우리나라도 여기에 포함됩니다.여기서 ISO/IEC 646이란 7비트로 문자를 표기하는 방식을 선언해놓은 것으로 미국의 체계인 ASCII를 기반으로 합니다. 숫자나 알파벳은 공통적인 부분과 일부 문장부호(!, ", #, $, &, :, ?, @, [, \, ], ^, _, `, {,..
int형 변수를 이진수로 출력하기 int 형 변수를 이진수로 출력하는 함수를 만들면 아래와 같다.아이디어 자체는 간단하다. 입력받은 정수를 Shift 연산을 이용해서 비트 이동을 시켜서 우리가 원하는 비트를 LSB에 오도록 만들고, 이 숫자를 1과 &연산을 하면 LSB의 숫자가 나오기 때문에 그 때의 값을 출력하는 방식이다. void print32bit(int a){ int i; for( i=31; i>=0; --i){ printf("%d", (a>>i..
[입력-형성평가5] 입력 - 형성평가5Time Limit : 1000MS실수의 yard(야드)를 입력받아 cm(센티미터)로 환산하여, 입력값과 환산한 값을 출력 예와 같이 소수 둘째자리에서 반올림하여 첫째자리까지 출력하는 프로그램을 작성하시오. (단, 1야드 = 91.44cm로 한다.) 실수는 "double"로 하세요.몇 야드인지 입력하시오. 10.110.1야드 = 923.5cm정올에서는 입력을 받기 위한 지문 뒤에는 꼭! 공백을 넣어야한다. ..
[입력-형성평가4] 입력 - 형성평가4Time Limit : 1000MS세 개의 정수를 입력받아 합과 평균을 출력하는 프로그램을 작성하시오.(단, 평균은 소수 이하를 버림하여 정수 부분만 출력한다.)20 50 100합 = 170평균 = 56정수를 정수로 나눈 몫은 소수 이하를 버린 정수가 된다. #include <stdio.h> int main(void){ int a, b, c; scanf("%d %d %d", &a, &b, &..
[입력-형성평가3] 입력 - 형성평가3Time Limit : 1000MS정수형 변수 한 개를 선언하여 50을 대입하고 실수형 변수 한 개를 선언하여 100.12를 대입한 후 다음과 같이 출력되는 프로그램을 작성하시오.100.12 * 50 = 5006 #include <stdio.h> int main(void){ int a = 50; float b = 100.12f; printf("%.2f * %d = %.f", b, a, a*b); return ..
[입력-형성평가2] 입력 - 형성평가2Time Limit : 1000MS실수형 변수를 2개 선언한 후 각각에 80.5, 22.34를 대입한 후 두 수의 합을 구하여 각각의 숫자를 10칸씩 오른쪽에 맞추어 소수 둘째자리까지 출력하는 프로그램을 작성하시오.     80.50     22.34     102.84공백을 넣을 경우 1칸을 차지한다. #include <..
[입력-형성평가1] 입력 - 형성평가1Time Limit : 1000MS세 개의 정수형 변수를 선언하고 각 변수에 10, 20, 30을 대입한 후 그 변수를 이용하여 출력 예와 같이 출력하는 프로그램을 작성하시오.10 + 20 = 30 #include <stdio.h> int main(void){ int a, b, c; a=10; b=20; c=30; printf("%d + %d = %d", a, b, c); return 0; }