诗烟雨儿吧 关注:4贴子:76
  • 5回复贴,共1
链接:https://pan.baidu.com/s/1pLDomaJ 密码:6b2a


IP属地:河南来自Android客户端1楼2017-12-20 15:49回复
    假设一个算术表达式中可包含三种括号:圆括号、中括号、花括号,且这三种括号可按任意次序嵌套使用,设计一个算法判断该表达式中的括号是否配对


    IP属地:河南来自Android客户端2楼2017-12-27 08:27
    回复
      实验步骤:(算法描述、源程序、操作步骤和方法)
      元素类型、指针类型
      每个模块的分析
      打印杨辉三角
      #include<iostream>
      #include"iomanip"
      using namespace std;
      int main()
      {
      int i,j,a[10][10];
      for(i=0;i<10;i++) {a[i][0]=1;a[i][i]=1;}
      for(i=2;i<10;i++)
      for(j=1;j<=i-1;j++)
      a[i][j]=a[i-1][j-1]+a[i-1][j];
      cout<<"杨辉三角:"<<endl;
      for(i=0;i<10;i++)
      {for(j=0;j<(9-i);j++)
      cout<<setw(3)<<" ";
      for(j=0;j<=i;j++)
      cout<<setw(6)<<a[i][j];
      cout<<endl;}
      system("pause");
      return 0;
      }
      入栈与出栈操作
      主程序
      #include<stdio.h>
      #include<stdlib.h>
      #define TRUE 1
      #define FALSE 0
      #define OK 1
      #define ERROR 0
      #define OVERFLOW -2
      typedef int Status;
      typedef int ElemType;
      typedef struct
      {
      ElemType *data;
      int head;//头
      int tail;//尾
      int Queuesize;//队列长度
      int length;//元素个数
      }Queue;
      //初始化队列
      Status InitQueue(Queue &q)
      {
      q.data=(ElemType *)malloc(100*sizeof(ElemType));
      q.head=0;// 头赋为0
      q.tail=0;//尾赋为0
      q.length=0;//元素个数为0
      q.Queuesize=100;//长度为100
      return OK;
      }
      //入队列
      Status PushQueue(Queue &q,ElemType e)
      {
      q.data[q.tail++]=e;//将e的值赋给队列
      q.length++;//队列长度自增1
      if(q.tail==q.Queuesize)//循环队列
      {
      q.tail=0;
      }
      return OK;
      }
      //出队列
      Status PopQueue(Queue &q,ElemType &e)
      {
      if(!q.length)//防止队列为空的情况
      {
      return ERROR;
      }
      e=q.data[q.head++];//将队列的值赋给e
      q.length--;//队列长度减1
      return e;
      }
      //判断队列是否为空
      Status IsEmpty(Queue q)
      {
      return(q.length==0);
      }
      //判断队列是否已满
      Status IsFull(Queue q)
      {
      return(q.length==q.Queuesize);
      }
      //插入队列
      Status InsertQueue(Queue &q,ElemType e)
      {
      if (IsFull(q))
      {
      printf("队列已满,不能再插入\n");
      return (OVERFLOW);
      }
      else {
      q.data[q.tail]=e;
      q.tail=(q.tail+1)%q.Queuesize;
      return (OK);
      }
      }
      //删除队头元素
      Status DeleteQueue(Queue &q,ElemType &e)
      {
      if (IsEmpty(q))
      {
      printf("队列已空,不能再删除\n");
      return (ERROR);
      }
      e=q.data[q.head];
      q.head=++(q.head)%q.Queuesize;
      return (q.data[q.head]);
      }
      //显示出队列的全部信息
      void printfQueue(Queue q)
      {
      if (IsEmpty(q))
      {
      printf("队列已空,不能显示\n");
      }
      else
      {
      int i;
      for(i=q.head;i<q.tail;i++)
      {
      printf("%d \n",q.data[i]);
      }
      }
      }
      //主函数
      int main()
      {
      int flag;
      int val;
      Q


      IP属地:河南来自Android客户端3楼2017-12-27 08:32
      回复
        实验步骤:(算法描述、源程序、操作步骤和方法)
        元素类型、指针类型
        每个模块的分析
        打印杨辉三角
        #include<iostream>
        #include"iomanip"
        using namespace std;
        int main()
        {
        int i,j,a[10][10];
        for(i=0;i<10;i++) {a[i][0]=1;a[i][i]=1;}
        for(i=2;i<10;i++)
        for(j=1;j<=i-1;j++)
        a[i][j]=a[i-1][j-1]+a[i-1][j];
        cout<<"杨辉三角:"<<endl;
        for(i=0;i<10;i++)
        {for(j=0;j<(9-i);j++)
        cout<<setw(3)<<" ";
        for(j=0;j<=i;j++)
        cout<<setw(6)<<a[i][j];
        cout<<endl;}
        system("pause");
        return 0;
        }
        入栈与出栈操作
        主程序
        #include<stdio.h>
        #include<stdlib.h>
        #define TRUE 1
        #define FALSE 0
        #define OK 1
        #define ERROR 0
        #define OVERFLOW -2
        typedef int Status;
        typedef int ElemType;
        typedef struct
        {
        ElemType *data;
        int head;//头
        int tail;//尾
        int Queuesize;//队列长度
        int length;//元素个数
        }Queue;
        //初始化队列
        Status InitQueue(Queue &q)
        {
        q.data=(ElemType *)malloc(100*sizeof(ElemType));
        q.head=0;// 头赋为0
        q.tail=0;//尾赋为0
        q.length=0;//元素个数为0
        q.Queuesize=100;//长度为100
        return OK;
        }
        //入队列
        Status PushQueue(Queue &q,ElemType e)
        {
        q.data[q.tail++]=e;//将e的值赋给队列
        q.length++;//队列长度自增1
        if(q.tail==q.Queuesize)//循环队列
        {
        q.tail=0;
        }
        return OK;
        }
        //出队列
        Status PopQueue(Queue &q,ElemType &e)
        {
        if(!q.length)//防止队列为空的情况
        {
        return ERROR;
        }
        e=q.data[q.head++];//将队列的值赋给e
        q.length--;//队列长度减1
        return e;
        }
        //判断队列是否为空
        Status IsEmpty(Queue q)
        {
        return(q.length==0);
        }
        //判断队列是否已满
        Status IsFull(Queue q)
        {
        return(q.length==q.Queuesize);
        }
        //插入队列
        Status InsertQueue(Queue &q,ElemType e)
        {
        if (IsFull(q))
        {
        printf("队列已满,不能再插入\n");
        return (OVERFLOW);
        }
        else {
        q.data[q.tail]=e;
        q.tail=(q.tail+1)%q.Queuesize;
        return (OK);
        }
        }
        //删除队头元素
        Status DeleteQueue(Queue &q,ElemType &e)
        {
        if (IsEmpty(q))
        {
        printf("队列已空,不能再删除\n");
        return (ERROR);
        }
        e=q.data[q.head];
        q.head=++(q.head)%q.Queuesize;
        return (q.data[q.head]);
        }
        //显示出队列的全部信息
        void printfQueue(Queue q)
        {
        if (IsEmpty(q))
        {
        printf("队列已空,不能显示\n");
        }
        else
        {
        int i;
        for(i=q.head;i<q.tail;i++)
        {
        printf("%d \n",q.data[i]);
        }
        }
        }
        //主函数
        int main()
        {
        int flag;
        int val;
        Q


        IP属地:河南来自Android客户端4楼2017-12-27 08:43
        回复
          int main()
          {
          int flag;
          int val;
          Queue q;
          if ( !InitQueue(q) )
          {
          printf("内存不足!\n");
          exit(OVERFLOW);
          }
          printf("欢迎使用本队列系统!\n");
          do
          {
          printf("\n\n");
          printf("\t*************************************\t\n");
          printf("\t************1.入队列;****************\t\n");
          printf("\t************2.出队列;****************\t\n");
          printf("\t************3.插入队尾元素;**********\t\n");
          printf("\t************4.删除队头元素;**********\t\n");
          printf("\t************5.显示队列所有元素;******\t\n");
          printf("\t************6.清屏;******************\t\n");
          printf("\t************0.退出;******************\t\n");
          printf("\t*************************************\t\n");
          printf("请输入0~6:");
          if (0 != scanf("%d", &flag)) //检测输入是否合法,防止接收到非法输入时的误操作
          {
          switch (flag)
          {
          case 1:
          printf("请输入要入队列的元素的值(int):");
          if ( 0 == scanf("%d", &val) ) //检测输入是否合法
          {
          printf("输入错误,请重新输入!\n");
          break;
          }
          else if ( !PushQueue(q, val) )
          printf("入队列失败,内存不足!\n");
          break;
          case 2:
          if ( PopQueue(q, val) )
          printf("出队列的元素是:%d\n", val);
          else
          printf("出队列失败,空队列!\n");
          break;
          case 3:
          printf("请输入要插入尾队列的元素的值(int):\n");
          if ( 0 == scanf("%d", &val) ) //检测输入是否合法
          {
          printf("输入错误,请重新输入!\n");
          break;
          }
          else if ( InsertQueue(q,val) )
          printf("插入后队列的元素是:\n");
          printfQueue(q);
          break;
          case 4:
          if(DeleteQueue(q,val))
          printf("要删除的队头的元素是:%d\n", val);
          else
          printf("出队列失败,空队列!\n");
          break;
          case 5:
          printf("队列的所有元素为:\n");
          printfQueue(q);
          break;
          case 6:
          system("cls");
          break;
          default:
          if (0 != flag)
          printf("错误,请重新输入!\n");
          break;
          }
          }
          else
          {
          printf("错误,请重新输入!\n");
          }
          }while(0 != flag);
          return 0;


          IP属地:河南来自Android客户端5楼2017-12-27 08:44
          回复
            class Book{
            static int bookID=1000;
            int bookid;
            String bookName;
            boolean available=ture;
            String bookRemark;
            public Book(String bookName,String bookRemark){
            bookID++;
            bookid=bookID;
            this.bookName=bookName;
            this.bookRemark=bookRemark;
            }
            public String getBookName(){
            return bookName;
            }
            public String toString(){
            return bookid+bookName+available+bookRemark;
            }
            }
            class BookManager extends Book{
            linkedList bookList;
            public BookManager(){
            bookList aa=new bookList;
            }
            public void addBook(Book newBook){
            super
            }
            public void listAllBook(){
            super
            }
            public BooksearchBook(StringbookName){
            }
            public BookremoveBook(StringbookName){
            }
            }


            IP属地:河南6楼2018-05-09 09:52
            回复