清璇 2020-05-25 14:49 采纳率: 100%
浏览 330
已采纳

C++编程练习题,不知道错在哪里,运行时出现win32未启动,实在是不知道怎么改了,求赐教?

定义students结构,包括学号和成绩,并通过键盘输入学生个数n以及n个学生的学号和成绩。从键盘输入学号,查找该学生是否在这n个学生当中。若找到该学生,则显示出相应的成绩。要求写一个函数search来完成查找功能。
提示:
(1)学号(id)、成绩(score);
(2)void search(const students *s, int n, int ID);
(3)对于n进行判断,如果小于1,则不用查找;
(4)查找要考虑找到和没找到两种情况。

#include<iostream>
#include<string>
using namespace std;
struct students
{ int id;
  double score;
};
void search(const students *s, int n, int id);
int main()
{ int i,n,id,score;
  students p[n];
  cout<<"input students' number:";
  cin>>n;
  for(i=0;i<n;i++)
  {cout<<"input id:";
   cin>>p[i].id;
  }
  for(i=0;i<n;i++)
  {cout<<"input score:";
   cin>>p[i].score;
  }
 if(n>1) search(p,n,id); 
}
void search(const students *s,int n,int id)
{ int b,i;
  students p[n];
  s=p;
  cout<<"enter the id to search:";
  cin>>b;
{
  for(i=0;i<n;i++)
  {if(s[i].id==b) 
  { cout<<"the student's score is:"<<s[i].score;} 
  }
   if(i==(n-1)) 
   cout<<"not found";
  }
}

  • 写回答

1条回答 默认 最新

  • 我是个好孩子66 2020-05-25 14:57
    关注

    帮你改了下,你再看看

    #include<iostream> 
    #include<cstring>
    using namespace std;
    struct students
    { int id;
      double score;
    };
    void search(const students *s, int n, int ID );
    int main()
    { int i,id,score,n;
      cout<<"input students' number:";
      cin>>n;
      students p[n];
      for(i=0;i<n;i++)
      {cout<<"input id:";
       cin>>p[i].id;
      }
      for(i=0;i<n;i++)
      {cout<<"input score:";
       cin>>p[i].score;
      }
      cout<<"enter the id to search:";
      cin>>id;
     if(n>1) search(p,n,id); 
    }
    void search(const students *s,int n,int ID)
    {
        int i;
    {
      for( i=0;i<n;i++)
      {
        if(s[i].id==ID) 
        {
            cout<<"the student's score is:"<<s[i].score<<endl;
            break;
        }
      }
      if(i==n-1)
      {
          cout<<"not found"<<endl;
      }
    }
    } 
    

    你的n应该在p[n]前输入,记住,还有你的search函数对于指针的用法有些问题,你按照我的代码看看

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
  • ¥15 gdf格式的脑电数据如何处理matlab
  • ¥20 重新写的代码替换了之后运行hbuliderx就这样了
  • ¥100 监控抖音用户作品更新可以微信公众号提醒
  • ¥15 UE5 如何可以不渲染HDRIBackdrop背景
  • ¥70 2048小游戏毕设项目
  • ¥20 mysql架构,按照姓名分表
  • ¥15 MATLAB实现区间[a,b]上的Gauss-Legendre积分
  • ¥15 delphi webbrowser组件网页下拉菜单自动选择问题
  • ¥15 linux驱动,linux应用,多线程