본문 바로가기

전체 글

(29)
C 자판기만들기 #include int main(void){ int money; int getice; int iceprice[4]={1200,1500,1600,1800}; int iceinv[4]={5,5,5,5}; int choice; int invchoice; int invnumber; int changemoney=10000; int putchangemoney; int i; int a=1; while(a!=0){ printf("------------메뉴------------\n"); printf("1. 구입 2. 물건재고추가 3.잔돈추가\n"); printf("----------------------------\n"); scanf("%d", &choice); if(choice==2) { //물건넣기 printf("재..
C 가위바위보 배열 포인터 전역함수를 배열포인터로 바꿈 문자받는 함수를 배열포인터를 사용하여 만들어봄 #include #include #include //문자 받기 void getcha(char *get){ int i; printf("rock, papper, scissors를 입력하세요 : "); scanf("%s", &*get); } //문자 확인하기 int check(){ int b; int i; char a[8]={}; getcha(a); //문자확인 while(1){ if(a[0]=='r'||a[0]=='p'||a[0]=='s'){ if(a[1]=='o'||a[1]=='a'||a[1]=='c'){ if(a[2]=='c'||a[2]=='p'||a[2]=='i'){ if(a[3]=='k'){ b=2; break; } else ..
C 가위바위보 전역변수 문자받는 배열로 전역변수로 선언하여 문자받는 함수를 따로 생성 #include #include #include //문자 받는 배열 전역변수로 선언 char a[8]; void getcha(){ int i; printf("rock, papper, scissors를 입력하세요 : "); scanf("%s", a); } //문자 확인하기 int check(){ int b; int i; getcha(); //문자확인 while(1){ if(a[0]=='r'||a[0]=='p'||a[0]=='s'){ if(a[1]=='o'||a[1]=='a'||a[1]=='c'){ if(a[2]=='c'||a[2]=='p'||a[2]=='i'){ if(a[3]=='k'){ b=2; break; } else if(a[3]=='p'..
Maria DB Transaction 트랜젝션 #commit : 영구적으로 데이터베이스에 저장한다. #rollback : 데이터베이스가 저장되기전으로 돌아간다. #savepoint : 변수 롤백할 수 있는 지점을 정할 수 있다. START TRANSACTION; #트랜젝션 시작 INSERT INTO usertbl VALUES('xxx', 'xxx', 1998, '경기', '010', '66667777', 156, '2022-08-20'); #SAVEPOINT 변수; SAVEPOINT a; INSERT INTO usertbl VALUES('zzz', 'zzz', 1998, '경기', '010', '66667777', 156, '2022-08-20'); SAVEPOINT b; DELETE FROM usertbl WHERE userID='Hdd'; SEL..
Maria DB TRIGGER #트리거 #연달아 사용할때 사용한다. #사용할 테이블 생성 CREATE TABLE testTBL( id INT , txt CHAR(10) ); #값입력 INSERT INTO testtbl VALUES (1, 'aaaa'), (2, 'bbbb'), (3, 'cccc'); #트리거 생성 DELIMITER // CREATE TRIGGER 트리거이름 (AFTER, BEFORE) #조건 ON 테이블이름 #testtbl테이블에서 FOR EACH ROW #각행마다 실행시켜라 BEGIN #트리거 실행 시 작동되는 코드 END // DELIMITER ; #예제 DELIMITER // CREATE TRIGGER testTrg AFTER DELETE ON testtbl FOR EACH ROW BEGIN SET @msg= '..
Maria DB SQL PROCRDURE 프로시저 #프로시저 #쿼리문의 집합.. 일괄처리용 DELIMITER (원하는 문자입력) #끝낼 시점 입력 CREATE PROCEDURE 프로시저이름() BEGIN 쿼리문 입력 END (위에 입력한 문자입력) DELIMITER ; DELIMITER $$ CREATE PROCEDURE userProc() BEGIN SELECT * FROM student; END $$ DELIMITER ; #프로시저 출력 #CALL 프로시저 이름 CALL userProc(); #매개변수가 있는 프로시저 DELIMITER $$ CREATE PROCEDURE stuProc1(IN stuName VARCHAR(20)) BEGIN SELECT * FROM student WHERE stu_name=stuName; END $$ DELIMITER..
C 배열 포인터 개념 int f(int *x){ //매개변수 x는 주소를 저장하는 변수 //tmp는 숫자를 저장. //int *x=3; printf("%p\n", (x+1)); //%p는 주소값 표 현. printf("%d", *(x+1)); return x; //배열의 이름은 주소다 별을 붙일 필요가 없음 } int main(){ //참조변수 : 배열의 주소를 저장하고 있 음. int a[3]={1, 2, 3}; f(a); }
C 포인터 개념 x, y 값바꾸기 #include void swap(int *x, int *y){//주소를 저장하는걸 표시해줌 //tmp는 숫자를 저장. int tmp; //원래 x는 주소를 가르키지만 *을 하나 더 붙여서 값을 가르킴. tmp=*x; *x=*y; *y=tmp; } int main(){ int n1 =10; int n2 = 200; //swap함수에게 n1, n2 주소를 보낸다 //&n1, &n2 &는 주소를 저장하는 곳으로 바뀐다 swap(&n1, &n2); printf("%d %d\n", n1, n2); }