Главная

Популярная публикация

Научная публикация

Случайная публикация

Обратная связь

ТОР 5 статей:

Методические подходы к анализу финансового состояния предприятия

Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века

Ценовые и неценовые факторы

Характеристика шлифовальных кругов и ее маркировка

Служебные части речи. Предлог. Союз. Частицы

КАТЕГОРИИ:






Double dlina,shirina;




};

Struct trap

{

Double visota,osnavanie;

};

Struct FIGURA

{

char name[15];

Double ploshad;

Prm f1;

Trap f2;

};

void vvod(FIGURA *);

void pl(FIGURA *,int);

void vivod(FIGURA *,int);

Void main()

{

const int n=10;

FIGURA ob[n];

Int i;

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

{

printf("VVrdite dannie %d fuguri\n",i+1);

vvod(&ob[i]);

}

pl(&ob[0],n);

vivod(&ob[0],n);

}

void vivod(FIGURA *f,int k)

{

puts("");

for(int i=0;i<k;i++)

{

printf("%s - %.1lf\n",(f+i)->name,(f+i)->ploshad);

}

}

void pl(FIGURA *f,int k)

{

for(int i=0;i<k;i++)

{

if(!strcmp((f+i)->name,"PRYAMOUGOLNIK"))

(f+i)->ploshad=(f+i)->f1.dlina*(f+i)->f1.shirina;

Else

(f+i)->ploshad=(f+i)->f2.osnavanie*(f+i)->f2.visota;

}

}

void vvod(FIGURA *f)

{

char ch[3];

printf("Введите имя фигуры:pr–если ПРЯМОУГОЛЬНИК, и tr-если ТРАПЕЦИЯ:");

scanf("%s",ch);

if(!strcmp(ch,"pr"))

{

strcpy(f->name,"PRYAMOUGOLNIK");

printf("DLINA: ");

scanf("%lf",&(f->f1.dlina));

printf("SHIRINA: ");

scanf("%lf",&(f->f1.shirina));

}

Else

{

strcpy(f->name,"TROPECIYA");

printf("VISOTA: ");

scanf("%lf",&(f->f2.visota));

printf("OSNOVANIE: ");

scanf("%lf",&(f->f2.osnavanie));

}

}

7. Создать массив структур. Элементами структуры являются: фамилия автора книги и ее наименование. Написать функции 1) добавления данных; 2) удаления указанного автора; 3) вывод данных.

#include<stdio.h>

#include<string.h>

Struct book

{

char fam[30];

char naz[10];

};

void mas_str(book*,book,int*);

void delet(book*,char *,int *);

void show_str(book*);

Void main()

{

book katal[10],bk;

int i,kol=0,pr;

char fio[30];

printf("Enter:\n1 - DOBAVLENUE\n2 - Prosmotr\n3 - UDALENIE\n4 - exit\n");

While(1)

{

puts("pr-?");

scanf("%d",&pr);

Switch(pr)

{

case 1:

Do

{

Fflush(stdin);

printf("FAM: ");

Gets(bk.fam);

if(strcmp(bk.fam,""))

{

printf("KNIGA: ");

Gets(bk.naz);

mas_str(katal,bk,&kol);

}

}while(strcmp(bk.fam,""));

Break;

case 2:

If(kol)

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

puts(katal[i].fam);

Else

puts("PUST!!!!");

Break;

case 3:

puts("FAM UDALENIE:");

Fflush(stdin);

Gets(fio);

If(kol)

delet(katal,fio,&kol);

Else

puts("PUST VVV!!!");

Break;

case 4:

Return;

}

}

}

void mas_str(book* katal,book bk,int*kol)

{

int i=*kol;

while((*kol)<10 && i<(*kol) && strcmp(katal[i].fam,"") && (!strcmp(katal[i].fam,bk.fam)) && strcmp(katal[i].naz,bk.naz))

i++;

katal[i]=bk;

(*kol)++;

}

void delet(book* katal,char *fio,int *kol)

{

int i=-1,k=*kol;

if(*kol)

{

while(i++,i<k)

if(!strcmp(katal[i].fam,fio))break;

if(!strcmp(katal[i].fam,fio))

{

if(i==k)

{

*kol=0;return;

}

if(i<k)

{

while(++i,i<*kol)

katal[i-1]=katal[i];

(*kol)--;

}

Else

printf("NET!!!\n");

}

}

}

Ключевое слово typdef предоставляет программисту механизм для создании синонимов (или псевдокодов) для ранее определенного типа. Объявление нового имени с помощью typedef не создает нового типа, а создает лишь имя, являющееся синонимом для определенного ранее типа.






Не нашли, что искали? Воспользуйтесь поиском:

vikidalka.ru - 2015-2024 год. Все права принадлежат их авторам! Нарушение авторских прав | Нарушение персональных данных