Частина тексту файла (без зображень, графіків і формул):
Міністерство освіти і науки України
НУ ”Львівська політехніка”
Кафедра ЕОМ
Звіт
про виконання лабораторної роботи №2
з курсу: „Засоби системного програмування”
на тему
Структура Сі-програми.
Оператори мови програмування Сі
Тема роботи: Структура Сі-програми. Оператори мови програмування Сі.
Мета роботи: Закріпити теоретичні знання та навики аналізу типових Сі-програм. Засвоїти синтаксис та семантику операторів мови Сі.
Завдання на лабораторну роботу
Завантажити в середовище програмування Borland C++ 3.1, відповідно до вказаного варіанту, типові програми на мові Сі. (програми INTRO13.c, INTRO19.c та INTRO26.c каталогу „../EXAMPLES”.
Проаналізувати призначення та структуру програм.
Відкомпілювати програми та дослідити їх роботу.
Детально прокоментувати типові оператори програми.
Результати виконання роботи.
Завантажую вказані вище програми в середовище програмування Borland C++.
Програма INTRO13.c демонструє деякі оператори для аналізу символів та принципи роботи з ними.
Текст програми:
/* INTRO13.C--Example from Chapter 4 of Getting Started */
#include <conio.h> /*файл, який містить функції призначені для забезпечення небуферизованого вводу*/
#include <stdio.h> //файл, який містить функції стандартного вводу-виводу
#include <ctype.h> /*файл, в як мру містяться прототипи функцій, призначених для аналізу символів*/
int main()
{
char cmd;
printf("Chart desired: Pie Bar Scatter Line Three-D");
printf("\nPress first letter of the chart you want: ");
cmd = toupper(getch()); /*”toupper”: якщо символ нижнього регістру то повертає його версію верхнього регістру, інакше залишає без змін. „getch” — функція, яка відключає ехо-повторення символів*/
printf("\n");
if (cmd == 'P') //== — операція порівняння if — умовний оператор
printf("Doing pie chart\n"); //конструкція, яка дає змогу перебирати можливі //варіанти
else if (cmd == 'B')
printf("Doing bar chart\n");
else if (cmd == 'S')
printf("Doing scatter chart\n");
else if (cmd == 'L')
printf("Doing line chart\n");
else if (cmd == 'T')
printf("Doing 3-D chart\n");
else printf("Invalid choice.\n");
return 0;
getchar();
}
Внаслідок виконання програми і після запиту введення „В” на екрані отримаємо:
Chart desired: Pie Bar Scatter Line Three-D
Press first letter of the chart you want:
Doing bar chart
Програма INTRO19.c демонструє дію оператора циклу while а також деякі унарні та оператори присвоєння.
Текст програми:
/* INTRO19.C--Example from Chapter 4 of Getting Started */
#include <stdio.h>
int main()
{
int number = 1, total = 0;
while (number < 11) { /*оператор циклу while: поки number<11, виконується блок операторів {}*/
total += number; // += : total=total + number
number++; // ++ : number=number+1
}
printf("Total of numbers from 1 to 10 is %d\n", total);
getchar();
return 0;
}
Внаслідок виконання програми на екрані отримаємо:
Total of numbers from 1 to 10 is 55
Програма INTRO26.c демонструє принципи роботи з масивами.
Текст програми:
/* INTRO26.C--Example from Chapter 4 of Getting Started */
#include <stdio.h>
int main()
{
float hours[52]; //масив з 52 елементів типу float
int week;
/* Initialize the array */
for (week = 0; week < 52; week++) /*оператор циклу for (поч. знач. лічильника;
граничне значення; крок лічильника)*/
hours[week] = 0;
/* Store four values in array */
hours[0] = 32.5; //елементам масиву присвоюються певні значення
hours[1] = 44.0;
hours[2] = 40.5;
hours[3] = 38.0;
/* Retrieve values and show their addresses */
printf("Elements\t\tValue\tAddress\n");
for (week = 0; week < 4; week++)
printf("hours[%d]\t\t%3.1f\t%p\n", week, hours[week],
&hours[week]); //виводяться щначення елементів масиву
getchar();
return 0;
}
Внаслідок виконання програми на екрані отримаємо
Elements Value Address
hours[0] 32.5; 0012FEB0
hours[1] 44.0; 0012FEB4
hours[2] 40.5; 0012FEB8
hours[3] 38.0; 0012FEBC
Висновок: на даній лабораторній роботі я закріпив теоретичні знання та навики аналізу типових Сі-програм. Засвоїв синтаксис та семантику операторів мови Сі.