레이블이 Programing인 게시물을 표시합니다. 모든 게시물 표시
레이블이 Programing인 게시물을 표시합니다. 모든 게시물 표시

2018년 1월 8일 월요일

[ PHP] 게시판

mysql

DB생성
create database comdoctor;

회원 테이블 생성
create table user(email varchar(50), pass varchar(100), nick varchar(20), primary key(email) )Engine='InnoDB' default charset='utf8';

create table membership(email varchar(50) not null, grade int unsigned, rank int unsigned, point int unsigned, primary key(email) )Engine='InnoDB' default charset='utf8';

insert into user values('sangoochoi@gmail.com','111111','Comdoctor');
insert into membership values('sangoochoi@gmail.com',1,0,9999);


================================================
php source

[C] 버블정렬

/*버블정렬*/
void smp_ahl_bubblesort()
{
int n_arr[ARR_MAX]={10,50,1,3,100,90,78,12,22,34,56,11,51,2,8,101,91,79,13,23,35,57};
int n_count = sizeof(n_arr)/4;
int n_mid = n_count/2;
int i, j, tmp;

for(i=0; i<n_mid; i++)
{
for(j=1; j<n_count-i; j++)
{
if(n_arr[j-1] > n_arr[j])
{
tmp = n_arr[j];
n_arr[j] = n_arr[j-1];
n_arr[j-1] = tmp;
}
}
}

for(i=0; i<ARR_MAX; i++)
{
printf("%d\n",n_arr[i]);
}
}

2018년 1월 3일 수요일

[C] 이중연결리스트

test.c

#include "comdr.h"
#include "list.h"
#include <stdio.h>

#define ARR_MAX 22

int main(int argc, char **argv)
{
LinkedList* list = list_createList();

list_insertBack(list, 1);
list_insertBack(list, 2);
list_insertBack(list, 3);
list_insertBack(list, 4);
list_insertBack(list, 5);
list_insertBack(list, 6);
list_insertBack(list, 7);

list_printAll(list);


return 0;
}


list.h

#pragma once
#include "comdr.h"

//===== struct =====
typedef struct _Node Node;
struct _Node
{
Node *next;
Node *prev;
#ifdef TEST
int data;
#else
void* data;
#endif
};

typedef struct
{
Node *head;
Node *tail;
int count;
}LinkedList, *LPLinkedList;

//===== function =====
LPLinkedList
list_createList();

BOOL
list_deleteList(LPLinkedList plist);



#ifdef TEST
Node*
list_newNode(int data);

void
list_insertBack(LPLinkedList plist, int data);

void
list_insertPront(LPLinkedList plist, int data);
#else
Node*
list_newNode(void* data);

void
list_insertBack(LPLinkedList plist, void* data);

void
list_insertPront(LPLinkedList plist, void* data);
#endif

void list_printAll(LPLinkedList plist);


list.c

#include "list.h"
#include <stdio.h>
#include <stdlib.h>

#ifdef TEST
void list_insertBack(LPLinkedList plist, int data)
{
Node* newNode = list_newNode(data);
if(plist->count == 0)
{
plist->head = newNode;
plist->tail = plist->head;
}
else
{
newNode->prev = plist->tail;
plist->tail->next = newNode;
plist->tail = newNode;
}
plist->count++;
}

void list_printAll(LPLinkedList plist)
{
Node* cur = plist->head;
while(cur)
{
printf("%d ",cur->data);
cur = cur->next;
}
}

Node* list_newNode(int data)
{
Node* node = (Node*)malloc(sizeof(Node));
node->next = null;
node->prev = null;
node->data = data;
return node;
}
#endif


LPLinkedList list_createList()
{
LPLinkedList list = (LPLinkedList)malloc(sizeof(LPLinkedList));
list->head = null;
list->tail = null;
list->count = 0;
return list;
}

BOOL list_deleteList(LPLinkedList plist)
{
if(!plist)
return FALSE;
else
{
if(plist->tail == plist->head)
free(plist);
else
{
Node* cur = plist->tail;
Node* tmp = null;
while(!cur->prev)
{
tmp = cur;
cur = cur->prev;
free(tmp);
}
}
}
}


comdr.h

#pragma once

#define TEST
#define NOT_INCLUDE_WINDOWS_H

#ifdef NOT_INCLUDE_WINDOWS_H
#define FALSE 0
#define TRUE 1
typedef int BOOL;
#endif

typedef unsigned int uint;
typedef unsigned char byte;

#define null 0

2017년 6월 25일 일요일

[C] 파일 입출력 - 특정 문자 발견 시 처리 루틴

#include <stdio.h>
#include <string.h>
#include <stdlib.h>

int main(int argc, char** argv)
{
    FILE *pFile = NULL;
    FILE *pNewFile = NULL;

    pFile = fopen(argv[1], "rb" );
    if( pFile != NULL )
    {
        char szNewFile[255]="new_";
        char szTmp=0;
        strcat(szNewFile,argv[1]);
        pNewFile = fopen("new_web5prob.txt","wb");

        if(pNewFile == NULL){
                printf("2. is not file..!");
        }
        else
       {
             while( !feof( pFile ) )
            {
                szTmp = fgetc(pFile);
                putc((char)szTmp, pNewFile);
                if(szTmp == ';')    //특정 문자
                    fputs("\n", pNewFile);
             }
             fclose( pFile );
        }
    }
    else{
        printf("1. is not file..!");
    }

    return 0;
}