1. Список говнокодов пользователя accu

    Всего: 1

  2. Си / Говнокод #18988

    −99

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    /* Программа подсчитывает кол-во определенного символа в строке*/
    
    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    
    int main()
    {
    	int i, j;
    	int number_letters = 26;
    	int total_number_letters = 52;
    	int alphabet_matches[total_number_letters];
    
    	char ch;
    	char *str = (char*) malloc (sizeof(char) * 100);
    
    	char az_AZ_alphabet[total_number_letters];
    
    	printf("Please enter string: ");
    	scanf("%s", str);
    
    	// Заполнения массивов маленькими и большими буквами
    	az_AZ_alphabet[0] = 'a';
    	for(i = 1; i < total_number_letters - number_letters; i++)
    		az_AZ_alphabet[i] = 'a' + i;
    
    	az_AZ_alphabet[51] = 'Z';
    	for(i = 51; i >= total_number_letters - number_letters; i--)
    		az_AZ_alphabet[i] = 'Z' - ((total_number_letters - 1) - i);
    
    	// Массив full_alphabet[total_number_letters] заполнить нулями
    	for (i = 0; i < total_number_letters; i++)
    		alphabet_matches[i] = 0;
    
    	// Подсчет символов входящих в строку
    	for (i = 0; i < (int)strlen(str); i++) {
    		for (j = 0; j < total_number_letters; j++)
    			if (az_AZ_alphabet[j] == str[i])
    				alphabet_matches[j] += 1;
    	}
    
    	// Вывод таблицы
    	for (i = 0, ch = 'a'; i < total_number_letters; i++, ch++) {
    		printf("%c - %d\n", az_AZ_alphabet[i], alphabet_matches[i]);
    
    		//Вставляет пустую строку после строчных букв
    		if (i == number_letters - 1)
    			printf("\n");
    	}
    
    	free(str);
    
    	return 0;
    }

    Один из пользователей LORa...

    accu, 08 Ноября 2015

    Комментарии (8)