Последние новости

YoungCoder теперь и на Stepikе. Записывайтесь: https://vk.cc/75rISy

Чтобы записаться на курс, необходимо зарегистрироваться на Степике: https://vk.cc/75rIC4

Это моя личная ссылка-приглашение на Stepik для вас. Регистрируясь по этой ссылке, записываясь на курсы и решая задачи, Вы помогаете автору данного сайта принять участие в конкурсе платформы Stepik! Подробности конкурса здесь: https://vk.cc/75rKuS

пятница, 28 января 2011 г.

Занятие 2.Стандартные типы данных.Переменные.Основы ввода и вывода данных.Уроки программирования для чайников.Язык Си.

Доброго времени суток!
В этом уроке программирования для начинающих, поговорим о типах данных используемых в программах на С/С++. Разберемся с таким понятием как переменная, и научимся их использовать, немного коснемся темы ввода и вывода данных.
Начинаем!

Прочитайте улучшенную версию этого урока "Простые типы данных".

В новой версии:

  • Ещё более доступное объяснение
  • Дополнительные материалы
  • Задачи с автоматической проверкой решения



Каждая мало-мальски сложная программа производит некоторые операции с данными. Что бы использовать данные их надо где-то хранить. Для этого используется память компьютера. Память компьютера в простейшем своем представлении разбита на ячейки, в них и записываются данные.Каждая такая ячейка имеет свой адрес, компьютер именно так и различает их между собой. Человеку же адресами оперировать неудобно. Поэтому для того что бы использовать их и как-то различать между собой им присваиваются имена. 



Переменная это область в памяти компьютера с определенным именем и хранящемся в ней значением.

Во время исполнения программы значение в переменной может изменяться. Если в переменную записывается новое значение, то старое безвозвратно стирается.


Теперь остановимся на типах данных используемых в языке программирования Си
В одну и туже область памяти можно занести разные значения, например, 3, "три" и т.п. Для нас с вами запись 3+2 и "три плюс два" несут одинаковую смысловую нагрузку, компьютеры же, пока, не настолько умны что бы это понять (и вообще они только 0 и 1 оперируют). Поэтому в каждом языке программирования есть различные типы данных, используемые для различных значений.

В языке программирования Си существует несколько встроенных "базовых" типов данных для хранения различных данных. Основные типы, это целые числа, вещественные числа, и символы.  
Для хранения целых чисел  используется встроенный тип данных int, вещественных чисел - типы float и double, символов - тип char.


Каждый их этих типов данных занимает в памяти определенный размер памяти.В зависимости от этого в них могут храниться разные максимальные значения. Следует ориентироваться на следующие показатели (вообще говоря это зависит от компьютера и компилятора)
-128 <= char <= 127

-2147483648 <= int <= 2147483647

+-3.4*10^-38 < float +-3.4*10^+38
Тип double называется тип с двойной точностью, там можно хранить еще большие вещественные числа.


Как уже отмечалось в первом уроке. Прежде чем использовать переменную в программе её необходимо объявить!
Разберемся с форматом объявления переменных в языке программирования Си. Он выглядит следующим образом.

<тип_переменной> имя_переменной;

Например:

Листинг 2.1

int b; // переменная b  целого типа

float t; // переменная t вещественного типа

char w; // переменная w символьного типа


Внимание! Здесь и далее я не буду по возможности писать полный код программы. Т.е. подключаемые заголовочные файлы, заголовок функции main.Это как бы выдержка из кода.


Кстати, в одном объявлении можно сразу объявить несколько переменных, например так

Листинг 2.2
int a,c; // переменная a и переменная c целого типа

И не обязательно две, хоть 5 сразу.
Теперь, после того как переменные объявлены их надо инициализировать, т.е. присвоить им какие то значения. Для этого используется оператор присваивания "=".

Листинг 2.3
int a; // переменная a целого типа
a=5; // присваиваем переменной a значение 5. Теперь в ней записано 5.

Переменные можно инициализировать прямо во время описания, например так:

Листинг 2.5

int a=4;
float b=5.4 , c=3.1;

Стандартные функции ввода/вывода данных языка Си.


Для вывода как мы уже знаем используется стандартная функция printf(); Вот её формат:
printf("формат-строка", данные для вывода); 
Для её использования необходимо подключить заголовочный файл stdio.h. Про подключение заголовочных файлов вы можете узнать из первого урока программирования для начинающих


Формат-строка это строка для вывода на экран со специальными управляющими символами. Рассмотрим следующий код:

Листинг 2.6

#include <stdio.h>
int main(void
{

   int a, b;
   a=5;
   b=7;
   printf("V peremennoi a znachenie %d, a v drugoi %d ", a,b); 

   return(0);
}


Все символы заключенные в двойные кавычки кроме управляющих последовательностей (начинаются с символа \, например: \n) , и специальных символов ( начинаются с символа %) выводятся на экран. Специальные символы во время выполнения заменяются на значения переменных, указанных после формат-строки.первый специальный символ заменяется на первую переменную, второй - на вторую, и т.д. 
Вот что будет после после выполнения программы выше: 

В переменной a значение 5 , а в другой переменой 7


Для вывода различных данных используются различные специальные символы. 
Вот основные из них:
%d - для целого числа 
%f - для вещественного числа
%c - для одного символа


Существуют некоторые требования которые должны быть выполнены, иначе программа не будет скомпилирована:

  1. Количество специальных формат-символов должно совпадать с количеством переменных.
  2. Типы данных формат-символов и типы выводимых переменных должны совпадать.

Вот пример НЕ правильного использования:


Листинг 2.7

#include <stdio.h>
int main(void
{

int a=4;
float b=5.4 , c=3.1;
printf("celaya peremennaya %f ",a); // несовпадение типов %f-для                 
                                    // вещественных 
                                    // чисел, a-целая переменная
printf("%d ",a, b); //не объявлен формат символ для b

return(0);
}


До сих пор, мы прямо в тексте программы записывали данные. А что если нам надо самому вводить данные в программу с клавиатуры? Для этого используется стандартная функция scanf();
Она имеет следующий формат: 
scanf("формат строка ввода", адреса переменных); 

Что бы её использовать надо подключить заголовочный файл stdio.h.
В формат строке указываются формат-символы вводимых данных, а далее после запятой следуют адреса переменных в которые необходимо записать данные. Вы спросите, а где нам взять адреса? Это очень просто, для этого используется специальный оператор "&".
Например:


Листинг 2.8

#include <stdio.h>
int main(void
{
int a,b;
printf("Vvedite dva chisla cherez probel");
scanf("%d %d", &a,&b);
return(0);
}


Сначала мы объявили две целые переменные, потом вывели строку-подсказку для пользователя, о том что необходимо ввести два числа. И далее считали введенные данные в переменные a и b.  Теперь мы можем их использовать по своему усмотрению.Для этой функции такие же ограничения как и для функции printf.


Ну вот на этом мы и закончим наш очередной урок программирования на Cи для начинающих.

Резюме урока:
  • научились объявлять и инициализировать переменные.
  • научились использовать оператор присваивания
  • узнали об типах данных используемых в Си
  • познакомились в первом приближении со стандартными функциями ввода/вывода данных в Си.

Задание для практической работы.
  1. Разберитесь окончательно с оператором присваивания и с объявлением и инициализацией переменных. 
  2. Перепишите программу Листинг 2.6 и посмотрите как она работает. На её основе поэкспериментируйте с количеством выводимых на экран переменных их их типами.
  3. Перепишите программу Листинг 2.7, посмотрите как отреагирует на ошибки ваш компилятор, и будут ли они вообще. Потом исправьте в ней ошибки так, чтобы она работала корректно. Правильно выводила данные на экран монитора.
  4. Пусть имеется:   int a=4; float b=6.7, c=4.92;  Напишите,  как будет выглядеть функция printf, для того чтобы на мониторе появилось   c=4.92 a=4 b=6.7
  5. Напишите следующую программу.Пользователь сначала вводит два числа одно целое другое вещественное. На экран должна выводиться следующая строка: Vi vveli  pervoe A, vtoroe B, sohraneno C. Где A целое число введенное пользователем с клавиатуры, B - вещественно число введенное пользователем с клавиатуры, С - любое вещественное число, заданное в коде программы.

Задачи с автоматической проверкой решения из новой версии курса.
Задачи на типы данных.

Задачи на объявление переменных.
Задачи на оператор присваивания.

Если Вам понравился этот урок, расскажите о нем вашим друзьям. В этом  Вам могут помочь кнопки основных социальных сетей, расположенные ниже. Вам остается всего лишь кликнуть по любой из них.


В связи с тем, что комментариев к уроку стало слишком много и blogspot как-то некорректно стал их отображать. Я убираю возможность добавления комментариев к этому уроку. Если возникают вопросы их можно задавать в комментах в новой версии урока на сайте на сайте

277 комментариев :

  1. Задание2
    //were
    #include
    int main(void)
    {
    int a,b,c;
    printf(" 1 2 3 ");
    scanf(" %d %d %d ", &a,&b,&c);


    return(0);
    }
    Остальное напишу завтра...

    ОтветитьУдалить
  2. Здравствуйте Камиль. Второе задание неправильно. Посмотрите внимательнее, что нужно сделать. =)

    ОтветитьУдалить
  3. Задание 2 попытка 2
    //proba
    #include
    int main(void)
    {
    int a=1,b=2,c=3;
    float d=5.5,f=6.7;
    printf("%d,%d,%d,%f,%f",a,b,c,d,f);
    return(0);
    }

    ОтветитьУдалить
  4. //2.7
    #include
    int main(void)
    {
    int a=4;
    float b=5.4,c=3.1;
    printf(" %d ",a);
    printf("%f %f",b,c);
    return(0);
    }

    ОтветитьУдалить
  5. //Задание 4
    #include
    int main(void)
    {
    int a=4;
    float b=6.7,c=4.92;
    printf("%f %d %f",c,a,b);
    return(0);
    }

    ОтветитьУдалить
  6. //Задание 5
    #include
    int main(void)
    {
    int a=21;
    float b=1.2,c=20.12;
    printf("Vivveli pervoe %d, vtoroe %f, sohraneno %f ",a,b,c);
    return(0);
    }

    ОтветитьУдалить
  7. [stdio.h] во всех случаях как надо не отображается в комментах.

    ОтветитьУдалить
  8. Здравствуйте Камиль.
    Задание 2. Всё нормально.
    Задание 3. Всё нормально.
    Задание 4. Работает, но не так как требуется. Формат выходных данных не совпадает с тем, который задан. Старайтесь делать именно то, что требуется в задании, не больше и не меньше.
    "c=4.920000 a=4 b=6.700000"

    Задание 5. Вот тут уже с форматом всё в порядке, но выполнено не всё задание. Где же ввод с клавиатуры?

    Давайте условимся, что имена подключаемых библиотек вы будете писать в "", например:
    #include "stdio.h" Такой формат для подключения используется, если необходимо подключать не файлы стандартной библиотеки, а например свои собственные *.h файлы. Но об этом еще я напишу позднее. =)

    ОтветитьУдалить
  9. //Задание4v2
    #include "stdio.h"
    int main(void)
    {
    int a=4;
    float b=6.7,c=4.92;
    printf("c=%f a=%d b=%f \n",c,a,b);
    return(0);
    }

    ОтветитьУдалить
  10. //Задание5v2
    #include "stdio.h"
    int main(void)
    {
    int a;
    float b,c;
    c=1.234567;
    scanf("%d %f", &a,&b);
    printf("Vivveli pervoe %d, vtoroe %f, sohraneno %f\n",a,b,c);
    return(0);
    }

    ОтветитьУдалить
  11. Да, всё хорошо. Оба задания правильно.

    ОтветитьУдалить
    Ответы
    1. здравствуйте. решил маленько усложнить, ошибки подправил но файл не запускается
      #include
      int main(void)

      {
      int a;
      float b, c;
      c = a + b;

      printf("Vvedite celoe chislo");

      scanf_s("%d, &a" );
      printf("Vvedite veshestvennoe chislo");
      scanf_s("%d, &b");

      printf("Vi vveli pervoe %d, vtoroe %f, sohraneno %f", a,b,c);

      return(0);
      }

      Удалить
  12. Здравствуйте. Спасибо большое вам за уроки. А можно проверить? 5-е задание. Так верно? Посмотрела чужие комменты - не очень поняла, к сожалению(

    //третья программа
    #include
    int main(void)
    {
    int a=4;
    float b=5.700000;
    printf ("Vi vveli pervoe %d, vtoroe %f, sohraneno %f ", a, b, b);

    return (0);
    }

    ОтветитьУдалить
  13. Здравствуйте Милана. Спасибо за теплые слова, мне приятно.
    Проверить можно.
    Нет, неправильно. В вашей программе переменные a и b заданы в коде программы. А по условию их должен ввести пользователь с клавиатуры, используя функцию стандартного ввода scanf. И только переменная с должна быть задана в программе. Исправьте свою программу, и покажите что у вас получилось.

    Теперь в общем, о программе.
    Если задаете вещественное число, то необязательно писать ему все нули, достаточно просто написать 5.7, а когда программа будут выводить на экран число, то она как раз так и выведет. Это уже кусочек следующего занятия, в котором рассказывается подробно про ввод и вывод.
    Главное, что вроде бы вы разобрались с форматным выводом. В вашей программе, каждому специальному символу соответствует переменная нужного типа. Это хорошо.
    Теперь про подключаемые библиотеки. Давайте условимся, что здесь, в комментариях, имена подключаемых библиотек вы будете писать в "", например:
    #include "stdio.h" Такой формат для подключения используется, если необходимо подключать не файлы стандартной библиотеки, а например свои собственные *.h файлы. Но об этом еще я напишу позднее.
    Иначе они не отображаются.

    ОтветитьУдалить
  14. Попыталась исправить. Так она работает не совсем верно. Первое число вводится правильно, а второе почему-то выглядит "0.0000"

    #include "stdio.h"
    int main(void)
    {
    int a;
    float b, c;
    c=5.4;
    scanf ("%d %d", &a,&b);
    printf ("Vi vveli pervoe %d, vtoroe %f, sohraneno %f ", a, b, c);
    return (0);
    }

    ОтветитьУдалить
  15. Добрый день Милана. Ход мыслей правильный.Только у вас ошибка опять. Вы объявляете b как вещественную переменную, а значение читаете как целое, используя "%d", надо использовать %f.

    ОтветитьУдалить
  16. Здравствуйте, спасибо за комментарий, действительно, постараюсь быть внимательнее:)

    ОтветитьУдалить
  17. Добрый времени суток Милана. Постарайтесь. А пока, что напишите код своей исправленной программы. Давайте условимся, что если задаете вопрос и мы разбираем вместе программу, то итогом должен стать, комментарий с текстом вашей программы, на что я должен ответить, что решение правильное и засчитано. Чтобы обратная связь была. =)

    ОтветитьУдалить
  18. Очень поучительно! ;-), мне понравились уроки! Спасибо!!! Всё понятно так! =))

    ОтветитьУдалить
  19. Как хорошо, что я вот так случайно попал на этот сайт! ;)

    ОтветитьУдалить
  20. Спасибо. Приятно осознавать, что тружусь не в пустую.

    ОтветитьУдалить
  21. Мне тоже понравились Ваши уроки.

    ОтветитьУдалить
  22. Задание 3
    #include
    int main(void)
    {
    int a;
    float b,c;
    a=4,b=6.700000,c=4.920000;
    printf("Vivveli pervoe a=%d, vtoroe b=%f, sohraneno c=%f",a,b,c);
    return(0);
    }

    ОтветитьУдалить
  23. Здравствуйте Наталья. Спасибо за лестный отзыв. Мне приятно. Но программу к сожалению вы написали неверно. Ошибка такая же как у Миланы. Прочитайте мой комментарий (от 31 октября 2011 г. 3:24) для неё и исправьте свою программу.

    ОтветитьУдалить
  24. Задание 5
    #include
    int main(void)
    {
    int a;
    float b,c;
    c=4.92;
    printf("Vvedite dva hisla");
    scanf("%d,%f",&a,&b);
    printf("Vivveli pervoe a=%d, vtoroe b=%f, sohraneno c=%f",a,b,c);
    return(0);
    }
    Тогда такой вариант.

    ОтветитьУдалить
  25. Наталья, да. Именно так. Хорошо. =)

    ОтветитьУдалить
  26. #include ;
    int main(void)
    {
    int A;
    float B , C;
    C=4.500;
    scanf("%d %f", &A,&B);
    printf("Vi vveli pervoe %d, vtoroe %f, sohraneno %f ", A,B,C);
    return(0);
    }

    ОтветитьУдалить
    Ответы
    1. Да, верно. Только после подключения библиотек не стоит ставить ;
      И когда копируйте в комменты решение, вместе вместо скобок больше и меньше ставьте кавычки, чтобы все отображалось. Вот так: #include "stdio.h"

      Удалить
  27. я прочитал задание 6 когда делал 5 ) поэтому только 5ое задание) вот:
    Задание 5 :
    #include
    int main(void)
    {
    int a,c;
    c=4;
    float b;
    printf("Vvedite dceloe chislo potom desytichnoe cherez probel\n");
    scanf("%d %f", &a,&b);
    printf("ti vvel pervoe %d, vtoroe %f, sohraneno %d\n " ,a,b,c);
    return(0);

    ОтветитьУдалить
    Ответы
    1. Добрый день.
      Программа работает, но не выполнено задание. Формат выходной не такой. " На экран должна выводиться следующая строка: Vi vveli pervoe A, vtoroe B, sohraneno C. Где A целое число введенное пользователем с клавиатуры, B - вещественно число введенное пользователем с клавиатуры, С - любое вещественное число, заданное в коде программы."

      Обратите внимание, что переменная C должна быть вещественного типа, а не целого.

      Удалить
  28. Автору респект) вы так хорошо все объясняете )
    мне 14 лет и меня все это заинтересовало ) надеюсь в будущем стать хорошим программистом)

    ОтветитьУдалить
  29. Здравствуйте! У меня не работает программа - что не так?
    #include "stdio.h"

    int main()
    {
    int a;
    float b,c=1.1234;
    printf ("Введите сначало целое число, а потом вещественное\n");
    scanf("%d %f", &a,&b);
    printf ("Вы ввели первое %d, второе %f , сохранено %f", a,b,c);
    return 0;
    }

    ОтветитьУдалить
    Ответы
    1. #include "stdafx.h"

      int main()
      {
      int a;
      float b,c=1.1234;
      printf ("Vvedite snachala celoe chislo, a potom veschestvennoe \n");
      scanf("%d %f",&a,&b);
      printf("Vi vveli pervoe %d, vtoroe %f, sohraneno %f",a,b,c);
      return (0);
      }
      stdafx.h в моей версии заменяет stdio.h, в вашем коде ошибок нет, однако я отредактировал некоторые его - не совсем корректные - участки. вероятно у вас просто другая версия программы Visual Studio или Borland. Можете попытаться заменить stdio.h на stdafx.h.

      Удалить
    2. Странно. Все должно работать, и работает у меня. Напишите ошибки, которые выдает компилятор.

      Удалить
  30. я не понял для чего нужно-/n

    ОтветитьУдалить
    Ответы
    1. Громов Дмитрий18 марта 2012 г., 17:19

      \n это грубо говоря переход на новую строку,
      попробуй напиши с \n и без. Увидишь разницу

      Удалить
    2. Дмитрий, всё правильно ответил. В следующем уроке об этом рассказано более подробно. И есть примеры других управляющих последовательностей.

      Удалить
  31. Громов Дмитрий18 марта 2012 г., 16:44

    ЗАДАНИЕ НОМЕР 5
    #include
    int main(void)
    {
    int a;
    float b, c=6.32;
    printf("napishite cherez probel celoe i veshestvennoe chislo");
    scanf("%d %f", &a,&b);
    printf("a=%d b=%f C=%f", a,b,c);
    return(0);
    }

    Все верно?

    ОтветитьУдалить
    Ответы
    1. Фурычит, молодец! Только приучай себя строгому выполнению задания.
      printf("a=%d b=%f C=%f", a,b,c);
      Немного не то, что должно выводится по заданию.

      И в строчке printf("napishite cherez probel celoe i veshestvennoe chislo") управляющий символ \n забыл, это конечно не повлияет на работу программы, визуальней будет смотреться лучше.

      Удалить
    2. Программа работает, но не так как написано в условии. Соблюдайте формат. =)

      Удалить
  32. Вот посмотрите плиз)

    Задание № 2

    #include
    int main(void)
    {
    int a,b;
    float c,d;
    char e;
    a=78;
    b=42;
    c=32.4;
    d=42.4;
    e=1;
    printf("V peremennoi a znachenie %d \n v peremennoi b znachenie %d \n v peremennoi c znachenie %f \n a v peremennoi d znachenie %f \n i v peremennoi e znachenie %c \n",a,b,c,d,e);
    return(0);
    }

    Задание № 3

    #include
    int main(void)
    {

    int a=4;
    float b=5.4 , c=3.1;
    printf("celaya peremennaya %d \n",a);
    printf("%f %f",b,c);
    return(0);
    }

    Задание № 4

    #include
    int main(void)
    {

    int a=4;
    float b=6.7, c=4.92;
    printf("c=%f a=%d b=%f \n",c,a,b);
    return(0);
    }


    Задание № 5

    #include
    int main(void)
    {
    int a;
    float b;
    float c=3.5;
    scanf("%d %f", &a,&b);
    printf("Vi vveli pervoe %d;vtoroe %f,sohraneno %f",a,b,c);
    return(0);

    }

    Всё верно?

    ОтветитьУдалить
  33. Задание для практической работы.
    4.
    //код
    main()
    {
    int a=4;
    float b=6.700000, c=4.920000;
    printf("c=%f a=%d b=%f\n",c ,a ,b);
    }

    5.
    //код
    main()
    {
    int a;
    float b, c=4.920000;
    printf ("Vvedite a prostoe,b vewestvennoe\n");
    scanf("%d%f",&a,&b);
    printf("Vi vveli pervoe A=%d, vtoroe B=%f, sohraneno C=%f",a, b, c);
    }

    ОтветитьУдалить
    Ответы
    1. Ок, все хорошо. Формат только другой в последнем задании. Надо было так: "Vi vveli pervoe %d, vtoroe %f, sohraneno %f"

      =) Спасибо, что помогаете мне.

      Удалить
  34. Очень понравились ваши уроки. Пробовал начинать изучать язык Си по книге Керигана и Риччи, но там для новичка очень тяжело, я уже хотел забросить изучать этот язык, когда случайно нашел ваш сайт, где все разжовуется, каждое определение, а это очень важно для новичка, который никогда раньше ничего не слышал о программировании. Огромное спасибо. Далее привожу выполненые задания, но просмотрев другие отзывы, вижу, что ошибок у меня не должно быть.
    //Task 2

    #include
    int main (void)
    {
    int a,b;
    float c;
    char d;
    a=5;
    b=7;
    c=3.45;
    d=2;
    printf("Puting number a - %d, the second b - %d, the third c - %f, the fourth d - %c\n", a,b,c,d);
    return (0);
    }

    //Task 3

    /*#include
    int main (void)
    {
    int a=4;
    float b=5.4, c=3.1;
    printf("Hole number %d ", a);
    printf("%f %f\n",b,c);
    return(0);

    }*/

    //Task 4

    /*#include
    int main (void)
    {
    int a;
    a=4;
    float b,c;
    b=6.700000;
    c=4.920000;
    printf("c=%f a=%d b=%f\n", c,a,b);
    return (0);
    }*/

    //Task 5

    /*#include
    int main (void)
    {
    int a;
    float b,c=4.5;
    scanf("%d %f",&a,&b);
    printf("You put first %d, second %f, saved %f\n",a,b,c);

    return (0);
    }*/

    ОтветитьУдалить
    Ответы
    1. Спасибо за добрые слова. Мне приятно.
      Следите за форматом вывода. =)

      Удалить
  35. Спасибо за урок, за то, что вы есть.....
    подскажите, пожалуйста, почему у меня, когда я объявляю переменную символьного типа, после запуска скомпилированного проекта отображается не значение этой заданной переменной, а какой-то иероглиф???
    НАПРИМЕР:
    #include "stdio.h"
    int main (void)
    {
    char a;
    a=2;
    printf("a=%c\n", a);
    return (0);
    }
    Место 2 на экране отображается иероглиф.

    ОтветитьУдалить
  36. Добрый вечер.

    Вы выводите переменную "а" как символ, используя спецификатор %c. Если хотите получить число, используйте, например, спецификатор %d.

    ОтветитьУдалить
  37. Доброго времени суток!
    я сомневаюсь в правильности моей программы (конкретно в ответе), меня смущает то-что любое вводимое (с клавиатуры) вещественное число в ответе начинается примерно так:
    -107374176.000000.
    почему не отображается то число которое я ввел?
    спасибо.
    и собственно сома программа:
    #include
    int main (void)
    {
    int a;
    float b,c;
    c=2.340000;
    scanf("%d, %f", &a, &b);
    printf("Vi vveli %d, vtoroe %f, soxraneno %f",a,b,c);
    return(0);
    }

    ОтветитьУдалить
  38. Здравствуйте.
    В формат строке вы пишите "%d, %f" Следовательно, при вводе необходимо поставить запятую между числами. Ваша проблема устранится.=)

    ОтветитьУдалить
  39. #include
    int main(void)
    {
    int a;
    float b,c=14.88000;
    scanf("%d,%f" ,&a,&b);
    printf("Vi vveli pervoe %d,vtoroe %f,Sohraneno %f" ,a,b,c);
    return(0);
    }
    pravilno li ya napisal? :)

    ОтветитьУдалить
  40. Задание пять
    //prgm
    #include
    int main(void)
    {
    int a;
    float b, c=3.2;
    printf ("Vvedite dva chisla cherez probel \n(pervoe-prostoe, vtoroe-veshestvennoe) i nazhmite enter \n");
    scanf ("%d \n %f", &a,&b);
    printf ("Vi vveli pervoe %d, vtoroe %f, sohraneno %f \n",a,b,c);
    return(0);
    }

    ОтветитьУдалить
  41. Здраствуйте
    Только начинаю учиться и много ничего не понимаю
    Создаю файлы в visual c++ 2008
    Первый файл hello world работал нормально но вот что то произошло и компьютер не может выполнить построение всех файлов , тк пишет что main уже определен в hello world.obj
    Что делать? Помогите!

    ОтветитьУдалить
    Ответы
    1. Вы создавали новый проект для нового урока?

      Удалить
  42. 6ое задание - высший пилотаж )

    2.
    #include <"stdio.h">
    int main (void)
    {
    int a,b,u=8;
    a=5;
    b=7;
    printf("V peremennoi a znachenie %d, a v drugoi %d, a v moei - %d\n", a,b,u);
    return(0);
    }

    3.
    #include <"stdio.h">
    int main(void)
    {
    int a=4;
    float b=3.1, c=5.4;
    printf("Celoe chislo a - %d,\n", a);
    printf("%d i %f \n", a, b);
    return(0);
    }

    4.
    #include <"stdio.h">
    int main(void)
    {
    int a=4;
    float b=6.7, c=4.92;
    printf("c=%f a=%d b=%f \n",c,a,b);
    return(0);
    }

    5.
    #include <"stdio.h">
    int main(void)
    {
    int a;
    float b, c;
    c=2.5235;
    scanf("%d %f",&a,&b);
    printf("Vi vveli pervoe A=%d, vtoroe B=%f, sohraneno C=%f \n", a,b,c);
    return(0);
    }

    В пятом задании оказалось очень важно вводить вещественное число через точку, а не через запятую, так как иначе число округлялось. Долго с этим мучилась.

    Вопрос:
    Как менять проекты в VisualStudio2005 не выходя из программы и открывать код файла *.cpp? Я пользовалась Файл - Открыть - Проект, при этом открывался проект, но файл с кодом было не найти.. тогда приходилось искать его в проводнике виндоус и уже из проводника запускать, тогда он открывался и показывал код. А если открыть код, но не открыть проект, то и вообще на Ctrl+F5 выдаст результат программы проекта, а не показанного на экране кода.

    ОтветитьУдалить
  43. Вроде осилил.Спасибо Вам.
    #include
    int main(void)
    {
    int a;
    float b,c;

    c=4.920000;

    printf("vvedite chislo A,teper B cherez probel i posle vvoda poslednego enter \n");
    scanf("%d %f",&a,&b);
    printf("vi vveli pervoe %d vtoroe %f sohraneno %f \n",a,b,c);
    return(0);
    }

    ОтветитьУдалить
  44. Здравствуйте, так как я будущий специалист, я решила поучиться у вас))) Все понятно, и без замудренных слов. Спасибо за это) Вот мое д/з №4
    #include
    #include
    int main()
    {
    int a=4;
    float b=6.700000, c=4.920000;
    printf(" celaya peremennaya \n a=%d\n b=%f\n c=%f\n", a, b, c);
    scanf("%d,%f,%f", a,b,c);
    system("PAUSE");

    return 0;
    }
    Я решила не много пофантазировать)

    ОтветитьУдалить
  45. //Решение задание 5
    #include
    int main(void)
    {
    int a;
    float b,c;
    c=1.234567;
    scanf("%d %f", &a,&b);
    printf("Vivveli pervoe %d, vtoroe %f, sohraneno %f\n",a,b,c);
    return(0);
    }


    Здравствуйте, спасибо за ваши уроки, подскажите пожалуйста провильно ли решено?

    ОтветитьУдалить
  46. Не знаю, жив ли ещё этот блог, но хочу поблагодарить автора за его старания! Спасибо вам за вложенные усилия. Мне, как начинающему осваивать азы, всё понятно и интересно!

    ОтветитьУдалить
  47. 2.
    //вторая программа
    #include
    int main(void)
    {
    int a=7, b=54;
    float c=7.25;
    printf("V peremennoi a znachenie %d,v b znachenie %d,v c znachenie %f\n",
    a,b,c);
    return(0);


    }

    3.
    //третья программа
    #include
    int main(void)
    {

    int a=4;
    float b=5.4 , c=3.1;
    printf("celaya peremennaya a %d,drugie %f,i %f\n",
    a,b,c);
    return(0);
    }

    4.
    //четвертая программа
    #include
    int main(void)
    {

    int a=4;
    float b=6.7 , c=4.92;
    printf("c=%f a=%d b=%f\n",
    c,a,b);
    return(0);
    }

    5.
    //пятая программа
    #include
    int main(void)
    {

    scanf("%d %f,&c");
    printf("Vi vveli pervoe A,vtoroe B,sohraneno C");
    return(0);
    }
    пятую не уверен, т.к при написании чисел вылетала ошибка: 1 проэкт.exe - обнаружена ошибка. Приложение будет закрыто. Приносим извинения за неудобства.

    ОтветитьУдалить
    Ответы
    1. В 5 ошибка, очень грубая. Даже две. внимательно прочитайте про scanf и попробуйте исправить. Если не получится объясню.=)

      Удалить
  48. Здравствуйте. Урок 2.7 в мойом варианте выглядит вот так

    #include
    int main(void)
    {

    int a=4;
    float b=5.4;
    char c=2;
    printf("celaya peremennaya %d ",a);
    printf("%d,%f,%c ",a,b,c);

    return(0);
    }

    ОтветитьУдалить
  49. Задание 4

    #include
    int main(void)
    {

    int a=4;
    float b=6.700000,c=4.920000;
    printf("c=%f,a=%d,b=%f ",c,a,b);

    return(0);
    }

    ОтветитьУдалить
  50. #include
    int main(void)
    {
    int a;
    float b,c=43.7;
    scanf("%d%f",&a,&b);
    printf("Vi vveli pervoe %d, vtoroe %f, sohraneno %f ",a,b,c);
    return(0);

    ОтветитьУдалить
  51. здравствуйте! очень понравилось объяснение. все изложено доступным для новичка языком. но все же возникли проблемы в написании кода в задании 5. сравнивала с ответами, которые выкладывали, но даже при полном копировании правильных кодов выдает ошибку. укажите пожалуйста на нее. отправляю код программы и ошибки, которые выдает компилятор.
    #include

    int main()
    {
    int a;
    float b,c;
    c=1.05;
    printf("vvedite dva chisla");
    scanf("%d,%f",&a,&b);
    printf("vvedite pervoe a=%d, vtoroe b=%f, sohraneno c=%f",a,b,c);
    return (0);
    }

    1>------ Построение начато: проект: задача 1, Конфигурация: Debug Win32 ------
    1>Компоновка...
    1>123456.obj : error LNK2005: _main уже определен в задача 1.obj
    1>C:\Users\владик\Documents\Visual Studio 2008\Projects\задача 1\Debug\задача 1.exe : fatal error LNK1169: обнаружен многократно определенный символ - один или более
    1>Журнал построения был сохранен в "file://c:\Users\владик\Documents\Visual Studio 2008\Projects\задача 1\задача 1\Debug\BuildLog.htm"
    1>задача 1 - ошибок 2, предупреждений 0
    ========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========

    ОтветитьУдалить
    Ответы
    1. А вы создали приложение того типа: Нужно консольное.

      Удалить
    2. Для новой программы вы сделали отдельный проект? Или добавили только новый файл?)

      Удалить
    3. сначала новый элемент, но была та же ситуация. потом новый проект ниче не изменилось. я уже как только не меняла все. может это глюк какой?!

      Удалить
    4. здравствуйте! нашла ошибку. при создании нового элемента не указала разрешение ".с". и видимо поэтому компилироваться хотел как для ".срр"

      Удалить
    5. Доброго времени суток!
      Мой вариант 5го задания:

      #include
      int main(void)
      {
      int a;
      float b,c;
      c=7.77;
      printf("Vvedite celoe chislo A=");
      scanf("%d", &a);
      printf("Vvedite veshestvennoe chislo B=");
      scanf("%f", &b);
      printf("Vi vveli pervoe %d, vtoroe %f, sohraneno %f \n", a,b,c);
      return(0);
      }

      Удалить
  52. #include
    int main(void)
    {

    int a;
    float b,c;
    c=4.92;
    printf("vvedite dva chisla cherez probel");
    scanf("%d %f", &a,&b);
    printf("Vi vvely pervoe a=%d, vtoroe b=%f,sohraneno c=%f ",a,b,c);
    return(0);
    }

    ОтветитьУдалить
  53. задание 5

    #include
    int main(void)
    {
    int a=4;
    float b=6.7, c=4.92;
    printf("%f,%d,%f",c,a,b);
    return(0);
    }

    ОтветитьУдалить
  54. #include
    int main(void)
    {
    int a;
    float b,
    c=12.45;
    printf("vi vveli pervoe %d,vtoroe %f,sohraneno %f\n");
    scanf("%d %f %f",&c);
    return(0);
    }

    ОтветитьУдалить
    Ответы
    1. #include
      int main(void)
      {
      int a;
      float b,c;
      c=12.40000;
      printf("vi vveli pervoe %d,vtoroe %f,sohraneno %f\n");
      scanf("%d,%f,%f",&c);
      return(0);
      }




      так вернее будет

      Удалить
  55. Последнее задание:
    Есть немного глупый вопрос: при выполнении появляется строка:
    "Vvedite celoe chislo a i veschestvennoe b cherez probel"
    ввожу оба числа и ничего не происходит. Если нажать интер - виндовс выдает ошибку. Так и должно быть ?


    //первая программа
    #include "stdio.h"
    int main(void)
    {
    int a;
    float b,c=3.798;
    printf("Vvedite celoe chislo a i veschestvennoe b cherez probel");
    scanf("%d %f, &a,&b");
    printf("Pervoe znachenie %d, vtoroe - %f, tret'e - %f", a,b,c);
    return(0);
    }

    ОтветитьУдалить
  56. добрый день. Вой вариант задания №5
    #include
    int main(void)
    {
    int a;
    float b,c=4.005;

    printf("Vvedite celoe chislo ");
    scanf ("%d", &a);
    printf("Vvedite vechestvennoe chislo ");
    scanf("%f", &b);
    printf("Vi vveli pervoe %d , vtoroe %f, sohraneno %f",a,b,c);
    return(0);
    }

    ОтветитьУдалить
  57. так здорово себя чувтсвуешь когда все получается ))

    №5
    //two program
    #include
    int main(void)
    {
    int a;
    float b;
    float c=3;
    printf("Vvedite a i b ");
    scanf("%d %f" , &a,&b);
    printf("Vi vveli pervoe %d, vtoroe %f, sohraneno %f,",a,b,c );
    return(0);
    }

    ОтветитьУдалить
  58. Тут автор еще показываеться иногда?

    ОтветитьУдалить
    Ответы
    1. Да, показывается. =))) Вот он я.

      Удалить
    2. Спасибо, это очень хорошо.

      Удалить
  59. 3 пункт
    #include stdio.h
    int main(void)
    {
    int a=4;
    float b=5.4 , c=3.1;
    printf("celaya peremennaya %d \n",a);
    printf("%d %f\n",a,b);
    return(0);
    }

    4-й пункт
    printf("c=%f a=%d b=%f",c,a,b);

    5-й пункт
    #include stdio.h
    #include locale.h
    int main(void)
    {
    setlocale(LC_ALL, "");
    int a;
    float b, c=3.141593;
    printf("Введите два числа через пробел, одно целое другое вещественное \n");
    scanf("%d %f", &a,&b);
    printf("Вы ввели первое %d, второе %f, сохранено %f \n",a,b,c);
    return(0);
    }

    ОтветитьУдалить
  60. Автору спасибо. Теперь провожу время с умом. Только вот момент непонятный есть:
    В VS2010 нет в меню создать новый проект, однако хоткей срабатывает.
    Как открыть старый сохраненный проект?

    ОтветитьУдалить
  61. //2
    #include
    int main (void)
    {
    int a=5 , b=3 , c=4;
    float d=2.5 , e=3.4 , f=5.5;
    printf("%d %d %d %f %f %f", a,b,c,d,e,f);
    return (0);
    }

    //3
    #include
    int main (void)
    {
    int a=4;
    float b=5.4 , c=3.1;
    printf("celaya peremennaya %d ",a);

    printf("desyatichnaya %f i %f ",b, c);

    return(0);
    }

    //4
    #include
    int main(void)
    {
    int a;
    a=4;
    float b,c;
    b=6.7;
    c=4.92;
    printf("c=%f a=%d b=%f", c,a,b);
    return(0);
    }

    //5
    #include
    int main (void)
    {
    int a;
    float b,c=4.7;
    scanf("%d %f" ,&a,&b);
    printf("vveli pervoe %d, vtoroe %f, sohraneno %f ", a,b,c);
    return (0);
    }

    ОтветитьУдалить
  62. программа без ошибок,но не выполняется!что сделать? #include

    int main(void)
    {
    int a=4;
    printf("%a",a);

    return(0);
    }

    ОтветитьУдалить
    Ответы
    1. А что это %a? Разве не ошибка? =)))

      Удалить
  63. Программа 4
    //переменные
    #include
    int main(void)
    {
    int a;
    a=4;
    float b, c;
    b=6.700000;
    c=4.920000;
    printf("c=%f a=%d b=%f\n",c,a,b);
    return(0);
    }

    ОтветитьУдалить
  64. Программа 5
    //переменные
    #include
    int main(void)
    {
    int C=1988, A;
    float B;
    scanf("%d %f", &A,&B);
    printf("Vi vveli pervoe %d, vtoroe %f, sohraneno %d.",A,B,C);
    return(0);
    }

    ОтветитьУдалить
  65. /* 5 Задание */
    #include
    #include
    int main (void)
    {
    int a=4;
    float f=5.4,c;
    c=4,343;
    scanf("%d%f", &a,&f);
    printf("Vi vveli %d,vtoroe %f, sohraneno %f\n", a,f,c);
    getch();
    return(0);
    }

    ОтветитьУдалить
  66. Анонимный8 мая 2013 г., 18:44

    задание 5, после того как ввожу 2 числа программа закрывается,и не показывает "vvedeno pervoe a=%d, vtoroe b=%f, sohraneno c=%f\n",a,b,c",


    #include "stdio.h"

    int main()
    {
    int a;
    float b,c;
    c=1.05;
    printf("vvedite dva chisla");
    scanf("%d,%f",&a,&b);
    printf("vvedite pervoe a=%d, vtoroe b=%f, sohraneno c=%f\n",a,b,c);
    return (0);
    }
    что можно сделать что бы она не закрывалась?

    ОтветитьУдалить
    Ответы
    1. Вы в чем работаете? Если в борладне, то можно просто открыть снова окно вывода. Ну и применимо для обоих сред добавьте в код перед return команду system("PAUSE");

      Удалить
  67. Анонимный11 мая 2013 г., 13:26

    задание 5. Может можно как то упростить? А то мне кажется, что я много лишнего написал. Заранее спс за ответ.

    #include
    int main (void)
    {
    int a;
    float b;

    printf("Vvedite chislo a \n");
    scanf("%d", &a);
    printf("Vvedite chislo b \n");
    scanf("%f", &b);

    float c=a+b;

    printf("Vi vveli \n pervoe a=%d, ",a);
    printf("vtoroe b=%f \n",b);
    printf("sohranena summa a+b \n c=%f \n",c);

    return(0);
    }

    ОтветитьУдалить
  68. Вариант эталонного выполнения этого задания есть в группе в вк, да и на блоге тоже есть. Вверху есть ссылка.

    А так, можно было бы объединить группы printf и scanf. тогда бы покороче получилось. Но вообще, короткий код это не всегда хорошо. Так что не парьтесь, все придет со временем.

    Лучше обратите внимание на формат вывода данных, который указан в задании. Если бы это проверяла автоматическая проверяющая система, ваше решение не прошло бы. Я всё понимаю, пользовательский интерфейс и т.д., но мы вроде учимся программировать, а не применять по 20 раз printf. =)))

    ОтветитьУдалить
  69. 5 задание

    #include
    int main(void)
    {
    printf("Vvedite dva chisla cherez probel");
    int a;
    float b;
    scanf("%d %f", &a,&b);
    float c=a+b;
    printf("vveli pervoe %d, vtoroe %f , sohraneno %f",a,b,c);
    return(0);
    }

    ОтветитьУдалить
  70. #include
    int main(void)
    {
    int a;
    float b, c;
    c=3.340000;
    printf("vedite celoe i veshesvennoe chislo \n");
    scanf("%d",&a);
    scanf("%f",&b);
    printf("%f \n",c);
    return(0);
    }

    ОтветитьУдалить
  71. Анонимный27 июля 2013 г., 15:09

    обнаружен многократно определенный символ - один или более - что это значит?
    #include
    int main(void)
    {
    int a=4;
    float b=5.4, c=3.1;
    printf(" %f %d %f", b, a, c);
    return(10);
    }

    ОтветитьУдалить
    Ответы
    1. а скопируйте то, что написано в окне отладчика. )

      Удалить
  72. Анонимный31 июля 2013 г., 01:35

    Проверьте,если не сложно)
    Задание 4
    #include
    int main (void)
    {
    int a=4;
    float b=6.700000;
    char c=4.920000;
    printf("%d,%f,%c",a,b,c);
    return (0);
    }
    Задание 5

    #include
    int main (void)
    {
    int a;
    double b,c;
    c=7.907;
    printf("Vi vveli pervoe %d,vtoroe %f,sohraneno %c",a,b,c);
    scanf("%d,%f",&a,&b);
    return (0);
    }

    ОтветитьУдалить
    Ответы
    1. А вы сами пробовали проверять? =)

      Удалить
    2. Анонимный31 июля 2013 г., 17:37

      Пробовали) программа говорит, что обе задачи выполнены успешно. Но когда в 5 задании нажимаю ctrl+F5, программа выдает,что b is being used without being initialized. Сверила с ответами на сайте, у b здесь тоже не задано значение. В чем может быть проблема?

      Удалить
    3. =)) Если пробовали то хорошо. Я уже понял в чем ошибка. Вторая раз с этим сталкиваюсь. Надо об этом подробнее будет написать в уроке.
      Давайте разберем вашу программу.
      Смотрите. Сначала вы объявили переменные.
      int a;
      double b,c;

      После объявления в них находится мусор, буквально вы просто назвали некоторую область в памяти именами a, b,c. Потом переменную c вы инициализируете, т.е. присваиваете ей некоторое значение.
      c=7.907;

      А дальше возникает ошибка. Вы начинаете выводить на экран переменные:
      printf("Vi vveli pervoe %d,vtoroe %f,sohraneno %c",a,b,c);

      Но в переменных a и b еще нет никаких значений, они не инициализированны. Если вы нажмете в окошке с ошибкой пропустить, то такое же сообщение появится относительно переменной a.

      Но самое интересно дальше. Вы начинаете считывать значения с клавиатуры в эти переменные. Считали и всё. Программа заканчивается. Зачем спрашивается считывали если не используем? =)))

      Вот. Надеюсь понятно объяснил. Теперь переделайте свою программу, так чтобы она работала.

      И еще вопрос. Когда программа скомпилировалась, у вас не было предупреждений, что использована неинициализированная локальная переменная?

      Удалить
    4. не было)Переделала:
      #include
      int main (void)
      {
      int a;
      float b,c= 11.21;
      printf("Vvedite odno zeloe, odno veschestvennoe chislo");
      scanf("%d,%f",&a,&b);
      printf("Vi vveli pervoe %d,vtoroe %f,sohraneno %f",a,b,c);
      return (0);
      }

      но появилась новая проблема:

      Vi vveli pervoe 7,vtoroe -107374176.000000,sohraneno 11.210000Для продолжения на
      жмите любую клавишу . . .

      переменную "а" выдает правильно, а переменную "b" в не зависимости,какое бы число не задала(например 77.8) выдает как -107374176.000000

      не пойму,что не так.:(

      Удалить
    5. А вы соблюдаете формат ввода? =))
      вводите два числа через запятую, как и записано в формат-строке или через пробел? Я уверен, что через пробел. )))

      Удалить
  73. Задание 2:
    #include
    int main(void)
    {
    int a=42, b=35;
    float с=42.5;
    printf(" %d, %d, %f ", a,b,с);
    return(0);
    }
    Задание 3:
    #include
    int main(void)
    {
    int a=4;
    float b=5.4,c=3.1;
    printf("celaya peremennaya %d ",a);
    printf("%f %f ", b,c);
    return(0);
    }
    Задание 4:
    #include
    int main(void)
    {
    int a=4;
    float b=6.7,c=4.92;
    printf(" %d ",a);
    printf(" %f %f ", b,c);
    return(0);
    }
    Задание 5:
    #include
    int main(void)
    {
    int a=5;
    float b=3.1,c=7.2;
    printf("Vivveli pervoe %d, vtoroe %f, sohraneno %f" ,a,b,c);
    return(0);
    }
    Задание 5, осилить сразу не смог и заглянул в Образцовые решения домашних заданий. Попробовал все сделать так же, но с другими числами и тут cmd выходил совершенно пустой. Пробовал всё копировать(всё пишу с руки, но проверял), тоже самое. Убрал scanf и cmd снова заработал. В чём проблема?

    ОтветитьУдалить
    Ответы
    1. Конечно ничего не выводит, он ведь ждал пока вы введете данные. Прочитайте задание внимательно, что нужно сделать, и что сделали вы. )))

      Почему в 4 задаче, вы использовали два printf?

      Ну и соблюдайте пожалуйста формат вывода, выводить нужно то, что просится в задании.

      Удалить
  74. доброго времени суток! пишу код в visual C++2010 экспресс выпуск. При запуске кода открывается консольное окно, в быстром темпе отрабатывает программу и тут же сворачивается, подскажите , пожалуйста как мне исправить эту проблему, спасибо

    ОтветитьУдалить
    Ответы
    1. Ответ на Ваш вопрос есть в F.A.Q.

      Удалить
  75. проверте, пожалуйста:

    задание 2
    // Test 2
    #include
    int main(void)
    {
    int a;
    a=2;
    float b;
    b=5.6;
    printf("My imeem sleduuschee \n a = %d \n b = %f \n ", a,b);
    return(0);
    }

    задание 3
    // Test 3
    #include
    int main(void)
    {
    int a=4;
    float b=5.4, c=3.1;
    printf("Celaya peremennaya %d \n", a);
    printf("%f, %f", b,c);
    return(0);
    }

    задание 4
    // Test 4
    #include
    int main(void)
    {
    int a=4;
    float b=6.7, c=4.92;
    printf("c=%f ", c);
    printf("a=%d ", a);
    printf("b=%f ", b);
    return(0);
    }

    задание 5
    // Test 5
    #include
    int main(void)
    {
    int a;
    float b, c=15.7;
    printf("Vvedite dwa chisla: \n pervoe - celoe \n vtoroe - veschestvennoe \n");
    scanf("%d %f", &a,&b);
    printf("Vy vveli pervoe %d, vtoroe %f, sohraneno %f", a,b,c);

    return(0);
    }
    огромное спасибо за уроки!) долгое время искала программирование С++ для абсолютных нубов, но ничего не могла найти. ваш сайт стал для меня настоящим спасением))

    ОтветитьУдалить
  76. Добрый день.
    Мне приятно слышать слова благодарности. Еще более приятно было бы, если Вы бы рассказали о моем блоге, или любом уроке, на Вашей странице в любой социальной сети или блоге, если он у вас есть. Это было бы лучшим спасибо как мне, так и блогу в целом. =)))
    И кстати, это не уроки по С++, а уроки по Си. Просто синтаксис одинаковый. И в основах разницы нет. =))

    Второе задание - хорошо.
    Третье задание - хорошо.
    Четвертое задание - хорошо.
    Пятое задание - хорошо.

    Общий вопрос. А почему Вы всегда разделяете вывод на несколько функций printf(), когда можно обойтись и оной?
    Например, в четвертом задании:
    Вместо:
    printf("c=%f ", c);
    printf("a=%d ", a);
    printf("b=%f ", b);

    можно написать
    printf("c=%f a=%d b=%f \n", c,a,b);

    Разницы визуальной конечно нет, но зачем эти лишние вызовы функций? Они ни чем не оправданы.

    ОтветитьУдалить
    Ответы
    1. ясно, спасибо, теперь буду использовать одну функцию. просто я их разделяля, чтобы проще ошибки было искать.

      Удалить
    2. Понятно.
      Успехов Вам! =))

      Удалить
    3. Большое спасибо)

      Удалить
  77. Привет. Спасибо за уроки. Подскажите почему у меня не выводит знаки после запятой в дробных числах? См ссылку на скриншот
    http://img706.imageshack.us/img706/4144/euzy.jpg

    ОтветитьУдалить
    Ответы
    1. Всё просто. =)) Попробуйте вводить дробное число не через запятую, а через точку. )

      Удалить
    2. Спасибо, только вы перепутали, нужно вводить через точку, а я делал через запятую

      Удалить
  78. Доброй ночи! Извините что так поздно, но так уж получилось, что все задания разбирал до этого времени и мне кажется, что где-то все равно сидит ошибка. Если возможно проверьте, пожалуйста, и подскажите что не так. Особенно пятое задание, не высвечивается на монитор. Спасибо Вам огромное, за ваш труд и за Ваше терпение.
    Задание 2
    #include
    int main(void)
    {

    int a=8, b=3, c=9;
    printf("%d,%d,%d ", a,b,c);

    return(0);
    }

    Задание 3
    #include
    int main(void)
    {

    int a=4;
    float b=5.4 , c=3.1;
    printf("%d,%f,%f ",a,b,c);

    return(0);
    }
    Задание 4
    #include
    int main(void)
    {

    int a=4;
    float b=6.7, c=4.92;
    printf("c=%f,a=%d,b=%f ",c,a,b);

    return(0);
    }

    //задание 5
    #include
    int main(void)
    {
    int a;
    float b, c=2.3;
    printf("Vvedite dva hisla");
    scanf("%d %f",&a,&b);
    printf("Vi vveli pervoe a=%d,vtoroe b=%f,sohraneno c=%f\n", a,b,c);
    return(0);
    }

    В конце выдало вот такое предупреждение, как это понять?

    1>d:\новая папка (10) программирование\рограмма 4\рограмма 4\задание 5.cpp(6) : warning C4305: инициализация: усечение из 'double' к 'float'
    1>d:\новая папка (10) программирование\рограмма 4\рограмма 4\задание 5.cpp(7) : warning C4996: 'scanf': This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.

    ОтветитьУдалить
    Ответы
    1. Все программы написаны правильно. )

      Удалить
  79. Здравствуйте. Хочу выразить благодарность за Ваши уроки.
    Всё ли правильно?

    //Задание №5:
    #define _CRT_SECURE_NO_WARNINGS
    #include"stdio.h"
    #include"locale.h"

    int main(){
    int a; float b, c=3.14;
    setlocale(LC_ALL, "RUSSIAN");
    printf("Введите целое число: ");
    scanf("%d", &a);
    printf("Введите число с запятой: ");
    scanf("%f", &b);
    printf("A = %d B = %f C = %f\n", a, b, c);
    return 0;
    }

    и хотелось бы спросить кое-что:
    1)не раз встречал, что функцию "main(void)", пишут "main()". почему? и какая разница?
    2)русификация чтения консоли через setlocale допустима? или лучше другим путём?

    ОтветитьУдалить
    Ответы
    1. Все верно.

      1. Вообще, у функции main тоже есть аргументы (так что существует и еще одна запись main) , но вам они сейчас вообще не нужны. Компилятор устроен так, что любой из этих вызовов обработается правильно. Просто в отличие от второго, в первом явно указывается, что main не принимает никакие аргументы.

      2. Допустима. Только я все равно не понимаю зачем оно вам.

      Удалить
  80. #include
    #include
    main (void)
    {
    int a=4;
    float b=6.700000,c;
    printf("Vedite dopolnitelnoe chislo\n");
    scanf("%f",&c);
    printf("Vi vveli pervoe A=%d, vtoroe B=%f, sohraneno C=%f",a,b,c);
    getch();
    }

    ОтветитьУдалить
    Ответы
    1. Правильно. Только надо было сделать всё с точностью наоборот. Переменную c записать в коде программы, а переменные a и b считать с клавиатуры. ))

      Удалить
  81. Доброго времени суток! Огромное спасибо за ваш труд!
    Вот моя программа

    //программа вторая
    #include "stdio.h" ( в самой программе знаки больше и меньше как в листинг 2.6)
    int main(void)
    {

    int a, b;
    a=5;
    b=7;
    printf("V peremennoi a znachenie %d, a v drugoi %d ", a,b);

    return(0)
    }

    выдает следующею ошибку: Failed to load and parse the manifest

    ОтветитьУдалить
    Ответы
    1. Скорее всего вы не правильно создали проект.
      Ну и еще, точку с запятой поставьте после return (0);

      Удалить
  82. Кадет я не пойму 2 урок вообще какие то float и double, символов - тип char.не пойму,мне всего 14 лет:)

    ОтветитьУдалить
    Ответы
    1. Извините, понять за вас я не смогу.

      Удалить
  83. Спасибо вам за ваши уроки!!!
    Задание 5. Думаю, что именно этот код является самым правильным,поправьте если что не так!
    #include
    int main()
    {
    int a;
    float b,c=8.56;
    scanf("%d %f", &a,&b);
    printf("Vi vveli pervoe A,vtoroe B,sohraneno C \n a=%d,b=%f,c=%f ",a,b,c);
    return (0);
    }
    Просто я не где не увидел ответа на это задание : Где A целое число введенное пользователем с клавиатуры, B - вещественно число введенное пользователем с клавиатуры, С - любое вещественное число, заданное в коде программы.

    ОтветитьУдалить
    Ответы
    1. Не совсем правильно. Значения переменных должны выводиться вместо букв A B и C.

      Удалить
  84. //zadanie 5
    #include
    int main(void)
    {
    int a;
    float b, c;
    c=4.92;
    scanf("%d %f", &a,&b);
    printf("Vivveli pervoe A, vtoroe B, sohraneno C. ", a, b, c);
    return(0);
    }

    ОтветитьУдалить
  85. 1>------ Построение начато: проект: 5454, Конфигурация: Debug Win32 ------
    1>LINK : error LNK2001: неразрешенный внешний символ "_mainCRTStartup"
    1>c:\users\пользователь\documents\visual studio 2010\Projects\5454\Debug\5454.exe : fatal error LNK1120: 1 неразрешенных внешних элементов
    ========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========

    2 задание выдает вот ошибку

    ОтветитьУдалить
    Ответы
    1. вы неправильно создали проект.

      Удалить
  86. задания 2 бессмысленно писать, начну из 3-го

    3-тья

    #include
    int main(void)
    {
    int a=4;
    float b=5.4 , c=3.1;
    printf("%d\n%f\n%f\n ",a, b,c);
    return(0);
    }

    4-тая

    #include
    int main(void)
    {
    int a=4;
    float b=6.700000, c=4.920000;
    printf("%f %d %f",c,a,b);
    return(0);
    }

    5-тая

    #include
    #include
    void main ()
    {
    int a;
    float b,c=44.43;
    printf("vvedite 2 chesla\n");
    scanf("%d %f",&a,&b);
    printf("\nVi vveli pervoe a=%d \nvtoroe b=%f \nsohraneno c=%f\n",a,b,c);
    getchar();
    }

    Спасибо за уроки и обучения ) Буду дальше дерзать ваши труды)

    ОтветитьУдалить
    Ответы
    1. Хорошо, не компилирую но на глаз думаю все правильно. Но зачем в 5 задании два инклуда?

      Удалить
  87. //Задание 5
    #include
    int main (void)
    {
    int a=1;
    float b=2.1,c=3.1;
    scanf("%d %f", &a,&b);
    printf("vu vveli pervoe %d, vtoroe %f,sohraneno %f \n ", a,b,c);
    return(0);
    }

    ОтветитьУдалить
    Ответы
    1. Правильно. Можно было переменным a,b не присваивать значения при объявлении. )

      Удалить
  88. #include
    int main(void)
    {
    int a,b;
    float c,d;
    char cc;
    printf("Vvedite dva chisla cherez probel: pervoe- celoe, vtoroe decyatichnoe ");
    scanf("%d %f", &a,&c);
    printf(" vtoroe chislo = %f ", c);
    printf("vvedite pervuyu bukvu svoego imeni ");
    scanf("%c ", &cc);
    printf("pervaya bukva vashego imeni %c ",cc);

    return(0);
    }

    ОтветитьУдалить
    Ответы
    1. Много лишнего, но я вижу, что вы разобрались. Поздравляю.

      Удалить
  89. // практическое занятие №2
    #include
    int main(void)
    {
    int a;
    float b;
    float c=3.14;
    printf("Vvedite celoe chislo i nazmite Enter \n");
    scanf("%d", &a);
    printf("Vvedite veschestvennoe chislo i nazmite Enter \n");
    scanf("%f", &b);
    printf("Vi vveli pervoe %d, vtoroe %f, sohraneno %f \n", a,b,c);
    return(0);
    }

    ОтветитьУдалить
  90. Как-то так...
    Задание 2

    #include
    int main(void)
    {

    int a;
    float b;
    double x=41.1415;
    a=51;
    b=656;
    printf("V peremennoi a znachenie %d, a v drugoi %f \n", a,b);
    printf("V peremennoi x znacenie %f\n",x);
    return(0);
    }

    Задание 3

    #include
    int main()
    {
    int a=4;
    double b=5.4,c=3.1; // при инициализции через float (MVS 2010)
    //Предупреждение 1 warning C4305: инициализация: усечение из "double" к "float" e:\c++\test\test\1.cpp 5 1 test
    printf("celaya peremennaya %d\n",a);
    printf("%f\n%f\n",b,c);
    return 0;
    }

    Задание 4

    #include
    int main()
    {
    int a=4;
    float b=6.700000, c=4.920000;
    printf("c=%f a=%d b=%f",c,a,b);
    return 0;
    }

    Задание 5

    #include
    int main()
    {
    int A;
    float B,C;
    C=656;
    printf("Vvedite 2 chisla cherez probel\n");
    scanf("%d%f",&A,&B);
    printf("Vi vveli pervoe %d, vtoroe %f, sohraneno %f\n",A,B,C);
    return 0;
    }

    ОтветитьУдалить
    Ответы
    1. 2. Не обязательно присваивать было при объявлении значения переменным.

      3. Норм. Предупреждения не критичны. Просто надо понять почему они появились, и можно не исправлять.

      4. Не нужно писать нули это лишнее.

      5. Хорошо.

      Удалить
  91. Задание 2
    #include
    int main(void)
    {
    int a,b;
    float c;
    a=6;
    b=25;
    c=20.5;
    printf("V peremennoi a znachenie %d \n v peremennoi b znachenie %d \n v peremennoi c zhachenie %f \n", a,b,c);
    return(0);
    }

    Задание 3

    #include
    int main(void)
    {
    int a;
    float b,c;
    a=4;
    b=5.4;
    c=3.1;
    printf("celaya peremennaya %d \n", a);
    printf("%f,%f",b,c);
    return(0);
    }

    Задание 4

    #include
    int main(void)
    {
    int a=4;
    float b=6.700000,c=4.920000;
    printf("%f,%d,%f \n",c,a,b);
    return(0);
    }

    Задание 5

    #include
    int main(void)
    {
    int a;
    float b,c=18.9;
    printf("Vvedite dwa chisla:\n pervoe-celoe \n vtoroe-veschestvennoe \n");
    scanf("%d %f", &a,&b);
    printf("Pervoe chislo %d, vtoroe %f, sohraneno %f \n", a,b,c);
    return(0);
    }

    ОтветитьУдалить
  92. #include
    int main(void)
    {
    int a;
    float b;
    float c=3.5;
    scanf("%d %f", &a,&b);
    printf("Vi vveli pervoe %d,vtoroe %f,sohraneno %f",a,b,c);
    return(0);
    }
    Здравствуйте!Подскажите где тут ошибка?

    ОтветитьУдалить
    Ответы
    1. Добрый день. Тут нет ошибок. ))

      Удалить
  93. #include
    int main (void)
    {
    int a=2;
    float b=3.5, c=4.5;
    scanf("Pervoe chislo %d,vtoroe %f,tretie %f",a,b,c);
    printf("Udachi!\n");
    return(0);
    }
    почему при просмотре он не выводит запись?

    ОтветитьУдалить
    Ответы
    1. вероятно ждет пока вы введете, то что указываете тут
      scanf("Pervoe chislo %d,vtoroe %f,tretie %f",a,b,c);

      Удалить
  94. Simon
    Привет проверьте меня и ответе на мои вопросы заранее здоровенное спасибо
    1.почему в функции return (0) возвращаемое значение функции main вы берёте в скобки в книге кернигана и ритчи без скобок
    2.как написать код так чтобы после последней значимой цифры в дробной части нолики отбрасывались при этом заранее не известно сколько значимых цифр после точки может ввести пользователь
    ------------------------------------
    упражнение 4
    #include
    int main(void)
    {
    int a=4;
    float b=6.700000, c=4.920000;

    printf("c=%f a=%d b=%f",c,a,b);

    return 0;
    }
    -----------------------------------------------------------
    упражнение 5
    #include
    int main(void)
    {
    int a=3;
    float b,c;

    printf("Ввести две десятичные дроби.\n");

    printf("Первая дробь: ");
    scanf("%f",&b);

    printf("Вторая дробь: ");
    scanf("%f",&c);

    printf("Первая введённая дробь: %f\n",b);
    printf("Вторя введённая дробь: %f\n",c);
    printf("Сохранённое число: %d\n",a);

    return 0;
    }

    ОтветитьУдалить
    Ответы
    1. Добрый день.
      1. Мне так удобно. Никакой разницы в этом нет. ))
      2. Никакого стандартного способа это сделать нет, или быть может я его не знаю.

      По заданиям:
      4 не хорошо. В коде не нужно писать все эти нули. Это нужно сделать с помощью спецификаторов вывода, указывая количество символов после запятой.

      5 ну в принципе суть задания вы поняли и выполнили. Но хорошо бы соблюдать формат вывода. И еще, зачем все эти лишние введите то, введите сё ? =))) И кстати, словосочетание "десятичные дроби" в данном случае не верно употреблено.))

      Удалить
    2. если не известно сколько цифр будет введено то нельзя правильно указать сколько цифр вывести на экран иначе числа после точки хоть и округляя будут обрезаны или дорисованы лишние нолики (с точностью до шести знаков после точки) соответственно способ какой то всё таки должен быть
      в упражнении 4 были даны числа a=4 b=6.700000 c=4.920000 которые и были использованы в написанном мной исходном коде
      в упражнении 5 укажите где именно не соблюден формат вывода а "введите то, введите сё" да хотя бы для чистоты а не всё в кучу
      термин десятичные дроби вполне уместен в данном случае

      Удалить

    3. 4. Исправил задание.
      5. Везде, начиная с самого первого printf.
      Программа, должны вывести только лишь строку Vi vveli pervoe A, vtoroe B, sohraneno C.
      Где вместо А,B и C будут стоять числа.
      Без все этих "Первая дробь: " и прочего. Считали два числа, вывели результат.

      Да, с десятичными дробями я погорячился. ))

      Кстати, вводится одно вещественное число и одно целое, а не два вещественных.

      Удалить
    4. в задании 4 уберите ноли а в том что новички должны увидеть на мониторе верните нолики в противном случае добавите в урок объяснение конструкции "%0.0f" не путайте народ
      в упражнении 5 у меня нет ни синтаксических ни логических ошибок соответственно формат вывода везде соблюден количество запросов сколько угодно может быть данные считаны и выведены а значит условия задания выполнены
      зачем мне использовать латиницу если в linux прекрасно выводится на консоль кириллица
      ну а то что у меня считаны две дроби так это даже лучше так как эта тема более обширна

      Удалить
  95. скажите всё ли верно? 4 задание
    // новая прога
    #include
    int main (void )
    {
    int a;
    a=4;
    float b,c;
    b=6.7 , c=4.92;
    printf ("c=%f a=%d b=%f", c,a,b);
    return (0);
    }
    и мне не понятно с пятым

    ОтветитьУдалить
    Ответы
    1. Хорошо, особенно если вы понимаете как работает оператор ",". Я рассказывал о нем много позже. )
      А что конкретно не понятно в пятом задании?

      Удалить
  96. Здравствуйте. Спасибо за уроки.
    Помогите пожалуйста разобраться с 5 заданием 2-го урока.
    Пишу вот так(судя по верхним коментам это правильно)
    //Программа
    #include
    int main(void)
    {
    int a;
    float b, c=9.7;
    scanf("%d, %f", &a,&b);
    printf("Vi vveli pervoe %d, vtoroe %f, sohraneno %f", a, b, c);
    return(0);
    }
    В итоге при запуске появляется пустой экран с мигающей чёрточкой, куда я могу написать всё что угодно, но то, что в "printf" на экране нет.
    Если меняю местами "printf" и "scanf", то надпись появляется, но уже со значениями "a" и "b" неизвестно откуда взятыми.И я могу вводить данные уже только после надписи.
    Как же всё таки надо делать, чтобы можно было самому ввести значения "a" после слова "pervoe" и "b" после слова "vtoroe". Как я понял, в этом суть 5-го задания. Голову второй день ломаю. Что не так?

    ОтветитьУдалить
    Ответы
    1. Ответ ниже от Анонима полностью правильный. Надеюсь вы разобрались. ))

      Удалить
  97. Мигающая черточка означает, что ожидается ввод. В самой программе ошибок нет. Чтобы вывелись введенные значения, нужно их сначала ввести так, как вы написали в scanf. Вводите, например, "5, 9.5", оно вам выведет результат. Следует вводить в таком формате, который описан в scanf (или писать в начале программы "предупреждение" о правильности ввода), в вашем случае через запятую и пробел. Понимайте то, что вы сами же пишете.

    ОтветитьУдалить
    Ответы
    1. ППКС, как говорится.
      Спасибо, что помогаете мне. =)

      Удалить
  98. #include
    int main(void)
    {
    int a=4;
    float b=5.4 , c=3.1;
    printf("celaya peremennaya %d",a);
    printf("vechestvennaya %f,%f",b,c);
    return(0);
    }

    ОтветитьУдалить
  99. // програмка
    #include
    int main (void)
    {
    int a,c=126;
    float b;
    printf (" vvedite 2 chisla \n ");
    scanf ("%d %f", &a,&b);
    printf (" vi vveli a=%d \n b=%f \n poluchilos c=%d \n", a,b,c);
    return (0);
    }

    решение второй задачки

    Ваши уроки изумительны, все просто и понятно, пока схватываю на лету, буду учиться и дальше, спасибо вам огромное.

    ОтветитьУдалить
    Ответы
    1. Спасибо, за теплый отзыв. Удачи вам, надеюсь у вас всё получится. )

      Удалить
  100. //blin
    #include
    int main(void)
    {
    int a=4;
    float b=5.4,c=3.1;
    printf("celaya peremennaya %d,%f,%f ",a,b,c);
    return(0)
    }
    Здравствуйте,скажите пожалуйста - это верно.Я вбиваю эту программу в MVS C++ 2008 Express Edition,а он вот чё:1>------ Build started: Project: 2 урок,я надеюсь, Configuration: Debug Win32 ------
    1>Compiling...
    1>Ну,держись!.cpp
    1>c:\users\николай\documents\visual studio 2008\projects\2 урок,я надеюсь\2 урок,я надеюсь\ну,держись!.cpp(6) : warning C4305: 'initializing' : truncation from 'double' to 'float'
    1>c:\users\николай\documents\visual studio 2008\projects\2 урок,я надеюсь\2 урок,я надеюсь\ну,держись!.cpp(6) : warning C4305: 'initializing' : truncation from 'double' to 'float'
    1>c:\users\николай\documents\visual studio 2008\projects\2 урок,я надеюсь\2 урок,я надеюсь\ну,держись!.cpp(9) : error C2143: syntax error : missing ';' before '}'
    1>c:\users\николай\documents\visual studio 2008\projects\2 урок,я надеюсь\2 урок,я надеюсь\ну,держись!.cpp(12) : error C2084: function 'int main(void)' already has a body
    1> c:\users\николай\documents\visual studio 2008\projects\2 урок,я надеюсь\2 урок,я надеюсь\ну,держись!.cpp(3) : see previous definition of 'main'
    1>c:\users\николай\documents\visual studio 2008\projects\2 урок,я надеюсь\2 урок,я надеюсь\ну,держись!.cpp(14) : warning C4305: 'initializing' : truncation from 'double' to 'float'
    1>c:\users\николай\documents\visual studio 2008\projects\2 урок,я надеюсь\2 урок,я надеюсь\ну,держись!.cpp(14) : warning C4305: 'initializing' : truncation from 'double' to 'float'
    1>c:\users\николай\documents\visual studio 2008\projects\2 урок,я надеюсь\2 урок,я надеюсь\ну,держись!.cpp(17) : error C2143: syntax error : missing ';' before '}'
    1>Build log was saved at "file://c:\Users\Николай\Documents\Visual Studio 2008\Projects\2 урок,я надеюсь\2 урок,я надеюсь\Debug\BuildLog.htm"
    1>2 урок,я надеюсь - 3 error(s), 4 warning(s)
    ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
    Чито енто значить?

    ОтветитьУдалить
    Ответы
    1. У вас миллион файлов в проекте. Для каждой задачи, делайте новое решение. А в этом коде ошибка, пропущена ; после return

      Удалить
  101. Важно ли вместо 'float' написать 'double' в 4-м задании? Выдаёт предупреждение...

    ОтветитьУдалить
    Ответы
    1. Нет, в этом примере не важно. А вот если бы вы производили расчеты расстояний между атомами, то это была бы катастрофа. =)) Компилятор просто предупреждает вас, что происходит уменьшение точности.

      Удалить
  102. Сергей
    Проверьте пожалуйста.
    #include
    int main(void)
    {
    int a;
    a = 5;
    float b,c;
    b = 3.11, c = 4.1;
    printf("Vivveli pervoe a=%d, vtoroe b=%f, sohraneno c=%f\n",a,b,c);
    scanf("%d %f %f", &a,&b,&c);
    return(0);
    }
    я не доконца понял когда нужно использовать scanf

    ОтветитьУдалить
    Ответы
    1. В корне не правильно.
      Сначала, нужно объявить (или по умному объявить) переменные. Потом с помощью функции scanf() считать в них числа с клавиатуры. И уже потом, вывести их на экран. А теперь скажите мне, как работает ваша программа?

      Удалить
  103. Проверьте пожалуйста.
    //Программа №2
    #include
    int main ( void )
    {
    int a;
    float b,c;
    c=7.62;
    scanf ("%d %f", &a,&b);
    printf ("Vi vveli pervoe %d, vtoroe %f, sohraneno %f \n", a,b,c);
    return(0);
    }

    ОтветитьУдалить
    Ответы
    1. Добрый день. Проверил. Всё верно. )

      Удалить
  104. #include
    #include
    int main(int argc, char* argv[])
    { int a;
    float b,c;
    c=3.25;
    printf("Vvedite a= ");
    scanf("%d",&a);
    printf("Vvedite b= ");
    scanf("%f",&b);
    printf("Vy vveli pervoe %d\n vtoroe %f\n sohraneno %f", a,b,c);
    getch();
    return 0;
    }

    ОтветитьУдалить
  105. "Все символы заключенные в двойные кавычки кроме управляющих последовательностей (начинаются с символа /, например: /n) "

    ошибка в тексте?
    /n = \n
    ?

    ОтветитьУдалить
    Ответы
    1. Да, действительно описался. Исправил. Спасибо большое за внимательность. =)

      Удалить
  106. #include
    int main (void)
    {
    int a, b;
    a=5;
    b=7;
    double c=10.3;
    char d;
    d=Q;

    printf ("V peremennoi a znachenie %d \n a v drugoi %d \n tretia %f \n chetvertaea %c \n", a,b,c,d);
    return(0);
    }

    ОтветитьУдалить
    Ответы
    1. Конечно же ошибка. Что такое Q? Откуда компилятору знать? Вы нигде раньше такую переменную не объявляли. Вот он и ругается.)

      Удалить
  107. #include
    int main(void)
    {
    int a=4;
    float b, c;
    b=6.7;
    c=4.92;
    printf("c=%f a=%d b=%f" c,a,b);
    return (0);
    }

    ОтветитьУдалить
    Ответы
    1. Только одна переменная должна задаваться в коде программы.Это раз. И вы упустили запятую в printf - это два.

      Удалить
  108. вот какую программку накрапал : ))
    #include
    int main (void)
    {
    //mnojiteli 1
    int a;
    printf ("vvedite pervoe chislo =");
    scanf ("%d",&a);
    //vtoroi mnojiteli
    int b;
    printf ("vvedite vtoroe chislo =");
    scanf ("%d",&b);
    //rezulitat
    int d;
    d=a*b;
    printf ("rezulitat = %d \n", d);


    return(0);
    }

    ОтветитьУдалить
    Ответы
    1. Поздравляю вас, с первым успехом. Но эта программа здесь не совсем в тему. =))

      Удалить
  109. добрый вечер)
    учусь по Вашим урокам, все нравится, но с вот одна программа выдает ошибку:(
    #include
    int main( void)
    {
    int a;
    float b,c;
    c=10.2;
    scanf("%d %f", &a,&b);
    printf("vi vveli pervoe %d, vtoroe %f, sohraneno %f", a,b,c);
    return(0);
    }
    подскажите плж:_

    ОтветитьУдалить
  110. 5-е задание:
    #include
    int main(void)
    {
    int a;
    a=14
    float b,c;
    b=1.4;
    c=8.4;
    printf("Vi vveli pervoe a, vtoroe b, sohraneno c");
    scanf("a %d b %f c%f", &a,&b,&c);
    return(0);
    } почему выдает ошибку? заранее спасибо)

    ОтветитьУдалить
    Ответы
    1. Во первых после include нужно , но это может просто в браузере неотображается, и a=14; а у вас без точки с запятой вот и ошибка. Проверила : поставите точку с запятой и все заработает. )

      Удалить
    2. studio.h и вправду не отображается в кавычках.

      Удалить
    3. Неа, все ровно не верно, но спасибо за точку с запятой =)

      Удалить
  111. 4-е задание:

    #include
    int main(void)
    {
    int a;
    a=4;
    float b,c;
    b=6.7;
    c=4.92;
    printf("c=%f a=%d b=%f\n", c,a,b);
    return(0);
    }

    ОтветитьУдалить
  112. 4-е задание
    //new projekt
    #include
    int main ( void ) {
    int a;
    a=4;
    float b,c;
    b=6.7;
    c=4.92;
    printf ( "v peremennoi a znachenie %f u %f, a takge %d ", b,c,a );
    return (0);
    }

    ОтветитьУдалить
  113. #include
    int main(void)
    {
    int a;
    float b,c=4.2;
    scanf ("%d%f", &a,&b);
    printf ("vvod chisel %d, %f, poluchim %f/n",a,b,c);

    return (0);
    }

    честно говоря если б не решение задачки я так бы и мучалась с ответом. а все оказалось так просто)

    ОтветитьУдалить
  114. здравствуйте зацепили меня ваши задания, так что пойду напролом ;-). решил маленько усложнить, ввести одно число потом другое, насчет третьего особого задания небыло поэтому решил что это должна быть сумма первого и второго. ошибки подправил, программа их не фиксирует но при открытии exe-шника файл не запускается
    проверьте плиз. спасибо
    #include
    int main(void)

    {
    int a;
    float b, c;
    c = a + b;

    printf("Vvedite celoe chislo");

    scanf_s("%d, &a" );
    printf("Vvedite veshestvennoe chislo");
    scanf_s("%d, &b");

    printf("Vi vveli pervoe %d, vtoroe %f, sohraneno %f", a,b,c);

    return(0);
    }

    ОтветитьУдалить