본문 바로가기

+ 컴퓨터/C

[ATmega128] LED로 이진수 세기 Colored By Color Scripter™ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 /* * GccApplication1.c * * Created: 2014-10-29 오전 11:23:03 * Author: Cleartype */ #include void delay_sec(int sec) { volatile int i,j,k; for(i=0; i 더보기
[C언어] 길이가 n인 구조체 배열에서 평균, 최대값, 합계 구하고 값 찾기 요새 계속 C언어만 쓰는 듯.. malloc은 안 쓰려고 노력했다. raw 누르면 복사할 수 있게 소스가 뜸. n을 입력하면 배열 내용이 뜨고, 찾을 숫자를 입력하면 찾아준다. 더보기
[Try-cat.ch] 완전제곱수 원문 보기 완전 제곱수를 찾아보자. 하나의 자연수가 입력으로 주어졌을 때 그 수와 가장 가까운 (차가 가장 작은) 완전 제곱수를 찾아 출력한다. 사용 언어 : C언어 C언어를 오랜만에 다루다 보니 math.h를 까먹어서; Time Limit : 200ms, Memory Limit : 512kb 1 2 3 4 5 6 7 8 9 10 11 12 #include #include int main(void) { int n, s1, s2; scanf("%d", &n); s1 = pow((int)sqrt(n), 2) - n; s2 = pow((int)sqrt(n)+1, 2) - n; if(abs(s1) > abs(s2)) printf("%d", ((int)sqrt(n)+1)*((int)sqrt(n)+1)); else.. 더보기
[Try-cat.ch] 삼각형 판별 원문 보기 삼각형의 종류를 판별하라 삼각형의 세변의 길이가 주어질때 직각삼각형인지, 예각삼각형인지, 둔각 삼각형인지를 판별하시오 사용 언어 : C언어 Time Limit : 100ms, Memory Limit : 512kb 또 또 또 런타임에러가 난다;; 왜 이러지? #include #define sqr(n) n*n int main(void) { int a=0, b=0, c=0; scanf("%d %d %d",&a,&b,&c); if(sqr(a)+sqr(b) == sqr(c) || sqr(a)+sqr(c) == sqr(b) || sqr(c)+sqr(b) == sqr(a)) printf("직각\n"); else if(sqr(a)+sqr(b) sqr(c) || sqr(a)+sqr(c) > sqr(b) || .. 더보기
[Try-cat.ch] 소수 찾기 원문 보기 해당하는 모든 소수를 출력하라 소수란 1과 자기 자신만을 약수로 가지는 수이다. 100이하의 자연수 중 모든 소수를 출력하시오 소수를 오름차순으로 출력한다. 각 출력값 사이는 공백으로 구분하고, 출력값 5개 마다 줄바꿈을 한다. 사용 언어 : C언어 왜인진 모르겠는데 자꾸 런타임 에러가 떠서; Visual Studio 2008로 돌려보았더니 잘 돌아간다. 뭐가 문제지? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 /* 소수란 1과 자기 자신만을 약수로 가지는 수이다. 100이하의 자연수 중 모든 소수를 출력하시오 */ #include int isSosu(int n); int main(.. 더보기
[C언어] 재귀함수를 이용한 하노이 탑 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 #include void hanoi(int n, char from, char tmp, char to); void main() { int n; printf("층 수:"); scanf("%d",&n); hanoi(n,'A','B','C'); } void hanoi(int n, char from, char tmp, char to) { if(n==1) { printf("%d번째 판을 판 %c에서 판 %c로 이동 \n",n, from, to);//n이 1일때 바로 c로 이동하도록. } else { hanoi(n-1, from, to, tmp); //첫번째 재귀 : n이 .. 더보기
[이산수학] C언어로 프림 알고리즘, 크루스칼 알고리즘 짜기 프림 알고리즘과 크루스칼 알고리즘을 짜서 출력하는 프로그램이다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 11.. 더보기
[C언어] 3중 for문을 이용하여 3X3 행렬의 곱 구하기 3중 for 문을 이용하여 c언어에서 행렬의 곱을 구해 보겠습니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 #include #define ROWS 3 #define COLS 3 int main(void) { int A[ROWS][COLS] = { {2,3,0}, {8,9,1}, {7,0,5} }; int B[ROWS][COLS] = { {1,0,0}, {1,0,0}, {1,0,0} }; int C[ROWS][COLS]; int r,c,n; //두개의 행렬을 곱한다. for(c = 0; c < COLS; c++) { for(r = 0; r < ROWS ; r++) { C[r].. 더보기
[C언어] 저금총액 계산 - 전역 변수, 정적 지역 변수, 지역 변수만으로 구현 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 #include int total_amount; int save(int amount) { total_amount=total_amount + amount; return total_amount; } main() { int amount; for(;;) { printf("얼마를 저축하시겠습니까(종료는 -1) :"); scanf("%d",&amount); if(amount != -1) printf("지금까지 총저축액은 %d입니다.\n",save(amount)); else { printf("종료\n"); break; } } } 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1.. 더보기
[C언어] 사용자 정의 함수로 피보나치 수열 짜기 사용자 정의 함수로 피보나치 수열 짜기 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 #include int fib_iter(int n); main() { int a; for(a=1;a 더보기
[C언어] 년도, 달을 입력 받아 일수 출력하기(윤년 계산) switch문 이용하여 년도, 달을 입력 받아 일수 출력하기(윤년 계산) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 #include main() { int month, days, year; printf("년도를 입력하세요 : "); scanf("%d",&year); printf("달을 입력하세요 : "); scanf("%d",&month); if(1 더보기
[C언어] 변수형 문자열을 이용하여 소문자와 대문자를 바꾸기 1. 변수형 문자열을 이용하여 소문자를 대문자로 바꾸기 1 2 3 4 5 6 7 8 9 10 11 #include main() { char ich, uch; printf("소문자를 입력하세요"); scanf("%c", &ich); uch = ich - ('a' - 'A'); printf("입력한 소문자 %c의 대문자는 %c입니다.",ich, uch); return 0; } 2. 변수형 문자열을 이용하여 대문자를 소문자로 바꾸기 1 2 3 4 5 6 7 8 9 10 11 #include main() { char ich, uch; printf("대문자를 입력하세요"); scanf("%c", &ich); uch = ich - ('A' - 'a'); printf("입력한 대문자 %c의 소문자는 %c입니다.",i.. 더보기
[C언어] 기초 예제 11 - 사용자 정의 함수를 이용하여 구구단 짜기 제목이 곧 내용. 생각보다 쉬워요. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 #include void main() { int i; for(i = 2; i 더보기
[C언어] 기초 예제 10 - 최소공배수와 약수의 총합 구하기 A, B, C 세 수의 최소공배수를 구하고 그 수의 약수의 총합을 구하세요. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 #include int lcm(int p, int q, int r) { int L,LCMnumber; for(L = 1; L = 1; g--) { if(lcm%g == 0) { printf("%d는 %d의 약수입니다.\n", g, lcm); sum = sum+g; } else printf(""); } printf("약수의 총합은 %d입니다.\n",sum); } void mai.. 더보기
[C언어] 기초 예제 9 - 난수 생성 횟수를 "*" 이용하여 막대그래프로 출력 난수를 이용 100개의 수를 생성(1~100) 후 각 해당하는 수가 몇 번 출력됐는지 *를 이용하여 그래프 표현하기 . 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 #include #include #include void main() { int a[100],i,j,x; srand(time(NULL)); rand()%100+1; x=rand()%100+1; for(i=1;i 더보기