-
блок схема
// помогите пожалуйста составить блок схему
[code=cpp]
#include<string.h>
#include<conio.h>
#include<stdio.h>
#include <ctype.h>
struct STUDENT
{
char kafedra[20],famil[20],spec[20];
int ocenka;
};
int main()
{
int n,i,j,s, count; char c;
struct STUDENT arr[10];
struct STUDENT temp;
i=0;
do
{
printf("Vvedite famil %u stud-", i+1);
scanf("%s",&arr[i].famil);
printf("Vvedite kafedru %u stud-", i+1);
scanf("%s",&arr[i].kafedra);
printf("Vvedite ocenku %u stud-", i+1);
scanf("%d",&arr[i].ocenka);
printf("%s,%s,%d\n", arr[i].famil, arr[i].kafedra, arr[i].ocenka);
i=i+1;
printf("%d\n",i);
puts("Vvesti dannue pro studenta(Y/N)");
scanf("%s",&c);
}while ( (c != 'n' ) && (c != 'N') );
n=i;
// sortirovka
for(i=0; i<n-1; i++)
for(j=i+1; j<n; j++)
{
if(!strcmp(arr[i].kafedra, arr[j].kafedra) && i==j-1)
{
i++;
j++;
}
if(!strcmp(arr[i].kafedra, arr[j].kafedra) && i!=j-1 && j<n)
{
temp=arr[i+1];
arr[i+1]=arr[j];
arr[j]=temp;
i++;
}
}
s=0;
count=0;
printf("Kafedra: %s\n", arr[0].kafedra);
for(i=0; i<n; i++)
{
printf("%s\n", arr[i].famil);
count++;
s+=arr[i].ocenka;
if(strcmp(arr[i].kafedra, arr[i+1].kafedra) && i!=n-1)
{
printf("Srednii ball kafedry %s: %f\n", arr[i].kafedra, (float)s/count);
printf("Kafedra: %s\n", arr[i+1].kafedra);
s=0;
count=0;
}
}
printf("Srednii ball kafedry %s: %f", arr[i-1].kafedra, (float)s/count);
getch();
return 0;
}
[/code]
-
Re: блок схема
Зачем 2 темы ?
У тебя ошибка в условии while цикла do...while. Там должно быть "или"(||), а не "и"(&&).