ТОР 5 статей: Методические подходы к анализу финансового состояния предприятия Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века Характеристика шлифовальных кругов и ее маркировка Служебные части речи. Предлог. Союз. Частицы КАТЕГОРИИ:
|
Void func_vivoda(Student );Void main() { Student ob[10]; for(int i=0;i<10;i++) func_vvoda(&ob[i]); for(i=0;i<10;i++) func_vivoda(ob[i]); } Void func_vivoda(Student ob1) { puts(""); printf("%s\t%s\t%d\t%d\n",ob1.fam,ob1.name,ob1.year,ob1.average); } void func_vvoda(Student *p) { int sum=0; puts("Familiya:"); Fflush(stdin); gets(p->fam); puts("Name:"); Fflush(stdin); gets(p->name); puts("5 marks:"); Fflush(stdin); for(int i=0;i<5;i++) { scanf("%d",&p->marks[i]); sum+=p->marks[i]; } p->average=sum/5; puts("Year:"); Fflush(stdin); scanf("%d",&p->year); } 2. Создать массив данных о студентах. О каждом студенте записать имя, фамилию, группу, оценки по 5-ти экзаменам и определить средний балл оценок. И распечатать имя, фамилию и группу всех тех студентов, кто получил максимальный средний балл. Аналогично, что и в предыдущей задаче #include<stdio.h> Struct Student { char fam[20],name[20]; int group,marks[5],average; }; void func_vvoda(Student *); Void func_vivoda(Student); int func_max(Student ob1[],int n); Void main() { Student ob[4]; Int max; for(int i=0;i<4;i++) func_vvoda(&ob[i]); max=func_max(ob,4); for(i=0;i<4;i++) if(ob[i].average==max) func_vivoda(ob[i]); } int func_max(Student ob1[],int n) { int max=ob1[0].average; for(int i=1;i<n;i++) if(max<ob1[i].average) max=ob1[i].average; Return max; } 3. Создать массив данных о студентах. О каждом студенте записать имя, фамилию, год рождения, оценки по 5-ти экзаменам и определить сумму оценок. И отсортировать список по сумме баллов. 4. Ввести массив структур, используя динамическое распределение памяти. Рассортировать массив в алфавитном порядке. #include<stdio.h> #include<string.h> #include<malloc.h> Struct Student { char name[80]; Int age; }; Void main() { struct Student *p,ob; Int i,j,n; Do { printf("kol. studentov: "); scanf("%d",&n); }while(n<=0); p=(Student *)malloc(n*sizeof(Student)); if(!p) { printf("Net mesta\a\a\a\n"); Return; } for(i=0;i<n;i++) { printf("Name: "); scanf("%s",p[i].name); printf("Age: "); scanf("%d",&p[i].age); } for(i=0;i<n-1;i++) { for(j=i+1;j<n;j++) if(strcmp(p[i].name,p[j].name)>0) { ob=p[i]; p[i]=p[j]; p[j]=ob; } } for(i=0;i<n;i++) { printf("\n%s\t\t%d\n",p[i].name,p[i].age); } } 5. Для массива структур, состоящих из полей: указатели на две структуры 1-я студент и номер группы, 2-я 4 оценки, используя указатели организовать поиск и вывод на экран информации о студентах с max суммой баллов. #include<stdio.h> #include<malloc.h> #include<stdlib.h> Struct student { char name[20]; char fam[30]; Int group; }; Struct mark { int marks[4]; }; Struct Man { student *p; mark *p1; }; void vvod(Man *); int max_ball(Man *,int); void vivod(Man *,int,int); Void main() { const int n=10; Int max; Man p2[n]; for(int i=0;i<n;i++) vvod(&p2[i]); max=max_ball(&p2[0],n); printf("Studenti s max ballom:\n"); vivod(&p2[0],n,max); } void vivod(Man *f,int k,int max) { Int sum; for(int i=0;i<k;i++) { sum=(f+i)->p1->marks[0]+(f+i)->p1->marks[1]+(f+i)->p1->marks[2]+(f+i)->p1->marks[3]; if(sum= =max) printf("%s\t%s - %d\n",(f+i)->p->fam,(f+i)->p->name,(f+i)->p->group); } } int max_ball(Man *f,int k) { Int max; int *n1; n1=(int *)malloc(k*sizeof(int)); if(!n1) { printf("\a\a\a\a\n"); Exit(1); } for(int i=0;i<k;i++) { *(n1+i)=0; for(int j=0;j<4;j++) *(n1+i)+=(f+i)->p1->marks[j]; } max=n1[0]; for(i=1;i<k;i++) { if(max<n1[i]) max=n1[i]; } Free(n1); Return max; } void vvod(Man *f) { f->p=(student *)malloc(sizeof(student)); f->p1=(mark *)malloc(sizeof(mark)); printf("Name: "); scanf("%s",f->p->name); printf("Familiya: "); scanf("%s",f->p->fam); printf("Gruppa: "); scanf("%d",&f->p->group); printf("4 ocenki: "); for(int j=0;j<4;j++) scanf("%d",&f->p1->marks[j]); } 6. Используя объединение полями которого являются: имя фигуры, структура (содержащая параметры геом. фигур – прямоугольник, трапеция) и переменная площадь. Написать программу, которая вычисляет площади 10 фигур и выводит на экран наименование – площадь. Использовать функции для ввода данных, посчитать площадь и для распечатки данных. #include<stdio.h> #include<string.h> Struct prm { Не нашли, что искали? Воспользуйтесь поиском:
|