SHARE
TWEET

Untitled

a guest Jul 21st, 2019 76 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. 과제 내용 : 사용자로부터 입력받은 문자열에서 각각의 알파벳 문자가 나타내는 빈도를 계산하여
  2.                빈도가 낮은 알파벳부터 높은 알파벳까지 순서대로 빈도 수를 출력하는 프로그램*/
  3.  
  4. #include <stdio.h>
  5. #include <string.h>
  6. #define max 256  // 문자열 최대 길이
  7. #define max_alphabet 26 // 알파벳 최대 갯수
  8.  
  9. int result[max_alphabet][2]; // {알파벳 문자, 빈도 수}의 쌍으로 이루어진 배열
  10. char str[max]; // 사용자로부터 입력 받을 문자열을 저장하기 위한 문자형 배열
  11. int len; // 사용자로부터 입력 받은 문자열의 길이를 저장하기 위한 변수
  12. int i, j; // 반복문의 제어를 위해 사용되는 변수
  13.  
  14. int len = strlen(str); // 입력 받은 문자열의 길이 계산
  15.  
  16.  
  17.         // 알파벳, 빈도 수 관련 배열의 값 초기화
  18.  
  19.         // 빈도 수 계산. isAlpha, UpperToLower 함수 활용.
  20.  
  21.         // 빈도 수에 따른 버블 정렬 사용
  22.  
  23.         // 빈도 수가 0인 경우를 제외한 결과 출력
  24.        
  25.  
  26.  
  27. void find_frequency(char[], int[]);
  28.  
  29. int main()
  30. {
  31.     char str[max];
  32.     int i, count[max_alphabet] = { 0 };
  33.  
  34.     printf("문자열을 입력하세요\n");
  35.     gets)s(str, max-1);
  36.  
  37.     find_frequency(string, count);
  38.  
  39.     printf("문자 : 횟수 \n");
  40.  
  41.     for (i = 0; i < max_alphabet; i++)
  42.         printf("%c \t  %d\n", i+ 'a', count[i]);
  43.  
  44.     return 0;
  45. }
  46.  
  47. void find_frequency(char s[], int count[]) {
  48.     int i = 0;
  49.  
  50.     while (s[i] != '\0') {
  51.         if (s[i] >= 'a' && s[i] <= 'z')
  52.             count[s[i] - 'a']++;
  53.         c++;
  54.     }
  55. }
  56.  
  57. /* int isAlphabet(void)
  58. {
  59.     char ch;
  60.  
  61.     /* 사용자로 부터 입력받은 문자열
  62.  
  63.     printf("문자열을 입력하세요: ");
  64.     scanf("%c", &ch);
  65.  
  66.  
  67.     if ((ch >= 'a' && ch <= 'z') || (ch >= 'A' && ch <= 'Z'))
  68.     {
  69.         void lower_string(char[]);
  70.  
  71.     }
  72.     else
  73.     {
  74.         printf("문자열을 다시 입력하세요.");
  75.     }
  76.  
  77.     return 0;
  78. }
  79.  
  80. /* void lower_string(char[]);
  81.  
  82. int uppertolower()
  83. {
  84.     char string[100];
  85.  
  86.     lower_string(string);
  87.  
  88.     printf("The string in lower case: %s\n", string);
  89.  
  90.     return 0;
  91. }*/
  92.  
  93. /* void lower_string(char s[]) {
  94.     int c = 0;
  95.  
  96.     while (s[c] != '\0') {
  97.         if (s[c] >= 'A' && s[c] <= 'Z') {
  98.             s[c] = s[c] + 32;
  99.         }
  100.         c++;
  101.     }
  102. }*/
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Not a member of Pastebin yet?
Sign Up, it unlocks many cool features!
 
Top