0

私はそのサイクルで1つのことだけをやりたいです...-IFまたはELSE..(あなたが知っているようにその真と偽のofcの場合..)私が彼らの情報を持つ2つのタイプされた学生と私の最初の学生がいる場合グループ1は優秀な成績ではなく、2番目の生徒は優秀な成績です私のプログラムは次のように出力します:1)最初のループはfor:it; sであるため、elseになります2)2番目のループはfor:trueであるため、もしも

そして私は持っています:情報なし優秀な成績の学生...

成績の良い生徒だけを見たいです(BREAKを使用した場合、FORサイクルを停止します)コードは次のとおりです。

int gr;
cout<<"Enter group that you want to check: ";cin>>gr;
cout<<"Students with excellent grade in group "<<gr<<":\n";
    for(i=0;i<n;i++)
        {
            if(m[i][2]==gr && m[i][3]>=5.500)
            {
                for(j=0;j<4;j++)
                    cout<<setprecision(8)<<m[i][j]<<"\t";
            }
            else
                    cout<<"No students with excellent grade in this group"<<endl;

        }

ここでも同じ問題があります。「bool」タイプを使用できますか?そのコードでどのように使用できますか(コードは構造体に基づいています):

int x;
bool no_info=false;
p: cout<<"| What personal id you want to search for: ";cin>>x;

for(int i=0;i<n;i++)
{
  if(pov[i].id==x)
  {
    no_info=true;
    cout<<pov[i].id<<endl;
    cout<<pov[i].name<<endl;
    cout<<pov[i].lastname<<endl;
    cout<<pov[i].department<<endl;
    cout<<pov[i].salary<<endl;
  }
}
  if(no_info){
   cout<<"No information"<<endl;}
 goto p;

編集済み!!!

4

1 に答える 1

2

あなたが何を達成しようとしているのか理解するのは難しいです。しかし、私はあなたが望むものは次のとおりだと思います:

int gr;
bool no_excellents = true;
cout<<"Enter group that you want to check: ";cin>>gr;
cout<<"Students with excellent grade in group "<<gr<<":\n";
for(i=0;i<n;i++)
{
    if(m[i][2]==gr && m[i][3]>=5.500)
    {
       no_excellents = false;
       for(j=0;j<4;j++)
           cout<<setprecision(8)<<m[i][j]<<"\t";
    }
}

if(no_excellents)
{
    cout<<"No students with excellent grade in this group"<<endl;
}

これはループを停止せずfor、成績の良い生徒のみを印刷します。優秀な成績を収めている人がいない場合は、プログラムからその旨が通知されます。

于 2012-12-03T19:11:25.073 に答える