- •Рецензенты:
- •Лекция 1 Основные понятия языка с
- •Первая программа
- •Переменные языка с
- •Имя переменной
- •Объявление константы
- •Операции языка с
- •Лекция 2 Операторы языка с Условный оператор
- •Оператор безусловного перехода
- •Оператор switch
- •Циклы Цикл for
- •Циклы while и do-while
- •Использование операторов break, continue и goto в циклах
- •Операция условие ?
- •Лекция 3 Массивы
- •Инициализация массивов
- •Массивы символов. Строки
- •Функции для работы со строками
- •Лекция 4 Указатели
- •Объявление указателей
- •Операции над указателями
- •Связь указателей и массивов
- •Массивы указателей
- •Инициализация указателей
- •Лекция 5 Функции языка с
- •Объявление функции
- •Оператор return
- •Прототипы функций
- •Функции c произвольным числом параметров
- •Область действия и область видимости переменной
- •Классы памяти
- •Параметры и аргументы функции
- •Лекция 6 Типы, определяемые пользователями
- •Структура
- •Перечислимый тип
- •Переименование типов-typedef
- •Лекция 7 Модели памяти и препроцессор языка с Модели памяти
- •Препроцессор языка с
- •Директива #define
- •Список рекомендуемой литературы
- •Оглавление
- •Программирование на языках высокого уровня: с
- •428015 Г.Чебоксары, Московский просп., 15
Переменные языка с
В языке С все переменные должны быть объявлены до их использования. В языке С определены 5 базовых типов данных:
char - символьные. Например, char с; c='d';
int - целые. Например, int а; а= 145;
float - с плавающей точкой. Например, float s, d; d= 145.09;
doublе - с плавающей точкой двойной длины. Например, double x; х=145.09;
void –“пустой”, не имеющий значения.
Типы char и int являются целыми типами и предназначены для хранения целых чисел. Название типа char - символьная переменная. Любой символ в компьютере связан с целым числом - кодом этого числа, например, в таблице ASCII. Сам символ необходим, когда информация выводится на экран или на принтер или, наоборот, вводится с клавиатуры. Подобные преобразования символа в код и наоборот производятся автоматически. Следующая программа иллюстрирует сказанное:
№ строки |
Программа 1.3. |
1 |
#include<stdio.h> |
2 |
void main() |
3 |
{ |
4 |
int a; |
5 |
char c=’a’; |
6 |
a=12; |
7 |
printf(“Результат a=%d\n”,a); |
8 |
printf ("Печатаем char как int c= %c\n", c); |
9 |
printf ("Печатаем char как char c= %c\n", c); |
10 |
} |
Результат работы этой программы |
Результат а=12 Печатаем char как int c=97 Печатаем char как char c=a |
Нa основе базовых типов строятся дальнейшие тины данных. Простейшим приемом является использование модификаторов типа, которые ставятся перед соответствующим типом. В стандарте ANSI языка С такими модификаторами являются следующие зарезервированные слова:
Signed - знаковый - применяется к типам char и int.
Unsigned - беззнаковый - применяется к типам char и int.
Long - длинный - применяется к типу int, а также double.
Short - короткий - применяется к типу int.
Следующая программа иллюстрирует использование различных типов переменных и функции sizeof, результат которой число байт занимаемых переменной
№ строки |
Программа 1.4. |
1 |
#include<stdio.h> |
2 |
void main() |
3 |
{ char c=’q’ |
4 |
int i=45; |
5 |
long int l=45; |
6 |
double d=45.09 |
7 |
long double ld=45.09; |
8 |
/* Печатаем объявленные переменные и размер в байтах, который они занимают в памяти */ |
9 |
printf(“char c =%c sizeof(c)=%d\n”,c,sizeof(c)); |
10 |
printf("int number i = %d sizeof(i)= %d\n", i, sizeof(i)); |
11 |
printf(“long int number 1 = %ld sizeof(l)= %d\n", 1, sizeof(l)); |
12 |
printf("double number d=%e sizeof(d)= %d\n", d, sizeof(d) |
13 |
printf(“long double number Id = %Le sizeof(ld)- %d\n". ld, sizeof(ld));} |
Результат работы этой программы |
char с =q sizeof(c)=l int number I = 45 sizeof(i)=2 long int number 1 = 45 sizeof(l)=4 double number d=4.509000e+01 sizeof(d)=8 long double numbег Id = 4.509000c+01 sizeof(ld)=10 |
