Computer & Program 113

각종 자료형의 Sizeof 결과

요즘 제가 본의아니게 임베이디드 수업을 듣고 있는데 예전에는 1byte를 저장하는데도 char형이 아닌 그냥 int형으로 저장하곤 했는데 여기서는 그게 안통했습니다. 정확히 말하면 안 통한다기 보다는 그러니까 연산을 하는데 Error도 많고 너무나 비효율적이더군요... 무엇보다 borad 자체의 저장 공간이 그렇게 크지 않기 때문에 space complexity를 최대한 고려해서 작성을 해야 했습니다. 그래서 나중에 제가 볼려고 각종 자료 타입에 대한 sizeof와 각 크기에 따른 환산표를 준비했습니다. 참고로 대충 통일 됐다고는 하나 아직까지는 컴파일러에 따라 크기가 다 다르기 때문에 그점 감안 하시고 봐주셨으면 합니다. 아, 아래 컴파일러는 Macrosort Visuall studio 2008입니다...

날짜 계산 프로그램

// 날짜 계산하는 프로그램 #include void main() { int data[2][3]; long sum[2], result; int i; char name[20]; printf("입력 ]\n = Today =\n"); printf("년 ? "); scanf("%d", &data[0][0]); // 오늘의 년 printf("월 ? "); scanf("%d", &data[0][1]); // 오늘의 월 printf("일 ? "); scanf("%d", &data[0][2]); // 오늘의 일 printf("\n = Brithday =\n"); printf("이름 ? "); scanf("%s", name); // 이름 printf("년 ? "); scanf("%d", &data[1][0]); // 태..

색 코드표~

000000 black 검정 2f4f4f darkslategray 어두운푸른빛회색 708090 slategray 푸른빛회색 778899 lightslategray 밝은푸른빛회색 696969 dimgray 칙칙한회색 808080 gray 회색 a9a9a9 darkgray 어두운회색 c0c0c0 silver 은색 d3d3d3 lightgrey 밝은회색 dcdcdc gainsboro ffffff white 백색 fff5ee seashell 바다조가비 fffafa snow 설백 f8f8ff ghostwhite 허깨비백색 fffaf0 floralwhite 꽃의백색 f5f5f5 whitesmoke 백색연기 f0f8ff aliceblue 엷은잿빛바탕에푸른빛 f0ffff azure 하늘색 fdf5e6 oldlace 낡..

과제29 : 숫자와 연산자 입력받아 출력

#include void main() { int num1, num2; char k; printf("입력]\n"); //첫번째 숫자 입력 받음 while(1) { printf("Num1 ? "); scanf("%d", &num1); fflush(stdin); if(num1 < 0) printf("input error, retry\n"); else break; } //계산식 입력 받음 while(1) { printf("Op ? "); scanf("%c", &k); fflush(stdin); if(k == '+' || k == '-' || k == '*' || k == '/') break; else printf("input error, retry\n"); } //두번째 숫자 입력 받음 while(1) { pr..

#define, 매크로 사용 예

// 첫번쨰 예제 #include #define PI 3.14 #define MAX(x,y) (x>y) ? x : y //macro 함수와 상수는 복사의 의미를 가지고 있다. void main() { int a=123, b=456; printf("PI=%lf\n", PI); printf("The Max is %d\n", MAX(a,b)); } // 두번째 예제 #include #define SWAP(x,y) {int t; t=x; x=y; y=t;} // x와 y를 바꿔주는 함수. void main() { int a=5, b=10; printf("a=%d\tb=%d\n", a, b); SWAP(a,b); printf("a=%d\tb=%d\n", a, b); } // 세번째 예제 #define SQU(x)..

구조체, 공용체 종류 및 예

//단순 구조체 #include struct score{ char name[20]; int kor, eng, mat; }; typedef struct score Score; void structPrint(char*, int, int, int); void main() { Score sd = {"Hong gil dong", 80, 90, 100}; structPrint(sd.name, sd.kor, sd.eng, sd.mat); } void structPrint(char *cp, int i, int k, int j) { printf("%s : %d, %d, %d\n", cp, i, k, j); } // 중첩 구조체 #include struct AA{ int a; long b; }; struct BB{ int..

문자열 출력 예

// 첫번째 예제 #include void main() { FILE *fp; char ch; fp = fopen("c:\\sample.txt", "r"); // sample.txt로 부터 Read(r) while(1){ ch=fgetc(fp); if(ch==EOF) // 문장의 끝까지 break; printf("%c", ch); } fclose(fp); } // 두번때 예제 #include //문자열로 출력 void main() { FILE *fp; char ch[100]; // 여유있게 100byte읽어 옮 fp = fopen("c:\\sample.txt", "r"); while(1){ fgets(ch, 100, fp); // fp에서 100byte만큼 읽어서 ch에 저장

이름과 숫자 1~4까지의 답 10개를 입력 받아 O,X 표시 및 평균 및 최고득점자와 최소 득점자 출력하는 로직

// 이름과 숫자 1~4까지의 답 10개를 입력 받아 O,X 표시 및 평균 및 최고득점자와 최소 득점자 출력하는 로직 #include #include #include #define Read "c:\\saram.txt" // 데이터가 저장되어 있는 파일 #define Wirt "c:\\result.txt" // 결과값을 저장할 파일 int max=0, min=100; // max는 커져야 함을 0이고 min은 작아져야 함으로 100이다. double avg=0; struct AA // 사람 이름과 답을 저장해 놓은 구조체 { char name[10]; char num[11]; }; void result(char *); // 데이터를 받아 계산한 후 result.txt로 저장하는 함수 void menu(ch..

이름과 점수를 입력받아 관리하는 프로그램

#include #include #include #define DataFile "c:\\data.txt" void menu(); void input_sub(); void append_sub(); void search_sub(); void view_sub(); struct AA{ char name[20]; // 이름 저장할 배열 int kor, eng, tot; // 국어, 영어, 총점 double avg; // 평균 }; void main() { char ch; while(1){ menu(); ch = getche(); // 문자하나를 받아 ch에 저장 switch(ch){ case '1' : input_sub(); break; case '2' : append_sub(); break; case '3' :..

KMP 알고리즘...

#include #include #include #include using namespace std; class KMP { private : char array[200], pat[10]; // array는 비교할 문자열, pat는 찾을 문자열 int temp; // 비교할 문자의 실패함수의 현재 값 int f_pat[10]; int i, k; // 함수 제어의 필요한 함수 int n, l; // n은 찾을 문자열의 길이 l은 비교할 문자열의 길이 public : KMP() { temp=-1, i=0, k=0; for(i=0; i input(); } void KMP::makefaile() { int val=0, p=0; // val은 실패함수에 들어갈 값이고 p는 함수 제어 변수이다. int j=1, i;..

반응형