사용자 삽입 이미지

 
// Program Name : PROCESS COUNTER
// Written by Hoon-seung Jeong

// Consultation http://support.microsoft.com/kb/175030/ko


#include <iostream>
#include <windows.h>
// For Windows API function
#include <time.h>
// For time of day
#include <tlhelp32.h>
// For process count of Windows XP
using namespace std;
void Process_Count();
int main()
{
    while(1)
    {
        Process_Count();
    }
    return 0;
}
void Process_Count()
{
    int number=0;
// Initialization 0
    time_t now;
// Declare time struct
    now = time(NULL); // Time function
    HANDLE snap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0); // This function has system information
    if(snap) // Excution snapshat handle
    {
        BOOL p_Count;
// For count process
        PROCESSENTRY32 p_Entry; // Declare process struct
        p_Entry.dwSize = sizeof(PROCESSENTRY32); // A Function of PROCESSENTRY32
        p_Count = Process32First(snap, &p_Entry); // Search a executing process
        while(p_Count)
        {
            p_Count = Process32Next(snap, &p_Entry);
// Repeat to search executing process
            number++;
// Increase number of executing process
        }
        CloseHandle(snap); // Close snapshot handle
    }
    cout << asctime(localtime(&now)); // Print time of day
    cout << "\tNumber of executing process : " << number << "\n"; // Print number of executing process
    Sleep(1000);
// 1000 is 1 second
}

프로그램 제목 : Process Counter

윈도우상에서 컨트롤+알트+델 누르면
윈도우즈 작업관리자가 뜨는데
왼쪽 하단에 현재 실행중인 프로세스 개수가 뜬다.

그걸 콘솔모드(도스모드) 프로그램으로 해본 것...
Posted by 정훈승
REVIEW/책2009. 2. 13. 09:44
사용자 삽입 이미지

개강전에 나의 돌대가리를 좀 맛사지 해 줄 필요성을 느끼고 본 책.

이미 알고 있는 내용이 1/3, 생소한 내용이 2/3

'입문'이라 써있는 정도 치곤 내용이 살짝 어려울 수도 있다.

하지만 프로그래밍 하는데 있어서 이런 내용 한번이라도 접해보고
소스를 한번이라도 쳐보고 실행해봤다는 것이
다른놈들이랑 차이를 두는 방법이다.

소스들을 한번씩 다 쳐보고 따로 저장해두는 것도 아주 좋은 방법이지.

학교수업중 졸라 빡쌘 숙제가 나왔다. 하지만 네이버나 구글엔 없다.????

그러면 이런 책에 있을 확률이 높으니까!!!
Posted by 정훈승
KOREA University/C2008. 12. 7. 12:42
호서대와 고려대가 교과목 인증 방법이 달라서
4학년 1학기때 C언어를 다시 배우게 되었습니다.
그에 따라 알찬 C언어 예제를 여기다가 올릴 생각입니다.

2009년 3월 1일부터 -ㅅ-
커밍 쑨(?)...
Posted by 정훈승
KOREA University/C2008. 8. 13. 09:23
제가 제 블로그에 올릴만한 괜찮은 c언어 소스를 쭉 나열해보니까
대략 수십개가 넘네요...

이걸 일일이 올리자니 너무 비효율적이기도 하고 귀찮기도 하고

뭐 질문 하실 분들이 있을지 모르겠지만,
질문해주신다면 제가 아는 한도에서 정성것 아주 쉽게 가르쳐드리도록 하겠습니다.

그냥 염치없게 학교숙제 통째로 물어보셔도,
마찬가지로 제가 아는 한도에서 답변을 드리겠습니다.

c언어는 아주 쉽고 재밌는 언어입니다.

THANK YOU
Posted by 정훈승
KOREA University/C2008. 8. 12. 15:12
개행문자(\n)까지 사용자로부터 입력을 받은 문자의 개수와  blank문자의 개수를 구하는 프로그램입니다. 후에 파일용량을 측정할 수 있는 가장 기초적인 소스입니다.

#include<stdio.h>
main()
{
 char ch[80];
 int i=0, ch_count=0, space_count=0;
 printf("문자열을 입력하세요 : ");
 gets(ch);
 printf("입력 문자열 : ");
 while(ch[i]) {
  putchar(ch[i]);
  ch_count = ch_count + 1;
  if (ch[i] == ' ')
   space_count = space_count +1;
  i=i+1;
 }
 printf("\n입력받은 문자의 개수 : %d\n", ch_count);
 printf("공백문자의 개수 : %d\n", space_count);
}
Posted by 정훈승
KOREA University/C2008. 8. 12. 15:09
1에서 10 사이의 양의 정수(n)를 입력받아 n!(factorial)을 구하는 프로그램입니다.
factorial 수식 : n! = n * (n-1) * (n-2) * ... * 1


#include <stdio.h>

void main(void){
 long int fac=1;
 int x;
 int i;

 scanf("%d", &x);


 for (i=1; i<=x; i++)
 {
 
  fac=fac*i;
 }

  printf("구하고자 하는 factorial 값 : %d\n", fac);


}

Posted by 정훈승
KOREA University/C2008. 8. 12. 15:04
1에서 10까지의 합을 출력하는 프로그램입니다. for문의 기본이 되는 소스입니다.


#include <stdio.h>

void main(){
 int i,sum=0;

 for(i=1;i<=10;i++){
  sum+=i;
  printf("\n  %d  %d\n ",i,sum);
 
 }

}

Posted by 정훈승
KOREA University/C2008. 8. 12. 15:01
자동판매기에서 잔금을 가장 적게 반환하는 프로그램입니다. 동전의 종류는 500원, 100원, 50원, 10원으로 한정하고 동전의 개수는 제한이 없습니다. 역시 아이큐 10 이상이라면 풀 수 있는 문제죠.


#include <stdio.h>

void main()
{
 int no1, no2, no3;
 
 printf("입금액 : ");
 scanf("%d", &no1);

 printf("물건값 : ");
 scanf("%d", &no2);

 no3=no1-no2;

 printf("잔금 : %d원\n\n", no3);

 if (no3<no1)
  printf("500원짜리 %d개\n", no3/500);
  printf("100원짜리 %d개\n", (no3%500)/100);
  printf("50원짜리 %d개\n", ((no3%500)%100)/50);
  printf("10원짜리 %d개\n", (((no3%500)%100)%50)/10);
}

Posted by 정훈승
KOREA University/C2008. 8. 12. 14:59
어느 가게에서 물건을 5000원 이상 사면 10%의 할인을 해준다고 쳤을때, 사용자가 물건값과 개수를 입력하면 지불금액이 계산되는 프로그램입니다. 쪼~끔 머리 굴리면 아주 쉽습니다.


#include <stdio.h>

void main()
{
 int no1, no2, jhs;

 printf("물건값 : ");
 scanf("%d", &no1);

 printf("개수 : ");
 scanf("%d", &no2);

 jhs = no1*no2;

 if (jhs >= 5000)
  printf("금액(할인됨) : %d\n", jhs-(jhs/10));

 else if (jhs < 5000)
  printf("금액(할인안됨) : %d\n", jhs);
}

Posted by 정훈승
KOREA University/C2008. 8. 12. 14:56
임의의 두 숫자와 연산기호(+, -, *, /)를 입력받아 두 숫자로 해당 연산기호를 수행하는 프로그램입니다. 참 쉽죠?

#include <stdio.h>

void main()
{
 char jhs;
 int no1, no2;

 printf("입력(연산기호, 숫자1, 숫자2) : ");
 scanf("%c %d %d",&jhs, &no1, &no2);

 switch (jhs)
 {
  case '*': printf("%d * %d = %d\n", no1, no2, no1*no2); break;
  case '/': printf("%d / %d = %d\n", no1, no2, no1/no2); break;
  case '+': printf("%d + %d = %d\n", no1, no2, no1+no2); break;
  case '-': printf("%d - %d = %d\n", no1, no2, no1-no2); break;
  case '%': printf("%d % %d = %d\n", no1, no2, no1%no2); break;
  default : printf("값이 잘못되었습니다\n");
 }

}

Posted by 정훈승