Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
16shpora_OAIP_2.docx
Скачиваний:
4
Добавлен:
27.09.2019
Размер:
54.42 Кб
Скачать

Int main(int argc, char* argv[])

{

vvod();

rez();

getch();

return 0;

}

void vvod()

{

int i;

if ((fl=fopen("fl.dat", "w"))==NULL)

{

cout << "Ochibka pri sozdanii" << endl;

exit (1);

}

for (i=0; i<9; i++)

{

cout << "Vvedite simvol " << i+1 << ": ";

cin >> a[i];

fwrite(&a[i], sizeof (char), 1, fl);

}

fclose(fl);

}

void rez()

{

int i;

if ((fl=fopen("fl.dat", "r"))==NULL)

{

cout << "Ochibka pri otkritii" << endl;

exit(1);

}

for (i=0; i<9; i++)

{

if (a[i]<'a')

cout << a[i] << " ";

}

cout << endl;

fclose(fl);

}

Создать файл для хранения ведомости студентов сдавших экзамены. Каждая структура должна содержать фамилию, а также оценки по

математике и програмированию. Прочитать данные из файла и вывести на экран средний балл.

#include <conio.h>

#include <iostream.h>

#include <stdlib.h>

#include <stdio.h>

FILE *fl;

typedef struct

{

char a[20];

int m;

int p;

} st;

int n;

st stud[10];

void vvod();

void rez();

Int main(int argc, char* argv[])

{

cout << "Vvedite chislo studentov: ";

cin >> n;

vvod();

rez();

getch();

return 0;

}

void vvod()

{

int i;

if ((fl=fopen("fl.dat", "w"))==NULL)

{

cout << "Ochibka pri sozdanii" << endl;

exit (1);

}

for (i=0; i<n; i++)

{

cout << "Vvedite fio: ";

cin >> stud[i].a;

cout << "Vvedite otsenky po matematike: ";

cin >> stud[i].m;

cout << "Vvedite otsenky po programirovaniu: ";

cin >> stud[i].p;

fwrite(&stud[i], sizeof (st), 1, fl);

}

fclose(fl);

}

void rez()

{

int i;

double s;

if ((fl=fopen("fl.dat", "r"))==NULL)

{

cout << "Ochibka pri otkritii" << endl;

exit(1);

}

for (i=0; i<n; i++)

{

s=static_cast<double>(stud[i].m+stud[i].p)/2;

cout << stud[i].a << " " << s << endl;

}

cout << endl;

fclose(fl);

}

Написать функцию для сортировки масива целых чисел методом пузырька.

#include <iostream.h>

#include <conio.h>

int n, a[20];

void puz();

Int main(int argc, char* argv[])

{

int i;

cout << "Vvedite chislo elementov: ";

cin >> n;

for (i=0; i<n; i++)

{

cout << "Vvedite chislo " << i+1 << ": ";

cin >> a[i];

}

puz();

getch();

return 0;

}

void puz()

{

int i, j, m;

for (i=1; i<n; i++)

{

for (j=n-1; j>=i; j--)

{

if (a[j-1]>a[j])

{

m=a[j-1];

a[j-1]=a[j];

a[j]=m;}}}

for (i=0; i<n; i++)

cout << a[i] << " "; cout << endl; }

Написать функцию для сортировки масива целых чисел методом вставок.

#include <iostream.h>

#include <conio.h>

int n, a[20];

void vst();

Int main(int argc, char* argv[])

{

int i;

cout << "Vvedite chislo elementov: ";

cin >> n;

for (i=0; i<n; i++)

{

cout << "Vvedite chislo " << i+1 << ": ";

cin >> a[i];

}

vst();

getch();

return 0;

}

void vst()

{

int i, j, m;

for (i=1; i<n; i++)

{

m=a[i];

for (j=i-1; j>=0&&m<a[j]; j--)

{

a[j+1]=a[j];

a[j]=m;}}

for (i=0; i<n; i++)

cout << a[i] << " ";

cout << endl; }

Задан одномерный масив. Написать функцию линейного поиска заданного элемента в массиве с использованием барьера.

#include <iostream.h>

#include <conio.h>

int n, a[20];

void poisk();

Int main(int argc, char* argv[])

{

int i;

cout << "Vvedite chislo elementov: ";

cin >> n;

for (i=0; i<n; i++)

{

cout << "Vvedite chislo " << i+1 << ": ";

cin >> a[i];

}

poisk();;

getch();

return 0;

}

void poisk()

{

int i, m;

cout << "Vvedite iskomij element: ";

cin >> m;

a[n]=m;

for (i=0; i<=n; i++)

{

if (a[i]==m)

if (i==n)

cout << "Elementa v masive net" << endl;

else

{cout << " Element: " << a[i] << endl; break;}}}

Задан отсортированный по возрастанию массив. Написать функцию двоичного поиска заданного элемента в массиве.

#include <iostream.h>

#include <conio.h>

int n, a[20];

void poisk();

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]