0.1. 1 ¶
5월 3일 숙제용 (devC++로)
~cpp 
/***********************************************************
한 변의 패턴수와 패턴모양을 입력받아 마름모를 출력하는******
프로그램 입니다. **20051095 허아영************************** 
***********************************************************/ 
#include <stdio.h>
#include <stdlib.h>
int main()
{
     int pattern_num; 
     int i, j;
     int blank;
     char pattern_shape;
     printf("출력 할 마름모 변의 패턴수를 입력하십시오(정수>0) :");
     scanf("%d", &pattern_num);
     scanf("%c", &pattern_shape);
     printf("출력 할 마름모 패턴 모양을 입력하십시오(문자) :");
     scanf("%c", &pattern_shape);
     for(i = 1; i <= pattern_num; i++)
     { 
         for(blank = 0; blank < pattern_num - i; blank++)
                  printf(" ");
         for(j = 0; j < 2*i-1; j++)
                  printf("%c", pattern_shape);
         printf("n");
      }
         for(i = 1; i < pattern_num; i++)
     { 
         for(blank = 0; blank < i; blank++)
                  printf(" ");
         for(j = 0; j < 2*(pattern_num-i)-1; j++)
                  printf("%c", pattern_shape);
         printf("n");
      }
  system("PAUSE");	
  return 0;
}
1.1. 2 ¶
5월 4일 (visualC++로)
두번째는 첫번째보다는 시간이 별로 안걸렸어요. 그만큼 조잡(?)한가요?ㅡㅡ
~cpp 
/*************************************************************
*패턴모양만 입력받아 한변에 패턴 5개가 되는 마름모를 출력하는*
*프로그램입니다. [컴퓨터공학부 20051095 허아영]				 *
*************************************************************/
#include <stdio.h>
#include <string.h>
void main()
{
	int i, j, k;
	char shape;
	printf("패턴모양을 입력하십시오 :");
	scanf("%c", &shape);
	for(i = 0; i <= 4; i++)
	{ 
		for(j = 4; j >= i; j--)
			printf(" ");
		for(k = 0; k <= 2*i; k++)
			printf("%c", shape);
		printf("n");
	}
         for(i = 0; i <= 3; i++)
         {
		for(j = 0; j - 1 <= i; j++)
		printf(" ");
		for(k = 6; k >= 2*i; k--)
		printf("%c", shape);
	printf("n");
	}
}
1.1. 3 ¶
5월 5일 (devC++)
직각 삼각형의 높이와 패턴모양을 입력받은 후 출력하는 프로그램입니다.
직각 삼각형의 높이와 패턴모양을 입력받은 후 출력하는 프로그램입니다.
~cpp 
#include <stdio.h>
#include <stdlib.h>
int main()
{
     int i,j;
     int h = 0;
     char shape;
     printf("삼각형의 높이 패턴의 모양을 입력하십시오(예 : 5*) : ");
     scanf("%d%c", &h, &shape); 
  
     for(i = 1; i <= h; i++) 
     {
          for (j = 0; j < i; j++) 
          {
              printf("%c", shape);
          }
          printf("n");
      }
     system("PAUSE");
     return 0;
}
1.1. 4 ¶
5월 5일 (devC++)
두 숫자를 입력받은후 두 숫자 중에 큰 숫자를 출력하고, 두 숫자의 차를 구하는 프로그램입니다.
두 숫자를 입력받은후 두 숫자 중에 큰 숫자를 출력하고, 두 숫자의 차를 구하는 프로그램입니다.
~cpp 
#include <stdio.h>
/*******************************************************************************
* 20051095 허아영 두 숫자를 입력받아 더 큰 숫자를 출력시키고, 큰 수와 작은수의 *
* 차를 구하는 프로그램입니다.
***************************************************************************** */
void main()
{
     int a, b;
     printf("두 수를 입력하십시오 :");
     scanf("%d %d", &a, &b);
    
     if(a > b)
     {
          printf("큰수는 %d입니다n", a);
          printf("차 : %d - %d = %dn", a, b, a-b);
      }     else
      {
          printf("큰수는 %d입니다n", b);
          printf("차 : %d - %d = %dn", b, a, b-a);      
      }
      system("PAUSE");
}
↓↓↓ 정리차원에서 고쳐 보았습니다.
~cpp 
#include <stdio.h>
void main()
{
     int a, b, Max, dif;
     printf("두 수를 입력하십시오 :");
     scanf("%d %d", &a, &b);
    
     if(a > b)
      {
          Max = a;
          dif = a-b;
      }     else
      {
          Max = b;
          dif = b-a;   
      }
      printf("큰 수는 %d 입니다.n", Max);
      printf("두 수의 차이는 %d입니다n", dif);
      system("PAUSE");
}
↓↓ 같은 수를 입력 받을 때를 생각을 못했어서, 다시 정리요 ㅎㅎ 
~cpp 
#include <stdio.h> 
 
void main() 
{ 
     int a, b, Max, dif; 
     printf("두 수를 입력하십시오 :"); 
     scanf("%d %d", &a, &b); 
     
     if(a > b) 
      { 
          Max = a; 
          dif = a-b; 
      printf("큰 수는 %d 입니다.n", Max); 
      printf("두 수의 차이는 %d입니다n", dif);
      }
      else if(a == b)
      { 
          printf("두 수가 같습니다.n");
      }    
      else  
      {
          Max = b; 
          dif = b-a;    
      printf("큰 수는 %d 입니다.n", Max); 
      printf("두 수의 차이는 %d입니다n", dif);
      } 
 
      system("PAUSE"); 
} 
1.1. 5 ¶
김승욱 교수님 홈페이지에 있는 실습자료인데 , 혼자 만들어보았습니다.
2번 문제는 너무 어려워서, 아직은 분석중이에요 -.-
문제1. 로또 복권의 6자리 수를 랜덤하게 생성하데, 사용자가 발생 횟수를 선택할 수 있도록 하시오. 예를 들면, 초기 화면에서 사용자가 5를 입력하면 랜덤 수 6개를 5번 출력 하는데 출력 양식이 다음과 같도록 프로그램을 완성하시오.
2. 화면에서 5개의 점수를 입력 받아 1차원 배열에 저장하고 입력 받은 수의 합과 평균, 최대값과 최소값까지 산출하여 그 결과를 아래와 같이 보여주시오.
정렬하는 여러방법중에 가장 쓸만 한것 (?) 이 뭘까요 aa
2번 문제는 너무 어려워서, 아직은 분석중이에요 -.-
문제1. 로또 복권의 6자리 수를 랜덤하게 생성하데, 사용자가 발생 횟수를 선택할 수 있도록 하시오. 예를 들면, 초기 화면에서 사용자가 5를 입력하면 랜덤 수 6개를 5번 출력 하는데 출력 양식이 다음과 같도록 프로그램을 완성하시오.
~cpp < LOTTO RANDOM NUMBER GENERATOR > Enter the game count : 5 ======================== GAME 1 : 21 18 31 2 4 30 GAME 2 : 20 41 38 2 26 32 GAME 3 : 15 16 25 31 36 37 GAME 4 : 34 32 23 27 11 6 GAME 5 : 38 15 36 15 21 24 ========================
~cpp 
Enter a number for score[0] : 80
Enter a number for score[1] : 50
Enter a number for score[2] : 99
Enter a number for score[3] : 74
Enter a number for score[4] : 88
[[ The contents of score array ]]
     80     50     99     74     88
sum = 391, avg = 78.2
max = 99, min = 50
score[0] : 80, rank = 3
score[1] : 50, rank = 5
score[2] : 99, rank = 1
score[3] : 74, rank = 4
score[4] : 88, rank = 2
 
ㄷ ㅏ짜면 올리겠습니다 !
정렬하는 여러방법중에 가장 쓸만 한것 (?) 이 뭘까요 aa
1.2. 세번째 C 과제 ¶
~cpp 화면 출력제어에 대한 연습 • 2 ∼ 9 까지의 구구단을 한 화면에 출력하는 프로그램을 작성하시오. 포인터 처리에 대한 연습 • 포인터로 배열들의 요소를 지적하고 배열간의 자료교환을 하는 프로그램을 작성하시오. - 변수형과 포인터와의 관계, 포인터가 가리키는 대상의 크기 등을 보여주는 기능을 첨가하여 작성하시오.
1.3. 거듭제곱의 반대 ¶
시작값을 1024로 할 때 
~cpp 
#include <stdio.h>
int calcul(int num);
void print_result(int result);
void main()
{
	int result, n = 1024;
	while(n > 1)
	{
		result = calcul(n);
		print_result(result);
		n = result;
	}
}
int calcul(int num)
{
	num /= 2;
	return num;
}
void print_result(int result)
{
	printf("%d / 2 = %dn", result*2,result);	
}
1.4. 팩토리얼(재귀함수 쓰지않고) ¶
~cpp 
/*1에서 n까지의 곱을 구하는 프로그램입니다. 
	>>팩토리얼- 재귀함수<<를 쓰지않고 !! */
#include <stdio.h>
int fac(int n);
void main()
{
	int num, result;
	printf("n = ");
	scanf("%d", &num);
	result = fac(num);
	printf("%d", result);
}
int fac(int n)
{
	int fac_result = 1,i = 1;
	while(i <= n)
	{
		fac_result *= i;
		i++;
	}
	return fac_result;
}
1.4.1. 소스 짠 후 ¶
아직도 프로그래밍하는데 세미콜론을 빠트린다던지, scanf 함수를 쓸 때 변수앞에 &을 붙지지 않을 때가 다반사다.
습관이 중요하다. ! ! 좋은습관을 만들자!!.
습관이 중요하다. ! ! 좋은습관을 만들자!!.
1.5. 입력받은 한문자의 2진수 중 0의 갯수 ¶
~cpp 
/*한문자를 입력받아 문자의 비트중 0의 갯수*/
#include <stdio.h>
int countbit(char ch);
void main()
{
	char ch;
	printf("input 한개의 문자 ==>");
	scanf("%c", &ch);
	printf("n 0의 갯수 : %dn", countbit(ch));
}
int countbit(char ch)
{
	int count = 0;
	for(; ch != 0; ch>>=1)
	{
		if((~ch) & 1 )
		{
			count++;
		}
	}
	return count;
}
1.6. 단어의 갯수를 출력 ¶
장난으로 짜봤다. 예외처리 하지 않음. 
~cpp 
#include <stdio.h>
void main()
{
	int i = 0, count = 0;
	char str[50];
	printf("단어입력 : ");
	gets(str);
	while(str[i])
	{
		if(str[i] == ' ')
		{
		    count++;
		}
		i++;
	}
	printf("단어의 수 : %d n", count+1);
}
1.7. 영소문자, 대문자, 특수문자, 수치문자의 갯수 ¶
gets 하다가 scanf로 바꾼 ! ㅠ
~cpp 
#include <stdio.h>
void main()
{
	int i = 0, countBig = 0, countSmall = 0, countSpe = 0, countNum = 0;
	char str[100];
	printf("영대문자, 영소문자, 수치문자, 특수문자의 수 알아내는 프로그램n");
	printf("문장 입력 : ");
	scanf("%s", str);
	while(str[i] != NULL)
	{
		if((str[i] >= 48) && (str[i] <= 59))
		{	
			countNum++;
		}else if((str[i] >= 65) && (str[i] <= 90))
		{
			countBig++;
		}else if((str[i] >= 97) && (str[i] <= 122))
		{
			countSmall++;
		}else
		{
			countSpe++;
		}
		i++;
	}
	printf("소문자 : %d, 대문자 : %d, 수치문자 : %d, 특수문자 : %d", countSmall, countBig, countNum, countSpe);
}
2. Thread ¶
- 오 아영이 열심히 하는데 - 상협
 - 감사합니다^^; 다른애들에 비하면 열씸히 하는것도 아니죠  
 
 자식. 완전 열심히 해! 나도 같이 하자! - 보창 자식. 완전 열심히 해! 나도 같이 하자! - 보창
 - 네  
 
 자식. 완전 열심히 해! 나도....음.. 난 골수까지 귀차니즘이 스며서..에잇.혼자 열심히 해서 장학금 타서 밥사주!! - 조현태 자식. 완전 열심히 해! 나도....음.. 난 골수까지 귀차니즘이 스며서..에잇.혼자 열심히 해서 장학금 타서 밥사주!! - 조현태
 - 헉.. 너야말루. 장학금 타면 사줘 !! ㅋㅋ 난 공부할 때 적은 양이라도 너무 티를 많이 내서 그렇지.. 보면 별거 없어 ㅠ 이게 문제야..ㅋ -허아영
 - 훗... 내 장학금 받아서 얻어먹을 생각을 하다니.. 그러다 굶어 죽으려면 어떻하려고..;; 그나저나 왠지 위키가 우리 낙서장인 듯한 느낌이..음... 좋은 현상인지 좋지않은 현상인지..;; 뭐.. 어쨋든 열심히 하라고.^^ - 조현태
 
허아영













