#include<iostream.h>
#include<stdlib.h>
#include<string.h>
struct student
{
 long xh;
 char name[12];
 int asp,english,sql,vb;
 int sum,avg;
}sname[20];
//*********************************************************************************************
void shuru()
{
 int i;
 for(i=0;i<20;i++)
  {
   int a;
   cout<<"1.按行录入."<<endl;
   cout<<"2.按列录入."<<endl;
   cout<<"按0返回主菜单:"<<endl;
   cout<<"请输入:";
    cin>>a;
   if(a==1)
   {
    system("cls");
   for(i=1;i<21;i++)
    {
    cout<<"请输入学生的学号:";
     cout<<sname[i].xh;
    cout<<"请输入学生名字:";
     cin>>sname[i].name;
     cout<<endl;
    cout<<"请输入学生的asp成绩:";
     cin>>sname[i].asp;
     cout<<endl;
    cout<<"请输入学生english的成绩:";
     cin>>sname[i].english;
     cout<<endl;
    cout<<"请输入学生sql的成绩:";
     cin>>sname[i].sql;
     cout<<endl;
    cout<<"请输入学生vb的成绩:";
     cin>>sname[i].vb;
     cout<<endl;
    cout<<"已经录入完成:"<<endl;
    }
   }
   if(a==2)
   {
    system("cls");
    int b,i;
    cout<<"请选择科目:"<<endl;
    cout<<"1.asp"<<endl;
    cout<<"2.english"<<endl;
    cout<<"3.sql**"<<endl;
    cout<<"4.vb"<<endl;
    cout<<"请选择:";
    cin>>b;
    if(b==1)
     {
     for(i=1;i<21;i++)
      {
      cout<<"请输入"<<i<<"个学生asp成绩:";
       cin>>sname[i].asp;
      }
     }
    else if(b==2)
     {
     for(i=1;i<21;i++)
      {
      cout<<"请输入"<<i<<"个学生english成绩:";
       cin>>sname[i].english;
      }
     }
    else if(b==3)
    for(i=1;i<21;i++)
     {
      {
      cout<<"请输入"<<i<<"个学生sql成绩:";
       cin>>sname[i].sql;
      }
     }
    else if(b==4)
     {
     for(i=1;i<21;i++)
      {
      cout<<"请输入"<<i<<"个学生vb成绩:";
       cin>>sname[i].vb;
      }
     }
    if(b==0)
     shuru();
  }
}
//************************************************************************************************************************
void search()
{
 system("cls");
 int i;
 cout<<endl;
 for(i=0;i<80;i++)
 cout<<"-";
 cout<<endl;
 cout<<"1.查询不及格成绩的学生:"<<endl;
 cout<<"2.查询学生的成绩:"<<endl;
 cout<<"0.返回"<<endl;
 cout<<"请选择:";
 int a;
 cin>>a;
 if(a==1)
 {
  system("cls");
  cout<<"查询不及格学生的课们:"<<endl;
  cout<<"1.asp"<<endl;
  cout<<"2.english"<<endl;
  cout<<"3.sql"<<endl;
  cout<<"4.vb"<<endl;
  int b;
  if(b==1)
  {
   int c;
   for(c=1;c<21;c++)
   {
    if(sname[c].asp<60)
    cout<<"asp的不及格成绩的学生为:";
    cout<<sname[c].name<<endl;
   }
  if(b==2)
  for(c=1;c<21;c++)
   {
   if(sname[c].english<60)
    {
    cout<<"english的不及格的成绩的学生为:";
    cout<<sname[c].name<<endl;
    cout<<"english的不及格的成绩的学生的学号:";
    cout<<sname[c].xh<<endl;
    }
   }
  if(b==3)
   for(c=1;c<21;c++)
   {
    if(sname[c].sql<60)
    {
     cout<<"sql的成绩不及格的学生为:";
     cout<<sname[c].name<<endl;
    }
    else
     return;
   }
  if(b==4)
   for(c=1;c<21;c++)
   {
    if(sname[c].vb<60)
    {
     cout<<"vb的成绩不及格的学生为:";
     cout<<sname[c].name<<endl;
    }
    else
     return;
   }
   
  }
  
 if(a==2)
 {
  char cname[12];
  int i;
  cout<<"输入你要查询学生的名字:"
  cin>>cname[12];           //注意这个地方可能出错
  for(i=1;i<21;i++)
  { 
   if(strcmp(sname[i].name,cname[12])==0)
   {
    cout<<sname[i].name<<"学生的成绩为:"<<endl;
    cout<<"asp的成绩:"<<sname[i].asp<<endl;
    cout<<"englishi的成绩"<<sname[i].english<<endl;
    cout<<"vb的成绩"<<sname[i].vb<<endl;
   }
   else
    return ;
  }
  if(a==0)
   search();
 }
}
//*******************************************************************************************************************
void changekm()
{
 char name[];
 int i,a,b,c;
 cout<<"请输入要修改成绩的学生名字:";
 cin>>name[];
 for(i=1;i<21;i++)
 {
  if(strcmp(sname[i].name,name[])==0))
   a=i;
  else
   cout<<"没有这个学生"<<endl;
   return;
 }
  cout<<"1"<<sname[a]<<"的asp成绩分数为:"<<sname[i].asp<<endl;
  cout<<"2"<<sname[a]<<"的english成绩分数为:"<<sname[i].english<<endl;
  cout<<"3"<<sname[a]<<"的sql成绩分数为:"<<sname[i].english<<endl;
  cout<<"4"<<sname[a]<<"的vb成绩分数为:"<<sname[i].vb<<endl;
 
  cout<<"请你按数字选择要修改的科目:"
  cin>>b;
  if(b==1)
  {
   cout<<"输入你asp修改的分数:"
   cin>>c;
   strcopy(sname[a].asp,c);
   cout<<"修改完成!"<<endl;
  }
  if else(b==2)
  {
   cout<<"输入你english修改的分数:"
   cin>>c;
   strcopy(sname[a].english,c);
   cout<<"修改完成!"<<endl;
  }
  if else(b==3)
  {
   cout<<"输入你sql修改的分数:"
   cin>>c;
   strcopy(sname[a].sql,c);
   cout<<"修改完成!"<<endl;
  }
  if else(b==4)
  {
   cout<<"输入你vb修改的分数:"
   cin>>c;
   strcopy(sname[a].vb,c);
   cout<<"修改完成!"<<endl;
  }
  else
   changekm();
}
void change()
{
 system("cls")
  cout<<"1. 个别成绩修改:"<<endl;
  cout<<"2.二次录入:"<<endl;
  cout<<"0.返回"<<endl;
  cout<<"请选择:";
  int a;
  cin>>a;
  if(a==1)
   changekm();
}
 
//************************************************************************************************************************
void main()
{
 int password;
 cout<<"请输入管理员密码:";
 cin>>password;
 if(password==123)
 {
  system("cls");
  int i;
  cout<<"                                       学生成绩管理"<<endl;
  for(i=1;i<80;i++)
   cout<<"*";
  cout<<endl;
  cout<<"         请选择以下功能"<<endl;
  cout<<"         1.成绩录入:"<<endl;
  cout<<"         2.成绩查询:"<<endl;
  cout<<"         3.成绩修改:"<<endl;
  cout<<"         4.成绩备份:"<<endl;
  cout<<"         5.退出:"<<endl;
  for(i=1;i<80;i++)
   cout<<"*";
  cout<<endl;
  char n;
   cout<<"        请输入:";
  cin>>n;
  switch(n)
  {
  case '1':
   {
   system("cls");
   cout<<"进入录入界面"<<endl;
   shuru();
   break;
   }
   case '2':
   {
   cout<<"进入查询界面";
   search();
   break;
   }
   case '3':
   {
   cout<<"进入修改界面";
   break;
   }
   case '4':
   {
   cout<<"成绩备份";
   break;
   }
   case '5':
   break;
   default :
   cout<<"输入错误,请重新输入"<<endl;
  }
 }
 else
 return ;
}
}
也帮小弟看看这个是那里错了 各位大虾