JAVA基础程序问题,请程序爱好者抽空帮助解答,谢谢

JAVA基础程序问题,请程序爱好者抽空帮助解答,谢谢,第1张

import java.util.Scanner

public class nnn {

/**

* @param args

*/岩吵仔

public static void main(String[] args) {

// TODO Auto-generated method stub

Scanner scanner=new Scanner(System.in)

System.out.println("How many Fibonacci numbers do you want to display?")

int t=scanner.nextInt()

gen(t)

System.out.println("\nend of processing...")

}

public static void gen(int n){

if(n==1){

System.out.print("碰旁1")

}

if(n==2){

System.out.print("1 1"粗汪)

}

int[] m=new int[n]

m[0]=1

m[1]=1

for(int i=2i<ni++){

m[i]=m[i-1]+m[i-2]

}

for(int k:m){

System.out.print(k+" ")

}

}

}

#include <iostream>

#include <fstream>

#include <vector>

#include <string>

#include <algorithm>

using namespace std

#define N 4

#define M 3

#define W 3

struct Student

{

Student(){}

Student(vector<string>* departments):depars(departments){}

void Input()

void Print()

friend ofstream&operator<<(ofstream&ofs, Student&stu)

friend ifstream&operator>>(ifstream&ifs, Student&stu)

string name

string department

int points

private:

vector<string>* depars

}

ofstream&operator<<(ofstream&ofs, Student&stu)

{

ofs <<stu.name <<"\t"<<stu.department<<"\t" <<stu.points

return ofs

}

ifstream&operator>>(ifstream&ifs, Student&stu)

{

ifs >>渗老辩 stu.name >>stu.department >>stu.points

return ifs

}

void Student::Input()

{

cout<<"输入名字:"<<endl

cin >>name

bool invalid(true)

do

{

string d

cout<<"输入院系名称:"<<endl

cin >>d

vector<string>::iterator found=find(depars->begin(),depars->end(),d)

if(found != depars->end())

{

invalid = false

department = d

} else {

cout<<"无效院系名称,请重新输入。"<<endl

}

} while(invalid)

}

void Student::Print()

{

cout<<name <<"\t"<<department<<endl

}

// Forward declaration

class GameInfo

class SportEvent

{

public:

static int GetPoint(int ranking)

void InputWinners(GameInfo&g)

void Print()

friend ofstream&operator<<(ofstream&ofs, SportEvent&se)

friend ifstream&operator>>(ifstream&ifs, SportEvent&se)

public:

vector<Student>winners

string name

}

ofstream&operator<<(ofstream&ofs, SportEvent&se)

{

ofs <<se.name <<endl

ofs <<se.winners.size() <<endl

for(unsigned int i(0)i<se.winners.size()i++)

{

ofs <<se.winners.at(i) <<"\t"含塌

}

return ofs

}

ifstream&operator>>(ifstream&ifs, SportEvent&se)

{

ifs >>se.name

unsigned int count(0)

ifs >>count

se.winners.clear()

for(unsigned int i(0)i<counti++)

{

Student student

ifs >丛缺>student

se.winners.push_back(student)

}

return ifs

}

int SportEvent::GetPoint(int ranking)

{

switch(ranking)

{

case 1:

return 7

break

case 2:

return 5

break

case 3:

return 3

break

case 4:

return 2

break

case 5:

return 1

break

}

return 0

}

void SportEvent::Print()

{

// #1 student_name department_name

for(int i(0)i<5i++)

{

cout <<"#"<<(i+1)<<"\t"

winners.at(i).Print()

}

}

class GameInfo

{

public:

void Init()

void InputResult()

void QueryDep(string depart)

void QueryStu(string student)

void QueryEve(string eventname)

void Save(ofstream&)

void Load(ifstream&)

public:

vector<string>departments

vector<SportEvent>mevents

vector<SportEvent>wevents

}

void SportEvent::InputWinners(GameInfo&g)

{

for(int i(0)i<5i++)

{

Student s(&g.departments)

cout<<"输入第"<<(i+1)<<"个获奖者"<<endl

s.Input()

winners.push_back(s)

}

}

void GameInfo::Save(ofstream&fout)

{

//保存院系名称

fout <<departments.size() <<endl

for(unsigned int i(0)i<departments.size()i++)

{

fout <<departments.at(i) <<"\t"

}

fout <<endl

//保存男子项目

fout <<mevents.size() <<endl

for(unsigned int i(0)i<mevents.size()i++)

{

fout <<mevents.at(i) <<"\t"

}

fout <<endl

//保存女子项目

fout <<wevents.size() <<endl

for(unsigned int i(0)i<wevents.size()i++)

{

fout <<wevents.at(i) <<"\t"

}

fout <<endl

}

void GameInfo::Load(ifstream&fin)

{

}

void GameInfo::Init()

{

for(int i(0)i<Ni++)

{

string dname

cout<<"输入第"<<(i+1)<<"个参赛院系名称:"

cin >>dname

departments.push_back(dname)

}

cout <<endl

for(int i(0)i<Mi++)

{

SportEvent mevent

cout<<"输入第"<<(i+1)<<"个男子项目名称:"

cin >>mevent.name

mevents.push_back(mevent)

}

cout <<endl

for(int i(0)i<Wi++)

{

SportEvent wevent

cout<<"输入第"<<(i+1)<<"个女子项目名称:"

cin >>wevent.name

wevents.push_back(wevent)

}

cout <<endl

}

void GameInfo::InputResult()

{

for(int i(0)i<Mi++)

{

cout<<"输入第"<<(i+1)<<"个男子项目\"" <<mevents.at(i).name<<"\""<<endl

mevents.at(i).InputWinners(*this)

}

for(int i(0)i<Wi++)

{

cout<<"输入第"<<(i+1)<<"个女子项目\"" <<wevents.at(i).name<<"\""<<endl

wevents.at(i).InputWinners(*this)

}

}

void GameInfo::QueryDep(string depart)

{

cout <<depart <<endl

int points(0)

for(int i(0)i<Mi++)

{

vector<Student>w = mevents.at(i).winners

for(unsigned int n(0)n<w.size()n++)

{

if(w.at(n).department==depart)

{

cout <<(w.at(n).name) <<"\t"

cout <<(mevents.at(i).name)

cout <<"\t#" <<(n+1)// ranking

int p(SportEvent::GetPoint(n+1))

cout <<"\t" <<p <<"分"<<endl// point

points+=p

}

}

}

for(unsigned int i(0)i<Wi++)

{

vector<Student>w = wevents.at(i).winners

for(unsigned int n(0)n<w.size()n++)

{

if(w.at(n).department==depart)

{

cout <<w.at(n).name <<"\t"

cout <<wevents.at(i).name

cout <<"\t#" <<(n+1)// ranking

int p(SportEvent::GetPoint(n+1))

cout <<"\t" <<p <<"分"<<endl// point

points+=p

}

}

}

if(points)

cout <<"团体总分(男女混合):" <<points <<"分"<<endl

}

void GameInfo::QueryStu(string student)

{

cout <<student <<endl

int points(0)

string d

for(int i(0)i<Mi++)

{

vector<Student>w = mevents.at(i).winners

for(unsigned int n(0)n<w.size()n++)

{

if(w.at(n).name==student)

{

cout <<mevents.at(i).name

cout <<"\t#" <<(n+1)// ranking

int p(SportEvent::GetPoint(n+1))

cout <<"\t" <<p <<"分"<<endl// point

points+=p

d = w.at(n).department

}

}

}

if(points)

cout <<"隶属于:"<<d <<endl<<"个人总分:" <<points <<"分"<<endl

cout <<endl

points =0

for(int i(0)i<Wi++)

{

vector<Student>w = wevents.at(i).winners

for(unsigned int n(0)n<w.size()n++)

{

if(w.at(n).name==student)

{

cout <<wevents.at(i).name

cout <<"\t#" <<(n+1)// ranking

int p(SportEvent::GetPoint(n+1))

cout <<"\t" <<p <<"分"<<endl// point

points+=p

d =w.at(n).department

}

}

}

if(points)

cout <<"隶属于:"<<d <<endl<<"个人总分:" <<points <<"分"<<endl

}

void GameInfo::QueryEve(string eventname)

{

for(int i(0)i<Mi++)

{

if(mevents.at(i).name == eventname)

{

mevents.at(i).Print()

}

}

for(int i(0)i<Wi++)

{

if(wevents.at(i).name == eventname)

{

wevents.at(i).Print()

}

}

}

int main()

{

const char* filename= "data.txt"

GameInfo gi

//读取

ifstream ifs(filename)

gi.Load(ifs)

ifs.close()

//录入

gi.Init()

gi.InputResult()

int opt(0)

string name

while(opt!=4)

{

cout <<"1.按院系名称查询"<<endl

cout <<"2.按比赛项目查询"<<endl

cout <<"3.按运动员姓名查询"<<endl

cout <<"4.退出"<<endl

cin >>opt

switch(opt)

{

case 1:

cout <<"请输入院系名称:" <<endl

cin >>name

gi.QueryDep(name)

break

case 2:

cout <<"请输入比赛项目:" <<endl

cin >>name

gi.QueryEve(name)

break

case 3:

cout <<"请输入运动员姓名:" <<endl

cin >>name

gi.QueryStu(name)

break

}

}

//保存

ofstream ofs(filename, ios::out | ios::app)

gi.Save(ofs)

ofs.close()

return 0

}

作为一名低代码平台领域的厂商,经常去的一些国内社区网站及论坛,关于程序员的交流社区或者论坛,这里收陪饥闷集一些比较好的开发者社区供大家参考,芦弯具体如下:

1、CSDN -专业开发者社区 IT技术交流平台

2、IT圈,圈圈精彩 - 原软媒论坛、IT之家,国内最人气的科技社交圈层,继软媒论坛、IT之家社区演变而来。

3、51CTO技术论坛-中国领先的IT技术社区 国内主流IT技术社区,论坛拥有大批IT技术人/IT专家

4、快速开发平台社肢磨区 -天翎论坛低代码平台技术社区,主要是以低代码开发平台为主的技术性论坛社区


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12367672.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存