= 곽길문 = ë³µìŠµê³¼ì œ 1.0ê³¼ 1000 사ì´ì˜ ì •ìˆ˜ë¥¼ ìž…ë ¥ë°›ì•„ ëª¨ë“ ìžë¦¿ìˆ˜ë¥¼ ë”하여 ì¶œë ¥í•˜ëŠ” í”„ë¡œê·¸ëž¨ì„ ì§œ 주세요. #include<stdio.h> int main() { int num =0; int sum =0; printf("0ê³¼ 1000사ì´ì˜ ì •ìˆ˜ë¥¼ ìž…ë ¥ :\n"); scanf("%d", &num); do { sum += num %10; num/=10; }while(!(num == 0)); printf("ê° ìžë¦¬ìˆ˜ë“¤ì˜ í•© : %d \n",sum); return 0; } 2.소문ìžë¥¼ 대문ìžë¡œ 바꾸는 í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ 주세요. #include <stdio.h> int main() { char replace; printf("ì†Œë¬¸ìž : "); scanf("%c",&replace); if( 97 <= replace && replace <= 129){ printf("대문ìžëŠ” :%c\n", replace-32); }else if( 65 <=replace && replace <= 90){ printf("대문ìžëŠ” :%c\n", replace+32); } return 0; } 3.ë‹¤ìŒ ëª¨ì–‘ì„ ì¶œë ¥í•˜ëŠ” í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ 주세요. í•œìžë¦¬ 숫ìžì´ë‹¤ê°€ 2ìžë¦¬ 숫ìžì´ë©´ì„œ 깨지는 ê²ƒì€ ì˜ˆì™¸ì²˜ë¦¬í•´ì£¼ì…”ë„ ë˜ê³ 하지 ì•Šìœ¼ì…”ë„ ë©ë‹ˆë‹¤. ë°©ë²•ì€ if(10>x) printf(" ");입니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 #include<stdio.h> int main() { int i,j; int num=1; for(i=0;i<5;i++){ for(j=0;j<=i;j++){ printf("%d",num); printf(" "); num+=1; } printf("\n"); } return 0; } 4.ë‹¤ìŒ ëª¨ì–‘ì„ ì¶œë ¥í•˜ëŠ” í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ 주세요. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 #include<stdio.h>// ìžë¦¬ 못 ë§žì¶”ê² ìŒ.. int main(void) { int a; int b; int num = 1; for(a=1;a<6;a++){ for(b=6;b>a;b--){ printf(" "); } for(b=1;b<=a;b++){ printf("%d",num); num+=1; } printf("\n"); } } 5.위 ë‘ í”„ë¡œê·¸ëž¨ì„ ì¼ë°˜í™” 시켜 ìž…ë ¥ë°›ì€ ìˆ«ìžë§Œí¼ ì¶œë ¥í•´ì£¼ëŠ” í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ì£¼ì„¸ìš”.(위 í”„ë¡œê·¸ëž¨ì€ 21ì„ ìž…ë ¥) //1.3.6.10 ìˆ˜ì—´ì´ ê·œì¹™ì„ ì°¾ì•„ì„œ í–‰ì„ ë§Œë“¤ì–´ ì£¼ë ¤ê³ í•œë‹¤â€¦ 코딩 ìƒê° í•˜ëŠ”ë° ì‹œê°„ì´ ì„¸ì‹œê°„ 초과.. 그래서 6ì„ ìž…ë ¥í•˜ë©´ í–‰ì´ 6ì´ ë˜ëŠ” 삼ê°í˜• 만듬.. #include<stdio.h> int main() { int i,j; int num=1; int a; int k=0; printf("ì •ìˆ˜ ìž…ë ¥:"); scanf("%d",&a); //규칙 for(i=0;i<a;i++){ for(j=0;j<=i;j++){ printf("%d",num); printf(" "); num+=1; } printf("\n"); } return 0; } 6.위 프로그램처럼 숫ìžë¥¼ 순서대로 ì¶œë ¥í•˜ëŠ” í”„ë¡œê·¸ëž¨ì„ í”¼ë¼ë¯¸ë“œ 형태로 작성해 주세요. // 숫ìžë¡œ ëª»í•˜ê² ì–´ì„œ 별로 만들어 봤어요. #include<stdio.h> int main() { int i; int star; int blank; int scan; printf("행수 ìž…ë ¥:"); scanf("%d",&scan); for(i=1;i<=scan;i++) { for(blank=scan; blank>i;blank--) printf(" "); for(star=1;star<=2*i-1;star++) printf("*"); printf("\n"); } } 7.위 프로그램처럼 숫ìžë¥¼ 순서대로 ì¶œë ¥í•˜ëŠ” í”„ë¡œê·¸ëž¨ì„ ë‹¤ì´ì•„몬드 형태로 작성해 주세요. // *ë¡œ 해봤어요.. #include<stdio.h> int diamond(int a); int main() { int i; printf("행수 ìž…ë ¥-홀수: "); scanf("%d",&i); diamond(i); return 0; } int diamond(int a) { int i,j; for(i=0;i<=a/2;i++){ for(j=a/2;j>i;j--){ printf(" "); } for(j=0;j<=i;j++){ printf("*"); } for(j=0;j<i;j++){ printf("*"); } printf("\n"); } for(i=0;i<a/2;i++){ for(j=0;j<=i;j++){ printf(" "); } for(j=a/2;j>i;j--){ printf("*"); } for(j=a/2;j>i+1;j--){ printf("*"); } printf("\n"); } return i,j; } 8.아래 í”„ë¡œê·¸ëž¨ì„ ì°¸ê³ í•˜ì—¬ 60ì ì´í•˜ëŠ” F, 61~70ì D, 71~80 C, 81~90 B, 90~ Aì¸ í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ì£¼ì„¸ìš”. #include <stdio.h> int main(){ int num; printf("성ì ìž…ë ¥ : "); scanf("%d", &num); switch(num/10){ case 10 : case 9 : printf("A\n"); break; case 8 : printf("B\n"); break; case 7 : printf("C\n"); break; case 6: printf("D\n"); break; default : printf("F\n"); break; } } 9.101부터200ê¹Œì§€ì˜ ëª¨ë“ ì •ìˆ˜ë¥¼ ë”í•´ì„œ 반환하는 '함수'를 작성해주세요.(main문ì—는 sum=Sum(); printf("%d",sum);ì´ ìžˆë„ë¡í•´ì£¼ì„¸ìš”) #include<stdio.h> int Sum(int x); int main() { int su; int sum; sum=Sum(su); printf("101부터 200ê¹Œì§€ì˜ í•©: %d\n",sum); return 0; } int Sum(int x) { int sum=0; for(x=100;x<201;x++) sum+=x; return x,sum; } 10.재귀함수를 ì´ìš©í•´ n!ì„ ì¶œë ¥í•˜ëŠ” í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ 주세요. #include<stdio.h> int factorial(int x); int main() { int n; printf("수 ìž…ë ¥:"); scanf("%d",&n); factorial(n); printf("%d! = %d\n",n,factorial(n)); return 0; } int factorial(int x){ if(x==1) return 1; else return x*factorial(x-1); } 11.n!ì„ ì¶œë ¥í•˜ëŠ” í”„ë¡œê·¸ëž¨ì„ for문으로 작성해주세요. #include<stdio.h> int main() { int j; int a; int factorial=1; printf("factorial,input number:"); scanf("%d",&a); if(a==1) return 1; for(j=1;j<=a;j++){ factorial *=j; } printf("%d\n",factorial); return 0; } 12.재귀함수를 ì´ìš©í•´ 1부터10까지를 ë”하는 í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ 주세요. #include<stdio.h> int self(int x); int main(){ int result; int a; result =self(a);// 재귀 함수 printf("%d\n",result); return 0; } int self(int x){ int sum=0; for(x=1;x<11;x++){ sum=x+sum; } return x,sum; } 13.ë°°ì—´ì— {7,4,2,9,3,1,2}ê°€ 들어있습니다. ì´ ë°°ì—´ì—ì„œ 3ì´ ìžˆëŠ”ì§€ 없는지를 찾아서 ì¶œë ¥í•´ì£¼ëŠ” í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ì£¼ì„¸ìš”. #include<stdio.h> int main() { int a[7]= {7,4,2,9,3,1,2}; int i=0; for(i=0;i<7;i++){ if(a[i]==3) printf("3ì´ ìžˆìŠµë‹ˆë‹¤."); } return 0; } 14.ë°°ì—´ì— {7,4,2,9,3,1,2}ê°€ 들어있습니다. ì´ ë°°ì—´ì—ì„œ 1ì´ ëª‡ë²ˆì§¸ì— ìžˆëŠ”ì§€ë¥¼ 찾아서 ì¶œë ¥í•´ì£¼ëŠ” í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ì£¼ì„¸ìš”. (단, 7ì€ ì²«ë²ˆì§¸ìž…ë‹ˆë‹¤) #include<stdio.h> int main() { int a[7]= {7,4,2,9,3,1,2}; int i=0; int count=0; for(i=0;i<7;i++){ count+=1; if(a[i]==1){ printf("1ì´ %dë²ˆì§¸ì— ìžˆìŠµë‹ˆë‹¤.", count); } } } 15.ë°°ì—´ì— {7,4,2,9,3,1,2}ê°€ 들어있습니다. ì´ ë°°ì—´ì—ì„œ 2ê°€ 있는지 없는지를 ê²€ì‚¬í•˜ê³ , 있다면 ì–´ë””ì— ìžˆëŠ”ì§€ ì „ë¶€ ì¶œë ¥í•´ì£¼ëŠ” í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ì£¼ì„¸ìš”. // 몇번째 있는지는 ifë¬¸ì´ ë‘ ë²ˆëŒì•„ì„œ 3번째 7번째 뜨는ë°.. í•œë²ˆì— ì¶œë ¥í•˜ëŠ” 거는 잘 ëª»í•˜ê² ì–´ìš”â€¦ #include<stdio.h> int main() { int a[7]= {7,4,2,9,3,1,2}; int i=0; int count=0; for(i=0;i<7;i++){ count+=1; if(a[i]==2){ printf("2ê°€ %dë²ˆì§¸ì— ìžˆìŠµë‹ˆë‹¤.\n", count); } } } 16.ë°°ì—´ì— {7,4,2,9,3,1,2}ê°€ 들어있습니다. ì´ ë°°ì—´ì„ ì •ë ¬(오름차순으로)í•˜ê³ , ì¶œë ¥í•˜ëŠ” í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ì£¼ì„¸ìš”. #include<stdio.h> void sort(int a[], int n); void main() { int list[7]={7,4,2,9,3,1,2}; int n=sizeof(list)/sizeof(int); int i; sort(list,n); for(i=0;i<7;i++) printf("%d\n",list[i]); } void sort(int a[], int n) { int i,j,temp; for(i=0;i<n-1;i++){ for(j=i+1;j<n;j++){ if(a[i]>a[j]){ temp=a[i]; a[i]=a[j]; a[j]=temp; } } } } â€¢ì˜ˆìŠµê³¼ì œ 1.2ì°¨ì› ë°°ì—´ì´ ë¬´ì—‡ì¸ì§€ ì“°ê³ , 어떻게 ì„ ì–¸í•˜ëŠ”ì§€ë„ ìž‘ì„±í•œ ë’¤, ì´ë¥¼ ì´ìš©í•œ 간단한 í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ì£¼ì„¸ìš”. -ë™ì¼í•œ ë°ì´í„°í˜•ì˜ ë§Žì€ ë³€ìˆ˜ë¥¼ 처리하기 위한 단수 변수를 사용하면 변수ì´ë¦„ì„ ê°ê° 다른 ì´ë¦„으로 사용해야하기 ë•Œë¬¸ì— ë§Žì€ ë¶ˆíŽ¸ì´ ë”°ë¥¸ë‹¤. ì´ëŸ¬í•œ ë¶ˆíŽ¸í•¨ì„ ëœê¸° 위하여 ê°™ì€ ë°ì´í„°í˜•ì¸ ì¼ë ¨ì˜ 기억장소를 표현한 변수를 '배열변수'ë¼ í•œë‹¤. 즉 ë°°ì—´ì„ ì´ìš©í•˜ë©´ ì—¬ëŸ¬ê°œì˜ ë³€ìˆ˜ë¥¼ 간단히 í‘œí˜„í• ìˆ˜ê°€ 있다. 2ì°¨ì› ë°°ì—´ì€ 'ë°ì´í„°í˜•,배열명,ê·¸ë¦¬ê³ [í–‰]ê³¼[ì—´]'ì„ ë‚˜íƒ€ë‚´ì–´ 표현한다. 1ì°¨ì› ë°°ì—´ì€ ë°°ì—´ ìš”ì†Œì˜ í¬ê¸°ì™€ ë°ì´í„°í˜•ì´ ë™ì¼í•œ 기억장소를 1ê°œì˜ ì°¨ì›ìœ¼ë¡œ ì„ ì–¸í•˜ì˜€ë‹¤ê³ ë§í•˜ë©´ 2ì°¨ì› ë°°ì—´ì€ 2ì°¨ì›ìœ¼ë¡œ ì„ ì–¸(행과열)í•œ 것ì´ë‹¤. #include<stdio.h> int main() { static int x[2][3]; //2í–‰ 3ì—´ì˜ 2ì°¨ì› ë°°ì—´ì„ ì–¸ int j,k,sum; x[0][0] = 1; x[0][1] = 2; x[0][2] = 3; x[1][0] = 4; x[1][1] = 5; x[1][2] = 6; sum=0; for(j=0;j<2;j++) //í–‰ for(k=0;k<3;k++) // ì—´ sum=sum+x[j][k]; printf("2ì°¨ì› ë°°ì—´ì˜ í•©=%d\n",sum); } 2.srand()함수가 무엇ì¸ì§€ ì°¾ì•„ì“°ê³ , time()ì„ ì´ìš©í•´ ëžœë¤ìœ¼ë¡œ 숫ìžë¥¼ 하나 ì¶œë ¥í•˜ëŠ” í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ì£¼ì„¸ìš”. - 난수(random number)를 ìƒì„±í• ë•Œ stdlib.hí—¤ë”파ì¼ì„ ì½”ë“œì— í¬í•¨ì‹œí‚¤ê³ srand()를 사용한다.rand()함수는 매번 ê·¸ ê°’ì´ ê°™ì€ ë°˜ë©´ì— ë§¤ì‹¤í–‰ë•Œë§ˆë‹¤ 난수를 다르게 ìƒì„±í•˜ê¸° 위해서 srand()를 사용한다. srandì—ì‹œ stdlib.hì— í¬í•¨ë˜ì–´ 있다. srand는 ì‹œë“œê°’ì„ ì£¼ì–´ 사용하는 것ì´ê³ ê·¸ 시드값으로부터 íŠ¹ì •í•œ 법칙으로 난수를 ìƒì„±í•˜ëŠ” 것ì´ë‹¤.ë”°ë¼ì„œ 매번 다른 난수를 ì–»ìœ¼ë ¤ë©´ ì‹œë“œê°’ì„ ê³„ì† ë°”ê¾¸ì–´ì£¼ì–´ì•¼ 한다. ì´ëŸ¬í•œ ì½”ë“œê°œì„ ì„ ìœ„í•´ì„œ time()함수를 사용해야 한다. ì´ í•¨ìˆ˜ë¥¼ 사용하기 위해 time.h í—¤ë” íŒŒì¼ì„ ì½”ë“œì— í¬í•¨ì‹œì¼œì•¼ 한다. ë˜í•œ time함수는 1970ë…„ 1ì›” 1ì¼ ì´í›„ ê²½ê³¼ëœ ì‹œê°„ì„ ì´ˆ 단위로 반환하는 함수 ì´ë‹¤. #include<stdio.h> #include<stdlib.h> #include<time.h> int main() { int a=0; printf("rand()함수를 사용,1ê°œì˜ random number 나타내기 \n"); srand(time(NULL)); //시드값 = 시간 printf("%d\n",rand()); return 0; } 3.í¬ì¸í„°ê°€ 무엇ì¸ì§€ ì“°ê³ , í¬ì¸í„°ë¥¼ ì„ ì–¸í•˜ëŠ” ë°©ë²•ì„ ì“°ì„¸ìš”. -í¬ì¸í„°ëŠ” ê¸°ì–µìž¥ì†Œì— ìžˆëŠ” ì–´ë–¤ ë³€ìˆ˜ì˜ ì£¼ì†Œë¥¼ ë§í•œë‹¤. 즉, 다른 기억장소 ìœ„ì¹˜ì˜ ì£¼ì†Œë¥¼ ê°–ê³ ìžˆëŠ” 변수ì´ë‹¤.í¬ì¸í„°ëŠ” ë‘ê°œì˜ ë‹¨ì¼ ì—°ì‚°ìžì¸ &와 *로서 ì •ì˜í•œë‹¤. &ì—°ì‚°ìžëŠ” ì¼ë°˜ì ì¸ ë³€ìˆ˜ ì´ë¦„으로 사용ë˜ê³ ê·¸ ë³€ìˆ˜ì˜ ì£¼ì†Œë¥¼ ì˜ë¯¸í•œë‹¤. 즉 &a는 aì˜ ì£¼ì†Œë¥¼ ì˜ë¯¸í•œë‹¤. *p는 pì•ˆì— ìžˆëŠ” 주소 ìœ„ì¹˜ì˜ ë‚´ìš©ì„ ì˜ë¯¸í•œë‹¤. &는 주소 ì—°ì‚°ìžì´ê³ , *는 ê°„ì ‘ ì—°ì‚°ìžë¡œ í¬ì¸í„°ì„ ì–¸ì„ ì˜ë¯¸í•œë‹¤. ì¼ë°˜ì ì¸ í¬ì¸í„° ì„ ì–¸í˜•ì‹: ë°ì´í„°í˜• *í¬ì¸í„°ë³€ìˆ˜ëª…; ì´ë‹¤. 4.ë°°ì—´ê³¼ í¬ì¸í„°ì˜ 공통ì ê³¼ ì°¨ì´ì ì„ ì°¾ì•„ë³´ê³ , ì¨ë³´ë„ë¡ í•˜ì„¸ìš”. -공통ì ì¸ ë¶€ë¶„ì€ ë°°ì—´ì´ ì²¨ìžì— ì˜í•´ì„œ 행해지는 ì¡°ìž‘ì€ í¬ì¸í„°ë¡œì„œ ëª¨ë‘ í‘œí˜„í• ìˆ˜ 있다는 것ì´ë‹¤. 예를 들어 ì„ ì–¸ë¬¸ ---> int a[3], int *ptr =a; ë°°ì—´ê³¼ ì„ ì–´ë¬¸ ---> a[0] == *ptr a[1] == *(ptr+1) a[2] == *(ptr+2) 위와 ê°™ì€ í‘œí˜„ 가능하다.(í¬ì¸í„°ëª…ì— *ì„ ì‚¬ìš©í•˜ëŠ” ê²ƒì€ ì§€ì‹œí•˜ëŠ” ê³³ì— ì €ìž¥ëœ ê°’ì„ ë‚˜íƒ€ë‚´ëŠ” 것ì´ë‹¤.) ì°¨ì´ì 으로는 í¬ì¸í„°ëŠ” 변수ì¸ë° 비해 ë°°ì—´ì€ ìƒìˆ˜ì´ê³ í¬ì¸í„°ëŠ” ì–¸ì œë“ ì§€ 다른 대ìƒì„ 가리킬수 있지만 ë°°ì—´ì€ ì„ ì–¸ë ë•Œ ê·¸ 위치가 ì´ë¯¸ ê³ ì •ë˜ì–´ 다른 대ìƒì„ 가리킬 수 없다.ë˜í•œ í¬ì¸í„°ëŠ” ë™ì 으로 ê²°ì •í• ìˆ˜ 있지만 ë°°ì—´ì´ ê°€ë¦¬í‚¤ëŠ” ë°°ì—´ì˜ í¬ê¸°ëŠ” ì„ ì–¸í• ë•Œë¶€í„° ì •ì 으로 ê²°ì •ë˜ì–´ìžˆë‹¤. ë°°ì—´ë¡œ []ì—°ì‚°ìžë¥¼ ì´ìš©í•´ ê·¸ ê°’ì„ ì½ëŠ” 것과 í¬ì¸í„° ê°„ì ‘ 참조 연산으로 ê·¸ ê°’ì„ ì½ëŠ” ê²ƒì˜ ì†ë„ ì°¨ì´ê°€ 있다. = ë„ìƒí¬ = ë³µìŠµê³¼ì œ 1. 0ê³¼ 1000 사ì´ì˜ ì •ìˆ˜ë¥¼ ìž…ë ¥ë°›ì•„ ëª¨ë“ ìžë¦¿ìˆ˜ë¥¼ ë”하여 ì¶œë ¥í•˜ëŠ” í”„ë¡œê·¸ëž¨ì„ ì§œ 주세요. /10, %10 ë“±ì„ ì´ìš©í•´ì„œ í•´ 보세요. #include <stdio.h> int main(){ int num; int temp1, temp2, temp3; int sum=0; printf("0-1000사ì´ì˜ 수 ìž…ë ¥: "); scanf("%d", &num); if(num>=0 && num<=1000) { temp1=num/1000; temp2=num%1000; sum=temp1; temp1=temp2/100; temp3=temp2%100; sum+=temp1; temp1=temp3/10; temp2=temp3%10; sum+=temp1; sum+=temp2; printf("%d\n",sum); }else printf("0-1000사ì´ì˜ ìˆ«ìž ì•„ë‹˜\n"); return 0; }//01.c 2. 소문ìžë¥¼ 대문ìžë¡œ 바꾸는 í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ 주세요. #include <stdio.h> int main(){ char al1,al2 ; printf("ìž…ë ¥: "); scanf("%c",&al1); if(al1>='a' && al1<='z') //소문ìžì¼ 경우 al2=al1-32; //아스키코드ì—ì„œ 32빼서 소문ìžë¡œ 변환 else if(al1>'A' && al1<='Z') //대문ìžì¼ 경우 al2=al1+32; //아스키코드ì—ì„œ 32를 ë”í•´ì„œ 대문ìžë¡œ 변환 printf("%c\n",al2); return 0; }//ì¸í„°ë„· 참조했ìŒ! 02.c 3. ë‹¤ìŒ ëª¨ì–‘ì„ ì¶œë ¥í•˜ëŠ” í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ 주세요. í•œìžë¦¬ 숫ìžì´ë‹¤ê°€ 2ìžë¦¬ 숫ìžì´ë©´ì„œ 깨지는 ê²ƒì€ ì˜ˆì™¸ì²˜ë¦¬í•´ì£¼ì…”ë„ ë˜ê³ 하지 ì•Šìœ¼ì…”ë„ ë©ë‹ˆë‹¤. ë°©ë²•ì€ if(10>x) printf(" ");입니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 #include <stdio.h> int main(){ int i, j; int num=1; for(i=1 ; i<=6 ; i++){ for(j=1 ; j<i+1 ; j++){ printf("%3d",num); num+=1; } printf("\n"); } return 0; }//03.c 4. ë‹¤ìŒ ëª¨ì–‘ì„ ì¶œë ¥í•˜ëŠ” í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ 주세요. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 #include <stdio.h> int main(){ int i, j, k; int num=1; for(i=1 ; i<=6 ; i++){ for(j=5 ; j>=i ; j--){ printf(" "); } for(k=1 ; k<i+1 ; k++){ printf("%3d",num); num+=1; } printf("\n"); } return 0; }//04.c 5. 위 ë‘ í”„ë¡œê·¸ëž¨ì„ ì¼ë°˜í™” 시켜 ìž…ë ¥ë°›ì€ ìˆ«ìžë§Œí¼ ì¶œë ¥í•´ì£¼ëŠ” í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ì£¼ì„¸ìš”.(위 í”„ë¡œê·¸ëž¨ì€ 21ì„ ìž…ë ¥) #include <stdio.h> int main(){ int i, j, n; int num=1; scanf("%d",&n); for(i=1 ; ; i++){ for(j=1 ; j<i+1 ; j++){ if(n==num){ printf("%3d",num); printf("\n"); return 0; } printf("%3d",num); num+=1; } printf("\n"); } return 0; }//05.c 6. 위 프로그램처럼 숫ìžë¥¼ 순서대로 ì¶œë ¥í•˜ëŠ” í”„ë¡œê·¸ëž¨ì„ í”¼ë¼ë¯¸ë“œ 형태로 작성해 주세요. #include <stdio.h> int main(){ int i, j, k, n; int num=1; scanf("%d",&n); for(i=0;i<n;i++){ for(j=1 ; j<n-i ;j++){ printf(" "); } for(k=0 ; k<2*i+1 ; k++){ printf("%3d",num); num++; } printf("\n"); } return 0; } 7. 위 프로그램처럼 숫ìžë¥¼ 순서대로 ì¶œë ¥í•˜ëŠ” í”„ë¡œê·¸ëž¨ì„ ë‹¤ì´ì•„몬드 형태로 작성해 주세요. 8.아래 í”„ë¡œê·¸ëž¨ì„ ì°¸ê³ í•˜ì—¬ 60ì ì´í•˜ëŠ” F, 61~70ì D, 71~80 C, 81~90 B, 90~ Aì¸ í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ì£¼ì„¸ìš”. #include <stdio.h> int main(){ int num; printf("성ì ìž…ë ¥ : "); scanf("%d", &num); switch((num-1)/10){ case 9 : printf("A\n"); break; case 8 : printf("B\n"); break; case 7 : printf("C\n"); break; case 6 : printf("D\n"); break; default : printf("F\n"); break; } }//08.c ì¸í„°ë„·ì°¸ì¡°! 9. 101부터 200ê¹Œì§€ì˜ ëª¨ë“ ì •ìˆ˜ë¥¼ ë”í•´ì„œ 반환하는 '함수'를 작성해주세요. (main문ì—는 sum=Sum(); printf("%d",sum);ì´ ìžˆë„ë¡í•´ì£¼ì„¸ìš”) #include <stdio.h> int Sum(void); int main(){ int sum; sum = Sum(); printf("%d\n",sum); return 0; } int Sum(void){ int x=101; int sum=0; for(x=101 ; x<=200 ; x++) sum+=x; return sum; }//09.c 10. 재귀함수를 ì´ìš©í•´ n!ì„ ì¶œë ¥í•˜ëŠ” í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ 주세요. #include <stdio.h> int fac(int); int main(){ int num; printf("ìˆ«ìž ìž…ë ¥ : "); scanf("%d", &num); printf("%d! = %d\n",num, fac(num)); return 0; } int fac(int x){ if(x==1) return 1; else return x*fac(x-1); }//10.c 11. n!ì„ ì¶œë ¥í•˜ëŠ” í”„ë¡œê·¸ëž¨ì„ for문으로 작성해주세요. #include <stdio.h> int main(){ int i, num; int fac=1; printf("ìˆ«ìž ìž…ë ¥ : "); scanf("%d", &num); for(i=1 ; i<=num ; i++){ fac *= i; } printf("%d! = %d\n",num, fac); return 0; }//11.c 12. 재귀함수를 ì´ìš©í•´ 1부터10까지를 ë”하는 í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ 주세요. #include <stdio.h> int sum(int); int main(){ printf("1부터 10까지 í•© : %d\n", sum(10)); return 0; } int sum(int x){ if(x>0) return (x+sum(x-1)); else return 0; } 13. ë°°ì—´ì— {7,4,2,9,3,1,2}ê°€ 들어있습니다. ì´ ë°°ì—´ì—ì„œ 3ì´ ìžˆëŠ”ì§€ 없는지를 찾아서 ì¶œë ¥í•´ì£¼ëŠ” í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ì£¼ì„¸ìš”. #include <stdio.h> int main(){ int arr[] = {7,4,2,9,3,1,2}; int i; int k=0; for(i=0 ; i<7 ; i++){ if(arr[i]==3) k++; } if(k!=0) printf("3 존재\n"); else printf("3 ì—†ìŒ\n"); return 0; }//13.c 14. ë°°ì—´ì— {7,4,2,9,3,1,2}ê°€ 들어있습니다. ì´ ë°°ì—´ì—ì„œ 1ì´ ëª‡ë²ˆì§¸ì— ìžˆëŠ”ì§€ë¥¼ 찾아서 ì¶œë ¥í•´ì£¼ëŠ” í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ì£¼ì„¸ìš”. (단, 7ì€ ì²«ë²ˆì§¸ìž…ë‹ˆë‹¤) #include <stdio.h> int main(){ int arr[]={7,4,2,9,3,1,2}; int i; for(i=0 ; i<7 ; i++){ if(arr[i]==1) printf("%d 번째\n",i+1); } return 0; }//14.c 15. ë°°ì—´ì— {7,4,2,9,3,1,2}ê°€ 들어있습니다. ì´ ë°°ì—´ì—ì„œ 2ê°€ 있는지 없는지를 ê²€ì‚¬í•˜ê³ , 있다면 ì–´ë””ì— ìžˆëŠ”ì§€ ì „ë¶€ ì¶œë ¥í•´ì£¼ëŠ” í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ì£¼ì„¸ìš”. #include <stdio.h> int main(){ int i; int c=0; int arr[]={7,4,2,9,3,1,2}; for(i=0 ; i<7 ; i++){ if(arr[i]==2) c++; } if(c!=0){ printf("2 있ìŒ\n"); for(i=0 ; i<7 ; i++){ if(arr[i]==2) printf("%d번째 존재\n",i+1); } }else printf("2 ì—†ìŒ\n"); return 0; }//15.c 16. ë°°ì—´ì— {7,4,2,9,3,1,2}ê°€ 들어있습니다. ì´ ë°°ì—´ì„ ì •ë ¬(오름차순으로)í•˜ê³ , ì¶œë ¥í•˜ëŠ” í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ì£¼ì„¸ìš”. #include <stdio.h> int main(){ int arr[]={7,4,2,9,3,1,2}; int temp; int i,j; for(i=0 ; i<7 ;i++) printf("%d ",arr[i]); printf("\n"); for(i=0 ; i<6 ; i++){ for(j=i+1 ; j<7 ; j++){ if(arr[i]>=arr[j]){ temp=arr[i]; arr[i]=arr[j]; arr[j]=temp; } } } for(i=0 ; i<7 ;i++) printf("%d ",arr[i]); printf("\n"); return 0; }//16.c ì˜ˆìŠµê³¼ì œ 1. 2ì°¨ì› ë°°ì—´ì´ ë¬´ì—‡ì¸ì§€ ì“°ê³ , 어떻게 ì„ ì–¸í•˜ëŠ”ì§€ë„ ìž‘ì„±í•œ ë’¤, ì´ë¥¼ ì´ìš©í•œ 간단한 í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ì£¼ì„¸ìš”. int arr[i][j]; 길ì´ê°€ iì¸ int형 ë°°ì—´ì„ jê°œ 모아 ë†“ì€ ë°°ì—´. 첫번째 ì¸ë±ìŠ¤ ê°’(i)ì´ ì˜ë¯¸í•˜ëŠ” 바는 세로줄(ì—´)ì˜ ê¸¸ì´ì´ê³ , ë‘번째 ì¸ë±ìŠ¤ ê°’(j)ì´ ì˜ë¯¸í•˜ëŠ” 바는 가로줄(í–‰)ì˜ ê¸¸ì´. #include <stdio.h> int main(){ int arr[3][3] = { {1,2,3}, {4,5,6}, {7,8,9}, }; int i,j; for(i=0 ; i<3 ; i++){ for(j=0 ; j<3 ; j++){ printf("%d ",arr[i][j]); } printf("\n"); } return 0; } 2. srand()함수가 무엇ì¸ì§€ ì°¾ì•„ì“°ê³ , time()ì„ ì´ìš©í•´ ëžœë¤ìœ¼ë¡œ 숫ìžë¥¼ 하나 ì¶œë ¥í•˜ëŠ” í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ì£¼ì„¸ìš”. seedê°’ì„ ìž…ë ¥ë°›ì•„ 난수를 ìƒì„±í•˜ëŠ” 함수. rand()%a+b : a부터 b까지 수 ëžœë¤ ì¶œë ¥ #include <stdio.h> #include <stdlib.h> //rand함수 사용 #include <time.h> //time함수 사용 int main(){ srand(time(NULL)); printf("%d\n",rand()%100+1); //1-100중 하나 ì¶œë ¥ return 0; }//1_02.c 3. í¬ì¸í„°ê°€ 무엇ì¸ì§€ ì“°ê³ , í¬ì¸í„°ë¥¼ ì„ ì–¸í•˜ëŠ” ë°©ë²•ì„ ì“°ì„¸ìš”. í¬ì¸í„°ëž€ ë©”ëª¨ë¦¬ì˜ ì£¼ì†Œ ê°’ì„ ì €ìž¥í•˜ê¸° 위한 변수. íƒ€ìž…ì— ìƒê´€ì—†ì´ í¬ê¸°ëŠ” 4ë°”ì´íŠ¸(컴퓨터 주소 체계가 4ë°”ì´íŠ¸ë¡œ 표현ëœë‹¤ëŠ” ê²ƒì„ ì˜ë¯¸) int *a; //int형 ë³€ìˆ˜ì˜ ì£¼ì†Œ ê°’ì„ ì§€ë‹ ìˆ˜ 있는 int형 í¬ì¸í„°. char *b; // char형 ë³€ìˆ˜ì˜ ì£¼ì†Œ ê°’ì„ ì§€ë‹ ìˆ˜ 있는 char형 í¬ì¸í„°. double *c; // double형 ë³€ìˆ˜ì˜ ì£¼ì†Œ ê°’ì„ ì§€ë‹ ìˆ˜ 있는 double형 í¬ì¸í„°. 4. ë°°ì—´ê³¼ í¬ì¸í„°ì˜ 공통ì ê³¼ ì°¨ì´ì ì„ ì°¾ì•„ë³´ê³ , ì¨ë³´ë„ë¡ í•˜ì„¸ìš”. ë°°ì—´ arrê°€ ì„ ì–¸ë˜ì–´ ìžˆê³ , í¬ì¸í„° pì´ ë°°ì—´ì˜ ì‹œìž‘ì£¼ì†Œë¥¼ ê°€ë¦¬í‚¤ê³ ìžˆë‹¤ë©´! <ë°°ì—´ê³¼ í¬ì¸í„°ì˜ 공통ì > - arr와 pì€ ì£¼ì†Œë¥¼ 나타냄 - arr[i]와 *(p+i)는 ê°™ìŒ - arr[i]와 p[i]는 ê°™ìŒ - *arr í˜¹ì€ *pì´ ê°€ëŠ¥í•¨ - *(arr+i) í˜¹ì€ *(p+i)ê°€ 가능 <ë°°ì—´ê³¼ í¬ì¸í„°ì˜ ì°¨ì´ì > - ë°°ì—´ëª…ì€ ìƒìˆ˜ì´ê³ í¬ì¸í„°ëŠ” 변수 - ë°°ì—´ëª…ì— ì£¼ì†Œë¥¼ ëŒ€ìž…í• ìˆ˜ 없다. - ë°°ì—´ëª…ì— ì¦ê°ì—°ì‚°ìž(array++, array--)를 쓸 수 없다 = í•œì†¡ì´ = ë³µìŠµê³¼ì œ 1. 0ê³¼ 1000 사ì´ì˜ ì •ìˆ˜ë¥¼ ìž…ë ¥ë°›ì•„ ëª¨ë“ ìžë¦¿ìˆ˜ë¥¼ ë”하여 ì¶œë ¥í•˜ëŠ” í”„ë¡œê·¸ëž¨ì„ ì§œ 주세요.(/10, %10 ë“±ì„ ì´ìš©í•´ì„œ í•´ 보세요.) #include <stdio.h> int main() { int num,a,b,c,d; printf("숫ìžë¥¼ ìž…ë ¥í•˜ì„¸ìš” : â€); scanf("%d",&num); if(99<num && num<1000) { a=num/100; b=num%100; c=b/10; d=b%10; printf("%dì˜ ìžë¦¬ìˆ˜ì˜ í•©ì€ %d입니다.\n",num,a+c+d); } else if(num<100) { a=num/10; b=num%10; printf("%dì˜ ìžë¦¬ìˆ˜ì˜ í•©ì€ %d입니다.\n",num,a+b); } } 2. 소문ìžë¥¼ 대문ìžë¡œ 바꾸는 í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ 주세요. #include<stdio.h> #include<string.h> int main() { char in[50],out[50]; int i,len; int diff='a'-'A'; printf("ë¬¸ìž ìž…ë ¥ : "); gets(in); len = strlen(in); for(i=0;i<len;i++) { if(('A'<=in[i]) && (in[i]<='Z')) out[i] = in [i] + diff; else if (('a'<=in[i]) && (in[i]<='z')) out[i] = in[i]-diff; else out[i] = in[i]; } out[i] = '\0'; printf("ë³€í™˜ëœ ë¬¸ìž : %s \n", out); } ////ì±…ì—ì„œ ì°¸ê³ 3. ë‹¤ìŒ ëª¨ì–‘ì„ ì¶œë ¥í•˜ëŠ” í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ 주세요. o í•œìžë¦¬ 숫ìžì´ë‹¤ê°€ 2ìžë¦¬ 숫ìžì´ë©´ì„œ 깨지는 ê²ƒì€ ì˜ˆì™¸ì²˜ë¦¬í•´ì£¼ì…”ë„ ë˜ê³ 하지 ì•Šìœ¼ì…”ë„ ë©ë‹ˆë‹¤. o ë°©ë²•ì€ if(10>x) printf(" ");입니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 4. ë‹¤ìŒ ëª¨ì–‘ì„ ì¶œë ¥í•˜ëŠ” í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ 주세요. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 5. 위 ë‘ í”„ë¡œê·¸ëž¨ì„ ì¼ë°˜í™” 시켜 ìž…ë ¥ë°›ì€ ìˆ«ìžë§Œí¼ ì¶œë ¥í•´ì£¼ëŠ” í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ì£¼ì„¸ìš”.(위 í”„ë¡œê·¸ëž¨ì€ 21ì„ ìž…ë ¥) 6. 위 프로그램처럼 숫ìžë¥¼ 순서대로 ì¶œë ¥í•˜ëŠ” í”„ë¡œê·¸ëž¨ì„ í”¼ë¼ë¯¸ë“œ 형태로 작성해 주세요. 7. 위 프로그램처럼 숫ìžë¥¼ 순서대로 ì¶œë ¥í•˜ëŠ” í”„ë¡œê·¸ëž¨ì„ ë‹¤ì´ì•„몬드 형태로 작성해 주세요. 8. 아래 í”„ë¡œê·¸ëž¨ì„ ì°¸ê³ í•˜ì—¬ 60ì ì´í•˜ëŠ” F, 61~70ì D, 71~80 C, 81~90 B, 90~ Aì¸ í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ì£¼ì„¸ìš”. #include <stdio.h> int main() { int num; char grade; printf("성ù¨¬ì u ìž…Oë ¥Â¤A : "); scanf("%d", &num); switch(num/10){ case 10 : printf("A\n"); break; case 9 : printf("A\n"); break; case 8 : printf("B\n"); break; case 7 : printf("C\n"); break; case 6 : printf("D\n"); break; default : printf("F\n"); break; } } 9. 101부터200ê¹Œì§€ì˜ ëª¨ë“ ì •ìˆ˜ë¥¼ ë”í•´ì„œ 반환하는 '함수'를 작성해주세요.(main문ì—는 sum=Sum(); printf("%d",sum);ì´ ìžˆë„ë¡í•´ì£¼ì„¸ìš”) #include <stdio.h> int Sum(int n); int main() { int sum; sum=Sum(200); printf("101~200까¾i지oì˜C í•©Oì€Â¨Â¬ %d\n",Sum); return 0; } int Sum(int n) { if(n==101) return 0; else return n+Sum(n-1); } 10. 재귀함수를 ì´ìš©í•´ n!ì„ ì¶œë ¥í•˜ëŠ” í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ 주세요. #include <stdio.h> int fact(int n); int main() { int n; printf("숫ìžë¥¼ ìž…ë ¥í•˜ì„¸ìš” : "); scanf("%d",&n); printf("fact(%d) = %1d입니다. \n",n,fact(n)); } int fact(int n) { if(n==0) return 1; else return n*fact(n-1); } 11. n!ì„ ì¶œë ¥í•˜ëŠ” í”„ë¡œê·¸ëž¨ì„ for문으로 작성해주세요. #include <stdio.h> int main() { int n,i; int fact=1; printf("숫ìžë¥¼ ìž…ë ¥í•˜ì„¸ìš” : "); scanf("%d",&n); for(i=1;i<=n;i++) { fact =i*fact; } printf("%d! = %d\n",n,fact); return 0; } 12. 재귀함수를 ì´ìš©í•´ 1부터10까지를 ë”하는 í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ 주세요. .#include <stdio.h> int hap(int n); int main() { printf("1~10ê¹Œì§€ì˜ í•©ì€ %d\n",hap(10)); return 0; } int hap(int n) { if(n==0) return 0; else return n+hap(n-1); } 13. ë°°ì—´ì— {7,4,2,9,3,1,2}ê°€ 들어있습니다. ì´ ë°°ì—´ì—ì„œ 3ì´ ìžˆëŠ”ì§€ 없는지를 찾아서 ì¶œë ¥í•´ì£¼ëŠ” í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ì£¼ì„¸ìš”. #include<stdio.h> int main() { int arr[] = {7,4,2,9,3,1,2}; int i; for(i=0;i<=7;i++ ) { } printf("3ì´ ìžˆìŠµë‹ˆë‹¤."); } //////For문 ì•ˆì— ì–´ë–»ê²Œ í•´ì•¼í• ì§€ 잘 ëª¨ë¥´ê² ì–´ìš” 14. ë°°ì—´ì— {7,4,2,9,3,1,2}ê°€ 들어있습니다. ì´ ë°°ì—´ì—ì„œ 1ì´ ëª‡ë²ˆì§¸ì— ìžˆëŠ”ì§€ë¥¼ 찾아서 ì¶œë ¥í•´ì£¼ëŠ” í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ì£¼ì„¸ìš”. (단, 7ì€ ì²«ë²ˆì§¸ìž…ë‹ˆë‹¤) 15. ë°°ì—´ì— {7,4,2,9,3,1,2}ê°€ 들어있습니다. ì´ ë°°ì—´ì—ì„œ 2ê°€ 있는지 없는지를 ê²€ì‚¬í•˜ê³ , 있다면 ì–´ë””ì— ìžˆëŠ”ì§€ ì „ë¶€ ì¶œë ¥í•´ì£¼ëŠ” í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ì£¼ì„¸ìš”. 16. ë°°ì—´ì— {7,4,2,9,3,1,2}ê°€ 들어있습니다. ì´ ë°°ì—´ì„ ì •ë ¬(오름차순으로)í•˜ê³ , ì¶œë ¥í•˜ëŠ” í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ì£¼ì„¸ìš”. • ì˜ˆìŠµê³¼ì œ 1. 2ì°¨ì› ë°°ì—´ì´ ë¬´ì—‡ì¸ì§€ ì“°ê³ , 어떻게 ì„ ì–¸í•˜ëŠ”ì§€ë„ ìž‘ì„±í•œ ë’¤, ì´ë¥¼ ì´ìš©í•œ 간단한 í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ì£¼ì„¸ìš”. ë°°ì—´ì˜ ì²¨ìžê°€ ë‘ ê°œì¸ ë°°ì—´ ì›ì†Œ ìžë£Œí˜• ë°°ì—´ì´ë¦„[ë°°ì—´í¬ê¸°1][ë°°ì—´í¬ê¸°2]; #include<stdio.h> int main() { int arr[3][3]; int i,j; int k=1; for(i=0;i<3;i++) { for(j=0;j<3;j++) { arr[i][j]=k; k++; } } printf("arr[0][0]부¬Ií„°I arr[3][3]까지 ì¶œë ¥\n"); for(i=0;i<3;i++) { for(j=0;j<3;j++) { printf("%2d",arr[i][j]); } printf("\n"); } } 2. srand()함수가 무엇ì¸ì§€ ì°¾ì•„ì“°ê³ , time()ì„ ì´ìš©í•´ ëžœë¤ìœ¼ë¡œ 숫ìžë¥¼ 하나 ì¶œë ¥í•˜ëŠ” í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ì£¼ì„¸ìš”. Void srand(unsigned int SEED); Randê°€ ìƒì„±í•˜ëŠ” 초기 난수를 변경함. SEED는 초기 난수를 ë³€ê²½í•˜ëŠ”ë° ì‚¬ìš©ë˜ì§€ë§Œ SEEDìžì²´ê°€ 초기난수가 ë˜ëŠ” ê²ƒì€ ì•„ë‹˜ í—¤ë”íŒŒì¼ : <stdlib.h> 3. í¬ì¸í„°ê°€ 무엇ì¸ì§€ ì“°ê³ , í¬ì¸í„°ë¥¼ ì„ ì–¸í•˜ëŠ” ë°©ë²•ì„ ì“°ì„¸ìš”. í¬ì¸í„° – ë©”ëª¨ë¦¬ì— ë¶€ì—¬ëœ ì£¼ì†Œ ì£¼ì†Œâ€˜ê°’â€™ì„ ë‚˜íƒ€ë‚¼ 때는 í¬ì¸í„° ìƒìˆ˜ë¼ í•˜ê³ , 주소를 ì €ìž¥í• ìˆ˜ 있는 ‘변수’를 나타내는 í¬ì¸í„° ë³€ìˆ˜ë¼ í•œë‹¤. ìžë£Œí˜•*í¬ì¸í„° 변수; 4. ë°°ì—´ê³¼ í¬ì¸í„°ì˜ 공통ì ê³¼ ì°¨ì´ì ì„ ì°¾ì•„ë³´ê³ , ì¨ë³´ë„ë¡ í•˜ì„¸ìš”. ***공통ì ë°°ì—´ê³¼ í¬ì¸í„° 둘다 메모리 ì£¼ì†Œê°’ì„ ë‚˜íƒ€ë‚¸ë‹¤. *** ì°¨ì´ì 1)í¬ì¸í„°ëŠ” 변수ì¸ë° 비해 ë°°ì—´ì€ ìƒìˆ˜ì´ë‹¤. 2)í¬ì¸í„°ê°€ 가르키는 ë°°ì—´ì˜ í¬í‚¤ëŠ” ë™ì 으로 ê²°ì •í• ìˆ˜ 있지만 ë°°ì—´ì˜ í¬ê¸°ëŠ” ì„ ì–¸í• ë•Œ ì •ì 으로 ê²°ì •ëœë‹¤. 3)ë°°ì—´ì€ ê·¸ ìžì²´ê°€ í¬ê¸° ë•Œë¬¸ì— í•¨ìˆ˜ì˜ ì¸ìˆ˜ë¡œ ì „ë‹¬í• ìˆ˜ 없지만 í¬ì¸í„°ëŠ” 대ìƒì²´ê°€ 무엇ì´ë“ ê°„ì— 4ë°”ì´íŠ¸ì™€ í¬ê¸°ë°–ì— ì°¨ì§€í•˜ì§€ 않으므로 함수로 ì „ë‹¬í• ìˆ˜ 있다. 4)ë°°ì—´ë¡œ 요소를 ì½ëŠ” 것과 í¬ì¸í„°ë¡œ 대ìƒì²´ë¥¼ ì½ëŠ” ë™ìž‘ì˜ ì†ë„ ì°¨ì´ê°€ 있다. ì™„ì „ížˆ ëª»í‘¼ë¬¸ì œ :3,4,5,6,7,14,15,16 = 황혜림 = ì˜ˆìŠµê³¼ì œ 1. 2ì°¨ì› ë°°ì—´ì´ ë¬´ì—‡ì¸ì§€ ì“°ê³ , 어떻게 ì„ ì–¸í•˜ëŠ”ì§€ë„ ìž‘ì„±í•œ ë’¤, ì´ë¥¼ ì´ìš©í•œ 간단한 í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ì£¼ì„¸ìš”. - ë°°ì—´ì˜ ì²¨ìžê°€ ë‘ ê°œì¸ ë°°ì—´ì´ë‹¤. int a[2][3]; // 2í–‰ 3ì—´ì˜ 2ì°¨ì› ë°°ì—´ 2. srand()함수가 무엇ì¸ì§€ ì°¾ì•„ì“°ê³ , time()ì„ ì´ìš©í•´ ëžœë¤ìœ¼ë¡œ 숫ìžë¥¼ 하나 ì¶œë ¥í•˜ëŠ” í”„ë¡œê·¸ëž¨ì„ ìž‘ì„±í•´ì£¼ì„¸ìš”. -srand함수는 여러 ê°œì˜ ë‚œìˆ˜í‘œ 중 하나를 ì„ íƒí•˜ëŠ” 것ì´ê³ , rand 함수는 ì„ íƒëœ 난수표로부터 ê°’ì„ êº¼ë‚´ì˜¤ëŠ” 것ì´ë‹¤. srand함수ì—는 ì¸ìžê°€ 하나 들어가는ë°, ê·¸ê²ƒì„ seedê°’ì´ë¼ê³ 한다. 3. í¬ì¸í„°ê°€ 무엇ì¸ì§€ ì“°ê³ , í¬ì¸í„°ë¥¼ ì„ ì–¸í•˜ëŠ” ë°©ë²•ì„ ì“°ì„¸ìš”. - í¬ì¸í„°ëŠ” 가리키는 ë³€ìˆ˜ì˜ ì‹œìž‘ì£¼ì†Œ(ë©”ëª¨ë¦¬ì˜ ìœ„ì¹˜)를 기호화 í•œ 것 int a; int *pa; // aì˜ í¬ì¸í„°ë³€ìˆ˜ pa=&a; // í¬ì¸í„° ë³€ìˆ˜ì˜ ì´ˆê¸°í™” 4. ë°°ì—´ê³¼ í¬ì¸í„°ì˜ 공통ì ê³¼ ì°¨ì´ì ì„ ì°¾ì•„ë³´ê³ , ì¨ë³´ë„ë¡ í•˜ì„¸ìš”. 공통ì : ë°°ì—´ì´ë¦„만 ì“°ë©´ 주소를 가리킨다. ì°¨ì´ì : í¬ì¸í„°ëŠ” ì–¸ì œë“ ì§€ 다른 대ìƒì„ 가리킬 수 있지만 ë°°ì—´ì€ ê°’ì´ ê³ ì •ë˜ì–´ 있다.