Struct tvSet

Примеры решения задач

Задача 4.1. Дан массив структур вида:

 
 

Найти названия городов, в которых выпускаются самые дешевые телевизоры.

#include <iostream>

#include <stdio.h>

#include <string.h>

#include <limits.h>

//пропуск символов до конца строки

#define CLR while (getchar()!='\n')

//максимальное число структур

#define Kmax 10

//максимальная длина строки

#define Lmax 81

//пропуск символов до конца строки в файле

#define FCLR while (getc(fin)!='\n')

Struct proizv

{char gorod[Lmax], zavod[Lmax], fam[Lmax];

};

struct tvSet

{

char name[Lmax], color;//цвет обозначается одной буквой, c - цветной

proizv pr;

int price, diag;

};

void input (tvSet *tv, int *k) //ввод массива телевизоров

{ int i;

do

{

printf("enter number of TV ");

scanf("%d", k); //k – указатель на количество структур

}

while (*k<=0 || *k>Kmax);

CLR; /* необходим пропуск символов до конца строки, т.к. дальше функция gets - читается строка */

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

{

printf("TV # %d\n", i+1);

printf("Name: "); gets(tv[i].name);

printf("Price: "); scanf("%d", &tv[i].price);

printf("Diagonal size: "); scanf("%d", &tv[i].diag);

CLR; //цветной или ч\б обозначается одной буквой (ц или ч)

printf("Image color(c - means color): "); tv[i].color=getchar();

CLR; //пропуск символа ‘\n’

printf("City: "); gets(tv[i].pr.gorod);

printf("Factory: "); gets(tv[i].pr.zavod);

printf("Surname: "); gets(tv[i].pr.fam);

printf("\n");

}

printf("Input is over\n");

getchar();

}

//вывод массива телевизоров

void output (tvSet *tv, int k)

{

int i;

printf("list of TV sets: \n");

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

{

printf("TV # %d\n", i+1);

printf("Name: %s\n", tv[i].name);

printf("Price: %d\n", tv[i].price);

printf("Diagonal size: %d\n", tv[i].diag);

printf("Image color: %c\n", tv[i].color);

printf("City: %s\n", tv[i].pr.gorod);

printf("Factory: %s\n", tv[i].pr.zavod);

printf("Surname: %s\n", tv[i].pr.fam);

printf("Press any key to continue...\n");


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: