Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка Си.doc
Скачиваний:
1
Добавлен:
09.11.2019
Размер:
165.89 Кб
Скачать

Void main(){ }

Все действия, выполняемые внутри функции заключаются в системных скобках { } – это аналог связки begin-end в языке Паскаль. Приведем пример программы пустой программы.

Пример

#include <stdio.h>

void main(){

// … действия

}

Данная программа не производит никаких действий, однако успешно компилируется и запускается. Следует заметить, что если тип программы не void, то необходимо вернуть выходное значение с помощью комбинации return. Комбинация символов встречаемая в примере // предназначена для записи комментариев. Все, что стоит в строке после символов // будет закомментировано. Для комментирования большой части текста его заключают между символами /* */.

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

Список операций и их назначение приведен в таблице операции. Все операции имеют свой приоритет. Например операции «() и []» имеет наивысший приоритет, а операция «,» самый низкий приоритет. К операциям также относятся операция условия «?:» и операция «sizeof». Операция «?:» единственная операция имеющая три операнда. Она имеет следующий вид:

(выр1)?(выр2):(выр3)

Вычисляется выражение выр1. Если это выражение имеет ненулевое значение, то вычисляется выражение выр2. Результатом операции будет значение выражения выр2. Если значение выражения равно нулю, то вычисляется выражение выр3 и его значение будет результатом операции.

Например найти наибольшее из двух чисел x и y можно следующим образом:

max=(x>y)?x:y;

Операция sizeof вычисляет целочисленное значение величины типа или выражения в байтах. Например:

sizeof(short int);

Приведем список ключевых слов используемых в языке Си.

Список ключевых слов:

auto

double

int

struct

break

else

long

switch

case

enum

register

typedef

char

extern

return

union

const

float

short

unsigned

continue

for

signed

void

default

goto

sizeof

while

do

if

static

volatile

.

Заметим, что ключевые слова не могут быть переопределены.

Практически не одна программа не обходится без функций ввода и вывода. Рассмотрим некоторые функции ввода и вывода в языке Си.

Функция printf() предназначен для форматированного вывода в стандартный поток ввода/вывода. Для ее использования необходимо подключить библиотеку ввода вывода stdio.h. Она имеет следующей набор параметров:

Int printf( const char *format, арг1, арг2, … );

Параметр «format» является управляющей последовательностью. Он имеет следующий вид:

%[флаги][ширина][.точность][размер]тип

Остальные необязательные параметры обозначенные символом арг1, арг2, … являются списком выводимых переменных. Их количество и тип задаются (определяется) в управляющей последовательности.

Флаги могут принимать одно из следующих значений приведенных в таблице Флаги, а некоторые значения типов приведены в таблице Значения типов.

Флаги

Знак

Название знака

Значение

В отсутствие этого знака

-

дефис

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

по правому

+

плюс

всегда указывать знак (плюс или минус) для выводимого десятичного числового значения

только для отрицательных чисел

пробел

помещать перед результатом пробел, если первый символ значения не знак

Вывод может начинаться с цифры.

0

ноль

дополнять поле до ширины, указанной в поле ширина управляющей последовательности, символом 0

дополнять пробелами

Значения типов

Спецификатор

Описание

d, i

— десятичное знаковое число,

o

— восьмеричное беззнаковое число

u

— десятичное беззнаковое число

x и X

— шестнадцатеричное число, x использует маленькие буквы (abcdef), X большие (ABCDEF),

f и F

— числа с плавающей запятой.

e и E

— числа с плавающей запятой в экспоненциальной форме записи (вида 1.1e+44);

a и A

— число с плавающей запятой в шестнадцатеричном виде;

c

— вывод символа с кодом, соответствующим переданному аргументу

s

— вывод строки с нулевым завершающим байтом;

p

— вывод указателя,

n

— запись по указателю, переданному в качестве аргумента, количества символов, записанных на момент появления командной последовательности, содержащей n;

Функция scanf() предназначен для форматированного ввода данных. Для ее использования также необходима библиотека ввода вывода stdio.h. Она имеет почти эквивалентный набор параметров, что и функция printf(). Единственное отличие это знак & (взятие адреса), который необходимо ставить перед вводимыми переменными. Значение этого знака заключается в том, что введенное значение записывается по адресу, по которому находятся наши переменные арг1, арг2,… .