- •1 Порядок разработки программного продукта
- •2 Структура программы на языке с
- •Int age; // Поле age
- •Void main(void) // Основная функция
- •3 Типы данных языка с
- •Void main(void)
- •Int *iptr; // Объявление указателя
- •Void main(void)
- •Int *iptr; // Объявление указателя
- •Void main(void)
- •Void show_string(char *string)
- •Void main(void)
- •4 Операции языка с
- •Арифметические операции
- •Void main(void)
- •Void main(void)
- •Логические операции
- •Void main(void)
- •Операции отношения
- •Поразрядные операции
- •Побитовые операции
- •Void main(void)
- •Адресные операции
- •Операция “условие”
- •Void main(void)
- •Операция sizeof()
- •Void main(void)
- •Int size;
- •Void main(void)
- •Int *iptr;
- •Void main(void)
- •Int *list,I;
- •Операция вызова функции
- •5 Операторы языка с
- •Условный оператор if
- •Оператор switch
- •Void main(void)
- •Void main(void)
- •Оператор цикла for
- •Void main(void)
- •Void main(void)
- •Void main(void)
- •Цикл while
- •Void main(void)
- •Цикл do ... While
- •Void main(void)
- •Вложенные циклы
- •Void main(void)
- •Void main(void)
- •Int I,j,score;
- •Int scores[line][column];
- •Оператор безусловного перехода
- •Оператор break
- •Void main(void)
- •Оператор continue
- •Void main(void)
- •If (I % 5) continue;
- •Оператор return
- •6 Организация функций
- •Int sum_vect(int V[], int n)
- •Void main(void)
- •Void main(void)
- •Void main(void)
- •7 Библиотечные функции
- •7.1 Функции форматного ввода-вывода
- •Int printf(char*format[, argument,...]);
- •Void main(void)
- •Void main(void)
- •Int scanf(char *format[,argument,...]);
- •Функции для работы с файлами
- •Void main(void)
- •Int vect[line];
- •Void main(void)
- •Void main(void)
- •Void main(void)
- •Void main(void)
- •7.3 Графические средства языка с
- •Void main(void)
- •Initgraph(&gdriver, &gmode, ""); // Инициализация графического режима
- •Int maxX, maxY;
- •Void far initgraph(int far *driver, int far *mode, char far *path);
- •Void main(void)
- •Int driver, mode, errorcode;
- •Void far rectangle(int left, int top, int right, int bottom);
- •Void far setviewport(int left, int top, int right, int bottom, int flag);
- •Void far circle(int X, int y, int radius);
- •7.4 Функции для работы со строками
- •Void main (void)
- •Void main (void)
- •Void main (void)
- •Void main (void)
- •Void main (void)
- •7.5 Математические функции
- •Продолжение таблицы а.7
- •Продолжение таблицы а.7
Оператор switch
Это оператор множественного выбора (переключения). Основная форма оператора имеет вид:
switch (выражение)
{
case constant 1: последовательность операторов; break;
case constant 2: последовательность операторов; break;
.......................
case constant N: последовательность операторов; break;
default: последовательность операторов;
}
Слово default и соответствующая последовательность операторов может отсутствовать.
Порядок выполнения оператора switch: сначала вычисляется выражение в скобках, затем полученное значение сравнивается со списком меток, следующих за словом case, далее выполняется последовательность операторов, следующая за двоеточием. Если соответствующая метка не найдена, то выполняется последовательность операторов, находящаяся за ключевым словом default. Наличие оператора break приводит к выходу из оператора switch (см. пример 5.1), при отсутствии слова break происходит последовательное выполнение всех вариантов case, следующих за текущим (см. пример 5.2).
// Пример 5.1.
// Операторы switch и break
Void main(void)
{
char ch;
printf("Введите букву от A до D");
scanf("%c",&ch);
switch(ch)
{
case 'A': printf("Буква A\n"); break;
case 'B': printf("Буква B\n"); break;
case 'C': printf("Буква C\n"); break;
case 'D': printf("Буква D\n"); break;
default : printf("Такой буквы нет\n");
}
}
// Пример 5.2.
// Работа с оператором switch без break
#include <stdio.h>
Void main(void)
{
char ch;
printf("Введите заглавную букву алфавита :");
ch=getchar();
if((ch >= 'А') && (ch <= 'Я'))
switch(ch)
{
case 'А': printf("Алексеев, \n");
case 'Б': printf("Булгаков, \n");
case 'В': printf("Волошин, \n");
case 'Г': printf("Гоголь, \n");
default : printf("Достоевский, Зощенко и другие \n");
}
else printf("Надо было ввести заглавную русскую букву\n");
}
Оператор цикла for
Оператор for обеспечивает повторное выполнение одного или более операторов заданное число раз. Для подсчета количества итераций цикла используется управляющая переменная.
Формат оператора for:
for (выражение 1; выражение 2; выражение 3) оператор;
выражение 1 — инициализация, то есть присвоение начального значения управляющей переменной цикла i;
выражение 2 — проверка условия для завершения цикла;
выражение 3 — приращение управляющей переменной;
оператор — это тело цикла, которое выполняется многократно.
Примеры организации циклов:
for (i = 0; i < 10; i++) printf(“%d\n”,i); — выводит цифры от 0 до 9;
for (i = 9; i >= 0; i --) printf(:%d\n”,i); — выводит цифры от 9 до 0;
for (i = 0; i <10000; i++); — пустой цикл;
for (i = 0; i++; i <10000) printf(“%d\n”,i); — ошибочная запись, будет распечатано два значения 0 и 1 и цикл завершится;
for ( ; ; ) printf(“Бесконечный цикл \n”);
for (i = 1; 1; i++) printf(“Бесконечный цикл \n”);
for (i = 10; i >6; i++) printf(“Бесконечный цикл \n”);
Выход из бесконечного цикла можно осуществить с помощью оператора break:
for (i = 0; i <10; i++)
{
x = a + b;
if (! =x) break;
y = 1.0/x;
}
Циклы удобно использовать при работе с векторами (см. пример 5.3) и матрицами (см. пример 5.4).
// Пример 5.3.
// Вычислить среднее аpифметическое 10 вещественных чисел
#include <stdio.h>
#define LINE 10