Code Corona

نسخه‌ی كامل: راهنمایی Struct
شما هم اكنون متن قالب بندی نشده را می‌بینید.مشاهده‌ی نسخه‌ی اصلی
برنامه ای که 20 دانشجو را از ورودی دریافت کرده و در خانه های آرایه ای از نوع دانشجو (نام ، معدل ، شماره دانشجویی ) ذخیره نماید . پس از ورود شماره دانشجویی را جهت جستجو در آرایه دریافت نماید . در صورت یافت شدن اطلاعات را نمایش دهد . در صورتی که کاربر -1 را وارد نمود برنامه اطلاعات رو را بر اساس معدل مرتب کرده و در خروجی چاپ نماید

ممنون اگر دوستان کمک کنن این برنامه رو کامل کنم و جواب نهایی بالا بدست بیاد

کد:
struct student
{
int std no,a;
float avg;
char name[20]
}
int main ()
{
student me[20]
for (int i =0;i<20;i++);
{
cout<<please enter your student number:";
cin>>me[i].std no;
cout <<"please enter your gpa:";
cin>>me[i].avg;
cout<<"please enter your name:";
cin>>me[i].name;
for int i=0,i<20;i++)
{
cout <<"your ave:"<<me[i].name<<endl;
cout<<your avg is :"<<me[i].avg<<endl;
cout<<"your student number:"<<me[i].std no;
}
for (i=0,i<size;i++)
{
if (a[i]==key)
return i;
}
return(-1)
}
return 0;
}
اینم برنامه شما . فقط من برنامه رو کامپایل نکردم .

کد:
struct student
{
int std no,a;
float avg;
char name[20]
}
int main ()
{
student me[20]
for (int i =0;i <20;i++);
{
cout  << please enter your student number:";
cin>>me[i].std no;
cout  << "please enter your gpa:";
cin >> me[i].avg;
cout << "please enter your name:";
cin >> me[i].name;

}

do
{
cout << "Enter A Student Number To Display Information : ( -1 to Sort Averages or press 0 To exit from program :)";
cin >> key;
if(key==-1)
  sort(me);
else
    for (i=0,i< size;i++)

         if (me[i]==key)
                print(me[i]);
}while(key!=0);
return 0;
}
فقط دو تابع print, sort رو خودت باید بنویسی . اگه مشکلی داشتی بپرس.
ممنون از کمکات فقط این Sort رو من دقیق نمیدونم چی بنویسم اگر کمک کنی یه دور کامل برنامه رو بنویسی من چند تا سوال در پایان ازت می پرسم What2
کسی نیست کمک کنه ؟
خودت که گفتی که بر اساس معدل مرتب کنه . سعی کن خودت بنویسی اصلا سخت نیست .
حالا نمیشه شما زحمتش رو بکشی من باید یکی دیگرم بنویسم وقت نمی کنم روی این فکر کنم
حالا نمیشه شما زحمتش رو بکشی من باید یکی دیگرم بنویسم وقت نمی کنم روی این فکر کنم
سلام به همگی . من و بقیه بچه ها تازه امتحانهامون تموم شد و به همین خاطر اصلا فرصت پاسخ دادن به سوالهای شما رو نداشتیم از این بابت عذر میخوام . ولی خوب قرار هم نیست که سوالهای کسی رو حل کنیم فقط در حد کمک . ولی این بار به خاطر تاخیری که پیش اومد من برنامه رو کامل از اول نوشتم میزارم سوالی بود بپرسید.

کد:
# include < iostream>
# include < conio.h>
using namespace std;

void Sort();
void Show();
void Show_All();
const int size=3;

struct student
{
    char Name[20];
    char Family[30];
    float Average;
    int Stno;

}Array[size];


int main()
{
    int choice;
    cout << "Enter Information of the students:\n";
    for(unsigned i=0;i<size;++i)
    {
        system("cls");
        cout << "\nEnter The Name:";
        cin >> Array[i].Name;
        cout << "\nEnter The Family:";
        cin  >> Array[i].Family;
        cout << "\nEnter The Average:";
        cin >> Array[i].Average;
        cout << "\nEnter The Student Number:";
        cin >> Array[i].Stno;
    
    }

    do
    {
        system("cls");
        cout<<"\n1-Show Student Information:";
        cout << "\n\n2-Sorting The Array According To The Averages:";
        cout << "\n\n3-Show All The Student Information.";
        cout<<"\n\n4-Exit.";
        cout << "\n\n Enter Your Choice Beetween (1-4) :";
        cin>>choice;

        if(choice==1)
            Show();
        else if(choice==2)
            Sort();
        else if(choice==3)
            Show_All();
        
    }while(choice!=4);

    return 0;

}
void Show()
{
    int st;
    system("cls");
    
    cout << "Enter Student Number To show His \ Her Imformation :";
    cin >> st;

    for(int i=0;i<size;++i)
    {
        if(Array[i].Stno==st)
        {
            cout << "\n"<<Array[i].Name<<endl<<Array[i].Family << endl;
            cout<<Array[i].Stno<<endl<<Array[i].Average<<endl;
            getch();
            return;
        
        }
        
    }

    cout<<"\nThis Student Does Not Exist.\n";
    getch();

}

void Show_All()
{
        
    for(unsigned i=0;i<size;++i)
    {
            cout<<"\n"<<Array[i].Name<<endl<<Array[i].Family<<endl;
            cout<<Array[i].Stno<<endl<<Array[i].Average<<endl;
        
    }
    getch();
}

void Sort()
{
    student temp;
    for(unsigned i=0;i<size-1;i++)
        for(unsigned j=0;j<size-1-i;++j)
            if(Array[j].Average > Array[j+1].Average)
            {
                temp=Array[j];
                Array[j]=Array[j+1];
                Array[j+1]=temp;
            }

}
آدرس اصلی