@ElectroEvolution

Почему в командной строке выводится неправильный результат?

Компилирую код и мне выдает какую-то непонятную хрень. Пытался гуглить,но по моим запросам ничего толкового не нашел...
#include <stdio.h>

main()
{
    //обьявление и определение некоторых переменных
    char firstInitial, middleInitial;
    int number_of_pencils;
    int number_of_notebooks;
    float pencils = 0.23 ;
    float notebooks = 2.33;
    float lunchbox = 4.99;
    //информация для первого ребенка
    firstInitial = 'J';
    middleInitial = 'R';
    number_of_pencils=7;
    number_of_notebooks=5;
    //выводимый результат для первого ребенка
    printf("%с%с need %d pencils and %d notebooks and 1 luchbox \n",firstInitial, middleInitial,number_of_pencils, number_of_notebooks);
    printf("Total cost is %.2f \n", number_of_pencils*pencils + number_of_notebooks*notebooks+lunchbox);
    //информация для второго ребенка
    firstInitial = 'M';
    middleInitial = 'J';
    number_of_pencils=10;
    number_of_notebooks=3;
    //выводимый результат для второго ребенка
    printf("%c%c needs %d pencils and %d notebooks and 1 lunchbox \n",firstInitial, middleInitial, number_of_pencils, number_of_notebooks);
    printf("The total cost is $%.2f \n", number_of_pencils*pencils+number_of_notebooks*notebooks+lunchbox);
    return 0;

}


Со вторым ребенком все хорошо.И инициалы показывает и правильно показывает количество ручек и блокнотов,а вот с первым ребенком что-то не то...Вот фото:
b98c114a8c754c6b900e377a9ee8aa3a.png
Что это и как исправить?
  • Вопрос задан
  • 171 просмотр
Пригласить эксперта
Ответы на вопрос 2
У вас там в %c русская c вместо латинской c.
Ответ написан
dio4
@dio4
team leader, system engineer, master of sports
Ошибка в строке
printf("%с%с need %d pencils and %d notebooks and 1 luchbox \n",firstInitial, middleInitial,number_of_pencils, number_of_notebooks);
в том, что вы ее скопировали видимо из pdf файла (или какие то символы служебные нечаянно набрали в русской раскладке) и там присутствуют символы, которых там быть не должны. ПЕРЕПИШЕТЕ ее руками внимательно в англ. раскладке и все будет хорошо :)
У меня все прошло и вот вывод (скриншот прилагаю):
$ ./tmp
JR need 7 pencils and 5 notebooks and 1 lunchbox
Total cost is 18.25
MJ needs 10 pencils and 3 notebooks and 1 lunchbox
The total cost is $14.28

0cbb395b69db4011ab0c8566a73eadf0.png
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы