M. УЭИТ - Язык Си - руководство для начинающих

Тут можно читать онлайн M. УЭИТ - Язык Си - руководство для начинающих - бесплатно полную версию книги (целиком) без сокращений. Жанр: comp-programming, издательство Мир, год 1988. Здесь Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    Язык Си - руководство для начинающих
  • Автор:
  • Жанр:
  • Издательство:
    Мир
  • Год:
    1988
  • Город:
    Москва
  • ISBN:
    5-03-001309-1 /русск./
  • Рейтинг:
    3.56/5. Голосов: 91
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 80
    • 1
    • 2
    • 3
    • 4
    • 5

M. УЭИТ - Язык Си - руководство для начинающих краткое содержание

Язык Си - руководство для начинающих - описание и краткое содержание, автор M. УЭИТ, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru
M. УЭИТ   С. ПРАТА    Д. МАРТИНЯзык Си — руководство для начинающих

Язык Си - руководство для начинающих - читать онлайн бесплатно полную версию (весь текст целиком)

Язык Си - руководство для начинающих - читать книгу онлайн бесплатно, автор M. УЭИТ
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Резюме: операции в языке Си

Ниже перечислены операции, которые мы уже обсудили.

= Присваивает величину справа от знака переменной слева от него

+ Прибавляет величину справа от знака к величине слева от него

- Вычитает величину справа от знака из величины слева от него

- Унарная операция, изменяет знак величины справа от знака

* Умножает величину справа от знака на величину слева от него

/ Делит величину слева от знака на величину справа от него.

Результат усекается, если оба операнда целые числа

% Дает остаток при делении величины слева от знака на величину

справа от него (только для целых чисел)

++ Прибавляет 1 к значению переменной слева от знака (префиксная форма)

или к значению переменной справа от знака (постфиксная форма)

-- Аналогичная операции ++, но вычитает 1

sizeof Дает размер операнда, стоящего справа, в байтах.

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

как, например, sizeof (float), или именем конкретной переменной,

массива и т. п., например sizeof foo

(тип) Операция приведения: приводит величину, стоящую справа, к типу,

определяемому ключевым словом (или словами) в скобках. Например,

(float)9преобразует целое число 9в число с

плавающей точкой 9.0.

ПРИМЕР ПРОГРАММЫ

На рис. 5.8 приведена программа, которая может оказаться полезной тем, кто занимается бегом, и которая иллюстрирует некоторые положения данной главы. Она выглядит довольно длинной, но все вычисления в ней выполняются шестью операторами, помещенными в конце. Большей частью программа занимается организацией диалога между машиной и пользователем. Мы ввели в программу достаточно большое число комментариев, чтобы сделать ее почти самодокументируемой. Просмотрите ее, а затем мы объясним некоторые ее моменты.

/* бег */

# define SM 60 /* число секунд в минуте */

# define SH 3600 /* число секунд в часе */

# define МК 0.62137 /* число миль в километре */

main()

{

float distk, distm; /* дистанция в км и милях */

float rate; /* средняя скорость в милях в час */

int min, sec; /* время бега в минутах и секундах */

int time; /* время бега в секундах */

float mtime; /* время пробега одной мили в секундах */

int mmin, msec; /* время пробега одной мили в минутах и секундах */

printf(" Эта программа пересчитывает ваше время пробега дистанции, выраженной в км, \n");

printf(" во время, требуемое для пробега одной мили, и вашу среднюю \n");

printf(" скорость в милях в час,\n");

printf(" Укажите, пожалуйста, дистанцию в километрах.\n");

scanf(" %f ", &distk);

printf(" Введите затем время в минутах и секундах. \n ");

printf(" Начните с ввода минут. \n");

scanf(" %d", &min);

printf(" Теперь вводите секунды. \n");

scanf(" %d", &sec);time = SM * mm + sec; /* переводит время в секунды */

distm = MK * distk; /* переводит километры в мили */

rate = distm / time*SH; /* число миль в сек * число

сек в час = число миль в час */

mtime = (float)time / distm; /* время/дистанция = время на милю */

mmin = (int)mtime / SM; /* находит целое число минут */

msec = (int)mtime % SM; /* находит остаток в секундах */

printf("Bы пробежали %1.2f KM (%1.2f мили) за %d мин %d с \n",distk, distm, mm, sec);

printf(" Эта скорость соответствует пробегу мили за %d : мин", mmin);

printf("%d c.\n Ваша средняя скорость %l.2f миль/ч \n", msec, rate);

}

РИС. 5. 8. Программа, полезная для тех, кто занимается бегом

Здесь мы применили тот же подход, который использовали в программе секунды в минуты для перевода времени, выраженного в секундах, в минуты и секунды. Кроме того, нам пришлось воспользоваться преобразованиями типов. Почему? Потому что для той части программы, которая занимается переводом секунд в ми нуты, нам требуются аргументы целого типа, а при преобразовании из метрической системы в мили используются числа с плавающей точкой. Мы применили операцию приведения для того, чтобы сделать эти преобразования явными.

Честно говоря, нашу программу можно было бы написать, используя только автоматическое преобразование типов. Мы так и делали, применяя операцию приведения переменной mtimeк типу int, чтобы при вычислении времени все операнды были целого типа. Однако такая версия компилятора работает всего на одной из двух доступных нам систем. Использование операции приведения не только проясняет ваш замысел человеку, знакомящемуся c вашей программой, но и упрощает ее компиляцию.

Вот результат работы данной программы.

Эта программа пересчитывает ваше время пробега дистанции, выраженной в км,во время, требуемое для пробега одной мили, и вашу среднюю скорость, в милях в час.

Укажите, пожалуйста дистанцию в километрах.10,0.Введите затем время в минутах и секундах.

Начните с ввода минут.36.Теперь введите секунды.23Вы пробежали 10,00 км (6,21 мили) за 36 мин. 23 с.

Эта скорость соответствует пробегу мили за 5 мин 51 с.

Ваша средняя скорость 10.25 миль/ч

ЧТО ВЫ ДОЛЖНЫ БЫЛИ УЗНАТЬ В ЭТОЙ ГЛАВЕ

Как использовать операции: +,-,*,/,%,++, --, (type).

Что такое операнд: это - величина, над которой выполняется операция.

Что такое выражение: совокупность операций и операндов.

Как вычислять значение выражения: в соответствии с порядком старшинства.

Как распознать оператор: по символу.

Виды операторов: операторы описания, присваивания, while, составной.

Как сформировать составной оператор: заключить последовательность операторов в фигурные скобки {}.

Как сформируется оператор while: while(проверка условия) оператор.

Как вычисляются выражения со смешанными типами данных: с помощью автоматического преобразования типов.

ВОПРОСЫ И ОТВЕТЫ

Вопросы.

1. Предположим, все переменные имеют тип int. Определите значение каждой из последующих переменных:

а. х = (2+3)*6,

б. х = (12+6)/2*3,

в. y = x = (2+3)/4,

г. y = 3 + 2*(x = 7/2 ),

д. x = (int)3.8 + 3.3,

2. Мы подозреваем, что в программе, приведенной ниже, имеется несколько ошибок. Сумеете ли вы помочь нам их обнаружить?

main( )

{

int i = 1,

float n;

printf(" Внимание! Сейчас появится несколько дробей. \n");

while (i < 30)

n = 1/ i;

printf(" %f", n);

printf(" Вот и все! Конец! \n"),

}

3. Ниже приведена первая попытка сделать программу "секунды в минуты" диалоговой. Программа нас не удовлетворяет. Почему? Как ее улучшить?

#define SM 60

main( )

{

int sec, mm, left,

printf( Эта программа переводит секунды в минуты и секунды \n );

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


M. УЭИТ читать все книги автора по порядку

M. УЭИТ - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




Язык Си - руководство для начинающих отзывы


Отзывы читателей о книге Язык Си - руководство для начинающих, автор: M. УЭИТ. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x