
- •Основы программирования язык “с” Минск – 2005
- •§1 Введение в программирование
- •Void main()
- •Void main()
- •Void main()
- •2 Распечатать свою фамилию следующим образом
- •3. Распечатать прямоугольник следующим образом
- •1.1 Простые программы: печать стоки текста Понятие переменной.
- •Volatile while
- •1.2 Целый тип данных
- •1.3 Числа с плавающей точкой
- •Void main({
- •1.4 Символьный тип
- •Void main()
- •§2 Управляющий структуры
- •2.1 Структура выбора if (если) и if/else(если - иначе)
- •Void main()
- •Void main()
- •2.2 Структуры повторенийfor(цикл)
- •Void main()
- •Void main()
- •2.3 Структура повторения while (пока)
- •Void main()
- •Void main()
- •Void main(){
- •Void main()
- •Void main()
- •2.4 Структура многомерного выбора switch
- •Void main()
- •Void main()
- •2.5 Операторы continue и break
- •Void main()
- •Void main()
- •2.6 Контрольные вопросы:
- •§3 Функция
- •Int printf(“const char * string”,…); %[флаг][ширина][точность][модификатор типа] тип_формата
- •Int scanf(const char * format, ……); возвращаемое значение – число считанных полей
- •3.1 Определение функции:
- •3.2 Классы памяти.
- •3.3 Указатели
- •Void main()
- •Void fff(int,int,int*,int*,int*,double*);
- •Void main()
- •Void fff(int a,int b,int*p1,int*p2,int*p3,double*p4)
- •Генерация случайных чисел.
- •Void main()
- •Void main()
- •Void main()
- •Void main(){
- •Void main()
- •3.6 Переменные перечисляемого типа
- •Int rollDice();
- •Void main()
- •Int sum,myPoint;
- •Int rollDice(){
- •Int die1,die2,workSum;
- •Void main()
- •§4 Массивы
- •4.1 Одномерные массивы
- •Int array[10];
- •4.2 Примеры использования массивов
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •4.3 Сортировки массивов
- •Void main()
- •Void main()
- •Void main()
- •Void main(){
- •Int arr1[maxsize],arr2[maxsize],buf;
- •Void main()
- •4.4 Передача массивов функции
- •4.5 Двумерные массивы
- •Void main()
- •Int I,j,temp;
- •Void main()
- •4.6 Контрольные вопросы:
- •§5 Символьная строка
- •5.1 Объявление символьной строки
- •Void main()
- •Void main()
- •Int srav(char *,char *);
- •Void main()
- •Int srav(char *X,char *y)
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •5.3 Массив строк
- •Void main()
- •Void main()
- •Void main()
- •§6 Динамическое распределение памяти
- •6.1 Функция malloc()
- •Void * malloc(unsigned size)
- •Void free(free *ptr)
- •Void main(){
- •Void main(){
- •Void vvod_mas(int*,int);
- •Void sort_vozr(int*,int);
- •Void main()
- •Vvod_mas(ptr1,n1);
- •Vvod_mas(ptr2,n2);
- •Void sort_vozr(int*X,int n)
- •Void vvod_mas(int*X,int n)
- •6.2 Функция сalloc()
- •Void * сalloc(unsigned num ,unsigned size)
- •6.3 Функция realloc()
- •Void * realloc(void *ptr ,unsigned size)
- •§7 Структура
- •7.1 Объявление структуры
- •Void main()
- •7.2 Объединения
- •§8 Файлы и потоки
- •8.1 Объявления файла
- •Int feof(file *);
- •8.2 Работа с текстовым файлом
- •Int fprintf(file *, const char format, …);
- •Void main()
- •Int account;
- •Int fputs(const char *, file *);
- •Int fscanf( file *, const char *format, …..);
- •Void main()
- •Void main()
- •Int account;
- •Void main()
- •Int fseek(file *,long ,int );
- •Void main()
- •Void main()
- •Void main()
- •Void show_file(file *k1)
- •Void dobav_file(file *k1)
- •Void fill_file(file *k1)
- •Создание файла произвольного доступа.
- •8.3 Работа с бинарным файлом
- •Void main()
- •Void main()
- •Void print_file(file *);
- •Void main(){
- •If(feof(k1)){
- •If(feof(k2)){
- •Void print_file(file *k){
- •8.4 Kонтрольные вопросы
- •Какие операции определены со строками?
2.3 Структура повторения while (пока)
while(условие) оператор;
|
while(условие) { оператор1; оператор2; и т.д. }
|
do { оператор; }while(условие); |
Оператор while организует повторное выполнение одного оператора или несколько операторов, заключенных в фигурных скобках {}, до тех пор пока <условие> верно. Оператор while, как и оператор for называются операторами цикла с предусловием, т.к. истинность условия проверяется перед входом в цикл. Оператор do … while называется оператором цикла с постусловием и используется в тех случаях, когда необходимо обеспечить выполнение цикла хотя бы один раз.
Задачи:
Посчитать сумму всех вводимых чисел, ввод чисел завершается, когда вводим 99.
#include<stdio.h>
Void main()
{
int x,sum=0;
printf(«Введите число: «);
scanf(«%d»,&x);
while(x!=99)
{
sum+=x;
printf(«Введите число:»);
scanf(“%d”,&x);
}
printf(“sum=%d\n”,sum);
}
В данной программе число 99 не входит в сумму. А если нужно, чтобы 99 вошло в сумму, то необходимо написать программу следующим образом:
#include<stdio.h>
Void main()
{
int x,sum=0;
do
{
printf(“Введите число: “);
scanf(“%d”,&x);
sum+=x;
} while(x!=99);
printf(“sum=%d\n”,sum);
}
Посчитать количество всех вводимых чисел, ввод чисел завершается, когда вводим 999.
#include<stdio.h>
Void main(){
int x,k=0;
printf(“”);
scanf(“%d”,&x);
while(x!=999)
{
k++;
printf(“Введите число:”);
scanf(«%d»,&x);
}
printf(«количество введенных чисел = %d\n»,k);
}
Посчитать количество всех вводимых нечетных чисел, ввод чисел завершается, когда вводим 22.
Посчитать сумму всех вводимых чисел и число четных, ввод чисел завершается, когда вводим 0.
Посчитать количество четных, положительных чисел, ввод чисел завершается, когда вводим 0.
#include<stdio.h>
Void main()
{
int x,k=0;
printf(«Введите число:»);
scanf(“%d”,&x);
while(x)
{
if(x%2==0 && x>0)
k++;
printf(«Введите число:»);
scanf(«%d»,&x);
}
printf(«Количество четных, положительных чисел = %d\n»,k);
}
Посчитать количество нечетных, отрицательных чисел и произведение всех чисел, ввод чисел завершается, когда вводим 0.
Программа, которая находит наименьшее из нескольких вещественных чисел. Предполагается, что первое введенное число задает количество последующих вводимых чисел.
Написать любую задачу используя, оператор цикла for.
Ввести число и распечатать те цифры данного числа, которые делятся без остатка на три (используя / и %)
#include<stdio.h>
Void main()
{
int n,z;
printf(“Введите число: “);
scanf(“%d”,&n);
while(n){
z=n%10;
if(z%3==0)
printf(“%d “,z);
n=n/10;
}
}
Ввести число и распечатать сумму цифр данного числа.
Ввести пятизначное число и определить является ли данное число палиндромом или нет. Палиндром – это число или текст, который одинаково читается слева направо и справа налево.
Разработать программу, которая должна определять заработную плату для каждого работника. Компания выплачивает каждому служащему почасовую зарплату за первые 40 часов работы и выплачивает в полуторном размере за все рабочие часы сверх 40. Вам дан список сотрудников, число часов отработанных каждым сотрудником и почасовая ставка каждого сотрудника. Программа должна ввести эти данные для каждого сотрудника, распечатать и вывести на экран его суммарную зарплату. Например:
Введите число рабочих часов (-1, если ввод закончен): 39
Введите почасовую ставку работника: 10.0
Заработок: 390.00
Введите число рабочих часов (-1, если ввод закончен): 40
Введите почасовую ставку работника: 10.0
Заработок: 400.00
Введите число рабочих часов (-1, если ввод закончен): 41
Введите почасовую ставку работника: 10.0
Заработок: 415.00