Элементы Языка СИ
Операторы • - условные операторы, к которым относятся оператор условия if и оператор выбора switch; • - операторы цикла (for, while, do while); • - операторы перехода (break, continue, return, goto);
Оператор if • if (выражение) оператор-1; [else оператор2; ] if (i < j) i++; else { j = i-3; i++; }
Сложный IF • • • int main ( ) { int t=2, b=7, r=3; if (t>b) { if (b < r) r=b; } else r=t; return (0); }
Оператор switch • • • int i=2; switch (i) { case 1: i += 2; case 2: i *= 3; case 0: i /= 2; case 4: i -= 5; default: ; }
Оператор break обеспечивает прекращение выполнения самого внутреннего из объединяющих его операторов switch, do, for, while. После выполнения оператора break управление передается оператору, следующему за прерванным
Переключатель
Оператор while (выражение) тело ; • int i, j, k; • . . . • i=0; j=0; k=0; • do { i++; • j--; • while (a[k] < i) k++; • } • while (i<30 && j<-30);
Математические функции abs(i) fabs(x) sqrt(x) pow(x, y) log(x) log 10(x) sin(x) cos(x) asin() math. h
Математические функции abs(i) fabs(x) sqrt(x) pow(x, y) log(x) log 10(x) sin(x) cos(x) asin() math. h
Цикл с постусловием (do — while)
СТРУКТУРЫ • Структура в языке Си это совокупность логически связанных переменных, возможно, различных типов, сгруппированных под одним именем. удобства дальнейшей обработки
СТРУКТУРЫ
Оператор for • for ( выражение 1 ; выражение 2 ; выражение 3 ) тело • • • • • int main() { int i, b; for (i=1; i<10; i++) b=i*i; return 0; } int main() { int top, bot; char string[100], temp; for ( top=0, bot=100 ; top < bot ; top++, bot--) { temp=string[top]; string[bot]=temp; } return 0; } for (; ; ) {. . . break; . . . }
Оператор continue • • int main() { int a, b; for (a=1, b=0; a<100; b+=a, a++) { if (b%2) continue; . . . /* обработка четных сумм */ } return 0; }
Оператор goto • • goto имя-метки; . . . имя-метки: оператор; Оператор goto передает управление на оператор, помеченный меткой имяметки. Помеченный оператор должен находиться в той же функции, что и оператор goto, а используемая метка должна быть уникальной, т. е. одно имяметки не может быть использовано для разных операторов программы. Имяметки - это идентификатор.
Определение и вызов функций Функция - это совокупность объявлений и операторов, обычно предназначенная для решения определенной задачи. Каждая функция должна иметь имя, которое используется для ее объявления, определения и вызова. В любой программе на СИ должна быть функция с именем main (главная функция), именно с этой функции, в каком бы месте программы она не находилась, начинается выполнение программы. • • • int rus (unsigned char r) { if (r>='А' && r<=‘ ‘) return 1; else return 0; }
Спецификация файла char namef[]="c: \bc\bin\bc. exe « Системная библиотека BC насчитывает более 120 функций для работы с файлами и свыше 60 констант, задающих режимы работы файловых процедур.
Спецификация файла char namef[]="c: \bc\bin\bc. exe « Системная библиотека BC насчитывает более 120 функций для работы с файлами и свыше 60 констант, задающих режимы работы файловых процедур.
Режимы открытия файла
Открытие файла FILE *f 1; . . f 1=fopen(имя_файла, "режим"); FILE *f 1; if ((f 1= fopen("test", "w")==NUL) { printf("Ошибка при открытии файла. nr")" exit(1); }
Формат операторов обмена с текстовыми файлами • fscanf(f 1, "список_форматов", список_ввода); • fprintf(f 1, "список_форматов n", список_вывода);
Запись в файл
Вывод массива в файл
Запись и чтение данных