Государственное образовательное учреждение
Высшего профессионального образования
Кафедра автоматизированного электропривода и промышленной электроники
Лабораторная работа
По теме: Ввод в программирование на языке Си
Выполнил: студент гр. АЭП – 032
Горбунов Сергей.
Проверил: Лемешевский Денис
Сергеевич.
Новокузнецк 2004
Цель работы:
1. Освоить вывод на экран на языке программирования С.
2. Освоить ввод с клавиатуры на языке программирования С.
Блок-схема работы программы.
Ввод: Имя, Рост, Вес
Разница=Вес-Рост Вес (Рост)
+ Разница=0
+ -
Это оптимальное Разница>0
соотношение
Вам нужно Вы недобираете кг.
уменьшить вес на кг.
Ввод continue:
- continue1=N
+
Задание по лабораторной работе:
1. Введите исходный текст программы. Можно использовать встроенный редактор С или внешний текстовой редактор, вводящий только текст и не использующий управляющие символы, например, редактор, встроенный в Norton Commander.
2. Сохраните текст программы, иначе при зависании неверно введённого текста программы вы можете его потерять.
3. Выполните компиляцию программы (команда Compile to OBJ в меню Compile) и исправить синтаксические ошибки.
4. Выполнить компоновку (команда Link EXE file в меню Compile).
5. Выполнить программу (команда Run в меню Run).
6. Выполнить отладку программы в пошаговом режиме (Trace into и Step over).
Trace into в пошаговом режиме выполняет и основную программу и вызываемые функции.
Step over основную программу выполняет в пошаговом режиме, а вызываемые функции целиком, как одну команду.
7. Выполнить команду Make EXE file. Эта команда компилирует программу, и если ошибок нет, то компонует её.
8. Выполнить команду Build all. В многофайловой программе она перекомпилирует все файлы, если даже некоторые файлы неизменялись. Хорошо, когда что-то не получается с Make, которая в многофайловой системе компилирует только изменённые файлы.
9. Выполните команду Run. Она компилирует исходные тексты, компанует объектные и библиотечные файлы и выполняет программу. Хорошо применять после отладки программы.
Исходный текст программы с ошибками.
#include <stadio.h> // подключаемые файлы с описанием библиотечных функций
#define NAME_SIZE 81
int optional_weight(int); // вызываемая функция
void main(void) // главная функция, имеется во всех программах. С неёначинается выполнение //программы
{
char name[NAME_SIZE];
float weight, height, difference;
do
{
puts(“\nЗдравствуйте! Как вас зовут?”);
gets(name);
puts(“Введите ваш рост в сантиметрах”);
scanf(“%f’, &weight);
difference=weight-optimal(height);
if(!difference>0)
printf(“%s!Вам нужно уменьшить вес на %d кг/n”,name,difference);
else
printf(“%! Вы не добираете %d кг/n”,name,difference);
puts({“Хотите продолжить? Д/Н”);
scanf(“%c”,&continue);
while(!(continue==’H’|| continue==’H’));
}
}
int optional(int height); // вызываемая функция
{
if(height>100.)
return(height-100.);
return(height);
}
Переделанная программа без ошибок:
#include <stdio.h>
#define NAME_SIZE 81
float optional_weight(float);
void main( )
{
char name[NAME_SIZE];
char cont;
float weight, height, difference;
do {
puts("\nЗдравствуйте как вас зовут?");
scanf("%s",&name);
puts("Введите ваш рост в сантиметрах");
scanf("%f", &height);
puts("A теперь вес в килограммах");
scanf("%f",&weight);
difference = optional_weight(height);
if (difference==weight) printf("%s! Это оптимальное соотношение\n",name);
if (difference < weight) printf("%s! Вам необходимо уменьшить вес на %f кг\n,name, difference);
if (difference > weight) printf("%s ! Вы не добираете %f кг\n", name, difference-weight);
puts("Хотите продолжить? 1 Да/0 Нет");
scanf("%c", &cont);
} while (cont == 1);
}
float optional_weight(float height)
{
if (height > 100) return (height - 100);
return(height);
}
Вывод:
Проделав лабораторную работу, я научился выводить на экран, вводить с клавиатуры, а так же исправлять ошибки в программах С.
Я познакомился с основами языка программирования С.
Результат выполнения программы.
Здравствуйте! Как вас зовут?
Сергей
Введите ваш рост в сантиметрах
183
А теперь вес в килограммах
83
Сергей! Это оптимальное соотношение
Хотите продолжить? 1-Да ! / 0-Нет J
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.