1. Си / Говнокод #17787

    +136

    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
    printf("Enter item code: ");                                        //Prompts user
    scanf ("%14s", codenew1);                                           //Read user input
    len = strlen(codenew1);                                             //Read each character into variable len
    
    while (len != strspn(codenew1, "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"))
    {
        printf ("Name contains non-alphabet characters. Try again!: "); //Prompts user to try again
        scanf ("%14s", codenew1);                                       //Reads user input
        len = strlen(codenew1);                                         //Read each character into variable len
    }                                                                   //Endwhile
    strncpy(codenew, codenew1,2);                                       //Copy the first two characters from the variable codenew1
    codenew[2] = 0;                                                     //Store first two characters into variavle codenew
    
    for ( j = 0; j < num_items; j++)                                    //Loop for num_items times
    {                                                                   //Beginning of for loop
        if (strcmp(array[j].code1, codenew) == 0)                       //If codenew is found in file
        {                                                               //Beginning of if statement
            price[i] = item_qty[i] * array[j].price1;                   //Calculating the price of an item
            printf("Price : %d", price[i]);                             //Prints price
            printf("\nEnter '%s' to confirm: ", array[j].itemname1);    //Confirming the item
            scanf("%19s", item_name1[i]);
            while (strcmp(item_name1[i], array[j].itemname1 )!=0)       //Looping until both item names are the same
            {                                                           //Begin while loop
                printf("Item name is not %s ,Try Again!: ", array[j].itemname1);    //Prompt user to try again
                scanf ("%19s", item_name1[i]);                              //Reads item name into an array
                len = strlen(item_name1[i]);                                //Reads each character into variable len
            }                                                               //End while loop
            len = strlen(item_name1[i]);                                    //Read each character into variable len
            while (len != strspn(item_name1[i], "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"))    //While len contains non alphabetic characters
            {                                                                       //Beginning while
                printf ("Name contains non-alphabet characters. Try again!: ");     //Prompts user to try again
                scanf ("%19s", item_name1[i]);                                      //Read user input
                len = strlen(item_name1[i]);                                        //Read each character into variable len
            }                                                                       //End while
            strncpy(item_name[i], item_name1[i], 20);                               //Copy the first two characters from the variable codenew1
            item_name[i][20] = 0;                                                   //Store first 20 characters in variable item_name[i]
            total_price+= price[i];                                     //Calculate total price
            break;                                                      //Terminates loop
        }                                                               //End of if statement
        else 
            if (strcmp(array[j].code1, codenew) != 0)                       //If codenew is found in file
            {
                printf("Invalid input! Try again.");
                goto Here;
            }
    }                                                           //End of for loop

    Бесценные комментарии!
    http://stackoverflow.com/questions/29045067/error-check-files

    Запостил: myaut, 14 Марта 2015

    Комментарии (34) RSS

    • Да ладно, человек все правильно сделал: пошел с лабой на правильный форум, чтобы ему подсказали, что не так. Более того, видно что старается и хочет понять, что делает. Больше бы таких было.
      Ответить
    • Код недостаточно прокомментирован. Нужно добавить комментарии к строкам 5, 6, 21, 40, 42-45.
      Ответить
      • фак, 2k символов максимум. deleted.
        Ответить
      • 4, 8, 15, 16, 23, 42
        Ответить
        • 108
          Ответить
        • Ты смотрел этот сериал?
          Ответить
          • А из какого сериала эти числа?
            Ответить
            • Помнишь тред про андроидные константы типа плотность Звезды Смерти? Вот там был про island еще разговор. А сериал - Lost. Я даже его посмотреть успел с тех пор :)
              Ответить
            • LOST

              имбанутый сериал - сначала сценаристам кололи хороший, годный героин, и в первых 2 сезонах был сюжет - АХТЫЖЕБАНЫЙТЫНАХУЙ! А потом героин кончился и началось уныние. Эпичен тем, что в в последних сезонах фактически не раскрываются загадки унд тайны появившиеся в ранних сезонах
              Ответить
              • А что например не раскрыто? Задавай вопросы)))
                Ответить
                • почему на ноге 4 пальца?
                  Ответить
                  • Ты про статую? Тебе не пофиг? Экономили время как аниматоры диснея Такие гигантские статуи ставятся на берегу для устрашения. От увиденного кровь стынет в жилах, так что свою функцию оно выполняет.
                    Ответить
                    • Ты про х? Тебе не пофиг?

                      универсальный ответ
                      Ответить
                      • Универсальный, но я его все же развернул на частное
                        Ответить
                        • это всё твои личные додумки. Где конкретно в сериале объяснения про 4 пальца?
                          Ответить
                          • В сериале не стали объяснять очевидные вещи. Это стиль авторов. Ты заметил бы, будь чуть внимательнее.
                            Ответить
                            • Тебе просто стремно, что ты досмотрел его до конца, не так ли?
                              Ответить
            • This is a most useful cotoributinn to the debate
              Ответить
            • I feel <a href="http://kokuaeytgz.com">satefsiid</a> after reading that one.
              Ответить
            • This is just the pefrcet answer for all of us http://oubghvcmt.com [url=http://coeqnktpeub.com]coeqnktpeub[/url] [link=http://ugirbzwgqyd.com]ugirbzwgqyd[/link]
              Ответить
      • Great common sense here. Wish I'd thohgut of that.
        Ответить
      • I'm <a href="http://lrgtgtd.com">shkeocd</a> that I found this info so easily.
        Ответить
      • With all these silly wetesbis, such a great page keeps my internet hope alive. http://exxqws.com [url=http://jtfbbyoqn.com]jtfbbyoqn[/url] [link=http://hkprbosdo.com]hkprbosdo[/link]
        Ответить
      • Hey, you're the goto exrpet. Thanks for hanging out here. http://eicjivqi.com [url=http://ezcupgoswlq.com]ezcupgoswlq[/url] [link=http://otkalljozva.com]otkalljozva[/link]
        Ответить
    • Предлагаю ввести флаг в компилеры типа
      -Wmaximum-pedantic или -Wperfectio
      который будет пиздеть, если форматирование сползло или какая-то строчка непрокомментирована.
      Ответить
      • -WperfectIO - это для функциональных языков. Есть ввод-вывод в программе - на тебе сотню строк гневных ругательств.
        Ответить
    • вспоминаю ебанутого препода, с его не менее ебанутым требованием комментировать каждую строку, даже пустую
      Ответить
      • вспоминаю в смысле сдавал сегодня?
        Ответить
      • # Это пустая строка, разделяющая блоки
            # Это пустая строка, отделяющая предыдущий комментарий от кода.
            # Это пустая строка, отделяющая предыдущий комментарий от кода.
            # Это пустая строка, отделяющая предыдущий комментарий от кода.
         <---cut--->
        Ответить
        • #define true false // заменяет true на false. Добавил Иванов А.А. ([email protected]) 16.02.2015 в ревизии 5308 в отместку своему боссу Петрову Х.У. ([email protected]) за отмену премии в январе 2015 по причине некомментирования тридцати двух пустых строк в файлов с исходным кодом проекта "Сапоги онлайн" (cano.ru) в ревизиях 22, 70, 98, 136, 169, 459, 478, 529, 556, 701, 752, 768, 853, 854, 871, 942, 999, 1007, 1054, 1114, 1130, 1138, 1202, 1247, 1272, 1288, 1406, 1408, 1494, 1504, 1573, 1610, 1618, 1671, 1690, 1691, 1727, 1783, 1858, 1869, 1991, 2128, 2263, 2266, 2294, 2395, 2419, 2441, 2475, 2483, 2523, 2559, 2579, 2599, 2623, 2671, 2716, 2719, 2835, 2869, 2880, 3025, 3112, 3123, 3156, 3159, 3267, 3319, 3518, 3639, 3663, 3675, 3706, 3738, 3815, 3837, 3922, 3939, 4025, 4027, 4076, 4104, 4210, 4285, 4327, 4358, 4367, 4396, 4400, 4509, 4519, 4567, 4605, 4632, 4647, 4673, 4691, 4719, 4764, 4816, 4817, 4892, 5010, 5012, 5014, 5039, 5058, 5065, 5081, 5159, 5215.
          Ответить

    Добавить комментарий