求助,关于如何用函数调用替换goto语句!!

来源:百度知道 编辑:UC知道 时间:2024/05/18 09:03:33
int main()
{
int option,flag=0;
studentclass classn;
A: cout<<"< 1 > 新建学生信息"<<endl<<"< 2 > 添加学生信息"<<endl<<"< 3 > 删除学生信息"<<endl<<"< 4 > 成绩综合排名"<<endl<<"< 5 > 学生信息查询"<<endl<<"< 6 > 退出信息系统"<<endl;
cout<<"请输入序号选择相应的操作!"<<endl;
cin>>option;
switch(option) /*主菜单选择程序段*/
{
case 1:{
B: char answer;
cout<<"新建学生信息:(输入学号为0则结束!)"<<endl;
classn.creatdata(classn);
flag=1;
cout<<"返回主页(Y/N)?"<<endl;
cin>>answer;
if(answer=='Y'||answer=='y')
goto A;
else if (answer=='N'||answer=='n')
{ cout<<endl;
goto B;

就是想实现个界面吧?
以下是我上个学期数据结构的实验作业(是C写的,自己改成C++吧,不难的),你可以借鉴:

实验要求:定义一个队列,实现进队出队,要求是个循环队列,数据结构及类型自定。

以下是代码:
文件 QUEUE.C 代码
#include<stdio.h>
#include<malloc.h>
#include<conio.h>
#include "d:\work\win.h" /*调用表界面函数QYwin();以下有代码,是大一写的一个东西*/
#define DATATYPE char
#define MAXSIZE 6

typedef struct
{
DATATYPE data[MAXSIZE];
int front,rear;
}FIFO;

/*判队列空*/
int empty(FIFO *q)
{
if((q->rear==q->front)&&((q->data)[q->front]=='\0'))
return 1;
else
return 0;
}
/*取队头元素*/
DATATYPE getfront(FIFO *q)
{
DATATYPE v;
if(empty(q))
{ printf("Queue is empty.\n");
v=NULL;}
else
v=(q->data)[(q->front+1)%MAXSIZE];
return v;
}
/*队尾插入元素*/
int enqueue(FIFO *q,DATATYPE x)
{
if((q->front==q->rear)&&((q->da