排行榜

  • 用户榜
  • 标签榜
  • 冲榜分奖金

频道

最新最热悬赏待采纳 筛选
  • 0

    回答

  • 3

    浏览

请问这个函数为什么报错?我用的是vs2017,也安装了easyx,但仍然保存。请问哪位大佬能告诉我怎么办吗?

回答 匿名用户__
采纳率0%
14分前
  • 0

    回答

  • 3

    浏览

#include<iostream> using namespace std; #define OK 1 #define ERROR 0 #define OVERFLOW -1 typedef int Status; typedef int ElemType; typedef char ZF; struct LNode {     ZF name[20];//名字     ElemType num;//学号     ElemType data;//成绩     struct LNode *next;//指针域 }; typedef struct LNode LNode; typedef struct LNode* LinkList; //初始化 Status InitList(LinkList &L) {     L=new LNode;     L->next=NULL;     return OK; } //插入 Status ListInsert(LinkList &L,int i,ElemType xh,ZF xm[20],ElemType cj)// 学号  姓名  成绩 {     if(i<1) return ERROR;     LNode *p=L;     int j=0;     while(p!=NULL&&j<i-1)     {         p=p->next;         j++;     }     if(p==NULL) return ERROR;     LNode *s=new LNode;     s->num=xh;     s->name[20]=xm[20];     s->data=cj;     s->next=p->next;     p->next=s;     return OK; } //遍历 Status TraverseList(LinkList L) {     LNode *p=L->next;     while(p!=NULL)     {         cout<<p->num<<endl;         cout<<p->name<<endl;         cout<<p->data<<endl;         p=p->next;     }     return 0; } //销毁 void DestroyList(LinkList &L) {     LNode *p;     while(L!=NULL)     {         p=L->next;         delete L;         L=p;     } } //主函数 int main() {     LinkList L;     InitList(L);//初始化     ElemType cj,xh;     ZF xm[20];     int i;     cout <<"请输入学生信息"<<endl;     for(i=0;i<3;i++)     {         cout<<"学号:";         cin>>xh;         cout<<"姓名:";         cin>>xm;         cout<<"成绩:";         cin>>cj;         ListInsert(L,i+1,xh,xm,cj);//插入     }          TraverseList(L);//遍历     DestroyList(L);//销毁     return 0; } 除了成绩,姓名和学号都不对 是遍历出问题了嘛

  • 1

    回答

  • 5

    浏览

#include<iostream> using namespace std; class student { public:     student(int n,int a,int b,int c,int d,int e):num(n),za(a),zb(b),zc(c),zd(d),ze(e){}     int sum();     double average(); private:     int num;     int za;     int zb;     int zc;     int zd;     int ze; }; int student::sum(){return(za + zb + zc + zd + ze);} double student::average() { return((za + zb + zc + zd + ze) / 5); } int main() {     student a[5] = {         student(1001,87,88,88,89,78),         student(1002,76,77,67,89,89),         student(1003,99,87,98,67,87),         student(1004,78,87,99,98,67),         student(1005,67,87,98,89,88)     };     for (int i = 0; i < 5; i++)     {         cout << a[i].student << a[i].sum() << a[i].average();         cout << endl;     }     system("pause");     return 0; } 输出的a[i].student一直报错是不允许使用类型名,求解,谢谢各位大佬!!!

  • 0

    回答

  • 3

    浏览

关于FTP文件下载426 Failure writing network stream.系统空间充足,文件传输大小上限与系统相关,但不知道传输中断的原原因

回答 weixin_42264813
采纳率0%
1小时前
  • 1

    回答

  • 13

    浏览

1.设有正规式r=1(0|1)*0   (a)列举该三个该正规式所表示正规集的元素。 (b)构造识别该正规集的NFA; (c)将NFA确定化为DFA并进行最小化(要有计算过程)。 2.对于文法: A → id = E  E → E + F | F  F → id (a)计算该文法所有非终结符的 FIRST、FOLLOW 集合; (b)拓广文法并构造识别该文法活前缀的 DFA。

  • 0

    回答

  • 9

    浏览

【问题描述】   编一个程序,读入用户输入的一串先序遍历字符串,根据此字符串建立一个二叉树。例如如下的先序遍历字符串:ABC##DE#G##F### ,其中“#”表示的是空格,空格字符代表空树。建立起此二叉树以后,再计算任意两个结点的最近公共祖先,输出共同祖先。 【输入形式】    1、输入包括1行字符串,长度不超过100。    2、两个节点 【输出形式】   可能有多组测试数据,对于每组数据,输出共同祖先字符。 【样例输入】   abc##de#g##f###   c f 【样例输出】   b

  • 1

    回答

  • 10

    浏览

#include<iostream> using namespace std; const int size=10; struct str { int length; int time; int maxsize; char *a; }; void initial(str &n); void input(str &n); void extend(str &n); void copy(str &n,str m); void connect(str &n,str m); void output(str n); void sub(str &n,str m); void length(str &n); void dele(str &n); int main() { str a,b; initial(a); initial(b); //初始化 a,b input(a); //向 a 中输入字符串 copy(b,a); //将 a 中字符串复制到 b 中 length(b); connect(b,a); // 将 a 连接到 b的尾部 connect(b,a); output(a); output(b); length(a); length(b); dele(a); dele(b); } void initial(str &n) { n.time=1; n.maxsize=size; n.a=new char[size]; } void input(str &n) { cout<<"输入字符串"<<endl; char a; int i=1; for(;;i++) { cin>>a; if(i>=n.maxsize-1) //大于当前空间则执行扩容 { extend(n); } if(a=='#') { cout<<"输入结束"<<endl; break; } else { n.a[i]=a; } } n.length=i-1; } void extend(str &n) //作用相当于 realloc { n.time++; char *temp=new char[n.time*size]; n.maxsize=(n.time)*size; for(int i=0;i<=n.length;i++) { temp[i]=n.a[i]; } n.a=temp; } void copy(str &n,str m) //把 m 串复制给 n,此处默认 n为空 { if(m.length>n.maxsize-1) { int i=1; int time=(m.length-n.maxsize)/10+1; for(;i<=time;i++) { extend(n); } } int i=1; for(;i<=m.length;i++) { n.a[i]=m.a[i]; } n.length=m.length; } void connect(str &n,str m) //把 m 接到 n的尾部 { if((n.length+m.length)>n.maxsize-1) //本来是 -2 ,但是新连接的串没有必要 用空的 [0]位置占地,所以改为-1 { int t=((n.length+m.length)-n.maxsize+1)/10+1; for(int i=1;i<=t;i++) { extend(n); } } int i=n.length+1; int o=1; for(;i<=m.length+n.length;i++) // for(;i<=m.length;i++,o++) { n.a[i]=m.a[o]; o++; } n.length=m.length+n.length; // n.length=m.length+1; } void output(str n) { int i=1; for(;i<=n.length;i++) { cout<<n.a[i]; } cout<<endl; } void sub(str &n,str m) //将 m中某子串取出赋值给 n { cout<<"请输入从第几个字符开始"<<endl; int a; cin>>a; if(n.maxsize-1<m.length-a) { int time=(n.maxsize-1-(m.length-a))/10+1; for(int i=1;i<=time;i++) { extend(n); } } int b=1; for(;a<=m.length;a++) { n.a[b]=m.a[a]; b++; } n.length=m.length-a; } void length(str &n) { cout<<"字符串长为: "<<n.length<<endl; } void dele(str &n) { delete []n.a; } 在字符数超过7个之后,再输出就会出现乱码

  • 1

    回答

  • 5

    浏览

#include<iostream> #include<string> using namespace std; class myintegar { friend ostream &operator<<(ostream &cout, myintegar &p); public: myintegar() { m_num = 0; }; myintegar operator++(int) { myintegar temp = *this; m_num++; return temp; } private: int m_num; }; ostream &operator<<(ostream &cout, myintegar &p) { cout << p.m_num ; return cout; } void test02() { myintegar myint; cout << myint++ << endl; cout << myint << endl; } int main() { test02(); system("pause"); return 0; } 有没有老哥能帮我看看我这个后置递增错在哪里了,为什么报错为:没有与这些操作匹配的"<<"运算符 而当我把myintegar operator++(int)改为myintegar &operator++(int)后,又可以运行,但是因为return返回的是temp显示的却是一串乱码数字,是因为myintegar &operator++(int)是返回引用的是地址,但是由于我没有解引用导致返回的是这个数字的地址吗?

回答 weixin_57237979
采纳率0%
2小时前
  • 1

    回答

  • 5

    浏览

class Graph{ private:     typedef struct ArcNode {         int ad;         struct ArcNode* next;         int weight;     }ArcNode;     int max;     typedef struct VNode {         int data;         ArcNode* firstarc;     }VNode;  VNode* vexlist=new VNode[max];   public:     /**      *  类的构造函数         @name Graph(int)         @param  arg1 最大的定点数         @return       */     Graph(int max_v);     /**      *  类的析构函数         @name ~Graph()         @param          @return      */     ~Graph();     /**      *  向图中加入(s, t), 权重为w的双向边         @name addedge(int, int, int)         @param  arg1 边的顶点1         @param  arg2 边的顶点2         @param  arg3 边的权重         @return  void     */     void addedge(int s, int t, int w);     /**      *  询问这张图的最小生成树(prim算法实现)         @name int prim()         @param         @return  int 最小生成树的权值     */     int prim(); 下面是cpp的部分,这个类是用邻接表存储写的一个图的类,完成图的存储,prim算法。我在类的数据域中声明 VNode* vexlist=new VNode[max],但是在析构函数中delete[] vexlist 出错,请大佬批评指正。 Graph::Graph(int max_v){     max = max_v+1;     vexlist[0].data= 0;//第一个元素不储存元素     vexlist[0].firstarc = NULL;     for (int i = 1; i < max; i++)     {         vexlist[i].data = i;//图的顶点1,2,3……         vexlist[i].firstarc = NULL;     } } Graph::~Graph(){     for (int i = 1; i < max; i++)     {         ArcNode* p = vexlist[i].firstarc;         while (p != NULL)         {             ArcNode* q = p;             p= p->next;             delete q;         }     }     delete[] vexlist; } void Graph::addedge(int s, int t, int w){     ArcNode* p = new ArcNode;     if (vexlist[s].firstarc == NULL)     {         vexlist[s].firstarc = p;         p->ad = t;         p->weight = w;         p->next = NULL;              }     else     {         ArcNode* q = vexlist[s].firstarc;         while (q->next != NULL)         {             q = q->next;         }         q->next = p;         p->ad = t;         p->weight = w;         p->next = NULL;     } } int Graph::prim(){     int* adj = new int[max];     int* low = new int[max];     ArcNode* p;     int sum = 0;     int tn = 1;     for (int i = 0; i < max; i++)     {         adj[i] = -1;         low[i] = 10000;     }     int min = low[1];     adj[1] = 0;     for (int i = 1; i < max; i++)     {         if (adj[i]==0)         {             p = vexlist[i].firstarc;             while (p != NULL)             {                 adj[p->ad] = i;                 if (p->weight < low[p->ad])                 {                     low[p->ad] = p->weight;                 }                 p = p->next;             }         }         for (int j = 1; j < max; j++)         {             if (adj[j]!=-2&&adj[j]!=0)             {                 if (min > low[j])                 {                     min = low[j];                     tn = j;                 }             }         }         sum += min;         min = low[1];         adj[tn] = 0;         adj[i] = -2;         if (i == max-2)         {             break;         }     }     delete[] adj;     delete[] low;     return sum; }    

  • 1

    回答

  • 14

    浏览

#include<windows.h> #include<tchar.h> LRESULT CALLBACK WINAPI WndProc (HWND,UINT,UINT,LONG);//窗口函数说明 //WinMain入口函数,完成一系列定义和初始化工作,产生消息循环 int WINAPI WinMain (HINSTANCE hInstance,//应用程序当前实例句柄 HINSTANCE hPrevInstance,//应用程序其他实例句柄 LPSTR szCmdLine,//指向程序命令行参数的指针 int iCmdShow)//应用程序开始执行时窗口显示方式的整数值标识 { WNDCLASS wndcls;//初始化 窗口类的定义 //为窗口类各个字段赋值 wndcls.cbClsExtra = NULL;//分配在窗口类结构后的字节数(窗口类无扩展) wndcls.cbWndExtra = NULL;//分配在窗口实例后的字节数(窗口实例无扩展) wndcls.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH);//窗口类的背景刷(白色) wndcls.hCursor= LoadCursor(NULL,IDC_CROSS);//光标 wndcls.hIcon = LoadIcon(NULL,IDI_APPLICATION);//最小化图标为缺省图标 wndcls.hInstance = hInstance;//创建窗口的应用程序当前句柄 wndcls.lpfnWndProc = WndProc;//窗口处理函数为WinProc wndcls.lpszClassName = _T("win32");//窗口类名 wndcls.lpszMenuName = NULL;//窗口中无菜单 wndcls.style = CS_HREDRAW|CS_VREDRAW;//样式 //注册窗口类 RegisterClass(&wndcls); //创建窗口类 HWND hwnd = CreateWindow (_T("Win32"),//窗口类名 _T("文本动画输出"),//窗口标题名 WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, NULL, NULL, hInstance, NULL); //显示窗口 ShowWindow(hwnd,iCmdShow); UpdateWindow(hwnd);//更新并绘制用户区 //消息循环 MSG msg; while (GetMessage(&msg,NULL,0,0))//从消息队列中读取一条消息并放在MSG结构中 { TranslateMessage(&msg);//将消息虚拟键转换为字符消息 DispatchMessage(&msg);//将消息传送到指定窗口 } return msg.wParam;//检测到WM_QUIT消息,程序结束循环并退出 }; LRESULT CALLBACK WINAPI WndProc (HWND hwnd,//接收消息的窗口句柄 UINT iMessage,//消息值 UINT wParam, LONG lParam) { int iFontFlag; HDC hDC; //定义设备环境句柄. HFONT hF; //定义字体句柄. PAINTSTRUCT ps; //定义包含绘图信息的结构体变量 TEXTMETRIC tm; //定义包含字体信息的结构体变量. char lpsz_1[]="欲穷千里目 更上一层楼"; //定义输出字符串. char chFont[7]; //定义包含字体的字符串. int X=0,Y=0,nCharlen=strlen(lpsz_1); switch(iMessage) { case WM_CREATE: SetTimer(hwnd,1,200,NULL); //设定定时器.每0.2秒发出WM_TIMER消息. break; case WM_TIMER: InvalidateRect(hwnd,NULL,1); //刷新用户区. break; case WM_PAINT: //处理绘图消息. hDC=BeginPaint(hwnd,&ps); //获取设备环境指针. if(iFontFlag/nCharlen==0) //设置字体颜色. { SetTextColor(hDC,RGB(255,0,0)); strcpy(chFont,"楷体"); } else if(iFontFlag/nCharlen==1) { SetTextColor(hDC,RGB(0,255,0)); strcpy(chFont,"隶书"); } else if(iFontFlag/nCharlen==2) { SetTextColor(hDC,RGB(255,255,0)); strcpy(chFont,"宋体"); } else if(iFontFlag/nCharlen==3) { SetTextColor(hDC,RGB(0,0,255)); strcpy(chFont,"黑体"); } else { iFontFlag=0; SetTextColor(hDC,RGB(255,0,0)); } //设置字体. hF=CreateFont( //获得字体句柄. 40, //字体高度 0, //系统自动调整宽度. 0, //文本水平 0, //字体倾斜度为0 400, //字体粗度.400为正常. 0, //字体不倾斜. 0, //无下划线. 0, //无中划线. GB2312_CHARSET, //字符集 OUT_DEFAULT_PRECIS, //默认输出精度. CLIP_DEFAULT_PRECIS, //默认裁剪精度 DEFAULT_QUALITY, //默认输出质量. DEFAULT_PITCH|FF_DONTCARE,//默认间距 chFont); //字体名称. SelectObject(hDC,hF); //选入字体. GetTextMetrics(hDC,&tm); //得到字体的信息. TextOut(hDC,X,Y,&lpsz_1[iFontFlag%nCharlen], nCharlen-iFontFlag%nCharlen); //输出. iFontFlag+=2; //字体标志自增. DeleteObject(hF); //删除字体. EndPaint(hwnd,&ps); //删除设备环境指针. return 0; case WM_DESTROY: //结束. PostQuitMessage(0); KillTimer(hwnd,1); //删除定时器. return 0; default: return(DefWindowProc(hwnd,iMessage,wParam,lParam)); } return 0; }; 显示end of file found before the left brace '{' was matched 有没有大佬看一下呜呜呜,万分感谢!

  • 1

    回答

  • 4

    浏览

如图所示,文件接收二进制流,FILE用法可以正常工作,我想改成ifsteam用法,请问应该怎么写

回答 Greless
采纳率50%
3小时前
  • 4

    回答

  • 15

    浏览

中间这句话是什么意思?是函数还是什么?void (*init_tracebak_monitor)();   struct callback {     void (*init_tracebak_monitor)(); };

回答 omig0001
采纳率89.5%
5小时前
  • 2

    回答

  • 20

    浏览

class HuffmanTree{ private:     typedef  struct  node {         int weight;         int leftchild, rightchild, parent;         char ch;     }HTNode, * Huffman;     int length = 1;     typedef char** Huffamncode;     Huffman Ht = new HTNode[length];     public:     /**      *  构造函数         @name HuffmanTree(const int* Table)         @param arg1 数字出现的频度表         @return         注意: 要求树的左孩子为权制较小的编码,左孩子的二进制编号为0     */     HuffmanTree(const int* Table);     /**      *  析构函数         @name ~HuffmanTree()         @param         @return     */     ~HuffmanTree();     /**      *  获取message的霍夫曼编码         @name string Encode(string)         @param  arg1 待编码待字符串         @return 对应的霍夫曼编码     */     string Encode(string message);     /**      *  获取message的霍夫曼解码         @name string Decode(stirng)         @param         @return 解码出的内容     */     string Decode(string message);     void select_minium( Huffman HT, int k, int& min1, int& min2);     int min(Huffman HT, int k); }; 下面cpp中的代码部分,请各位大佬注意析构函数中我delete[] Ht 时报错,我自己试了一下,就是在类的数据域中直接Huffman Ht = new HTNode[7]这样声明则没有问题,就是不用变长数组,改为定长则delete没有问题。我想请问这是什么原因?   HuffmanTree::HuffmanTree(const int* Table) {     int i;     char zifu[26] = { 'a','b','c','d','e','f','g','h','i','g','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z' };     for (i = 0; i <26; i++)     {         if (*Table==0)         {             break;         }         Ht[i].leftchild = -1;         Ht[i].parent = -1;         Ht[i].rightchild = -1;         Ht[i].weight = *Table;         Ht[i].ch = zifu[i];             Table++;             length += 2;     }     for (; i <length-2; i++)     {         Ht[i].leftchild = -1;         Ht[i].parent = -1;         Ht[i].rightchild = -1;         Ht[i].weight = 0;     }     int min1, min2;     for (i = (length-1)/2; i <length-2; i++)     {         select_minium(Ht, i, min1, min2);         Ht[i].leftchild = min1;         Ht[i].rightchild = min2;         Ht[i].weight = Ht[min1].weight + Ht[min2].weight;         Ht[min1].parent = i;         Ht[min2].parent = i;     } } HuffmanTree::~HuffmanTree(){     delete[] Ht; } string HuffmanTree::Encode(string message){     Huffamncode Hc;     Hc = new char* [(length-1)/2];     char* code = new char[(length - 1) / 2 ];     code[(length - 1) / 2-1] = '\0';     int i;          for (i = 0; i < (length - 1) / 2; i++)     {         int current = i;         int father = Ht[i].parent;         int start = (length - 1) / 2-1;         while (father != -1)         {             if (Ht[father].leftchild == current)             {                 //cout << start << endl;                 code[--start] = '0';                 current = father;                 father = Ht[father].parent;             }             else             {                 //cout << start << endl;                 code[--start] = '1';                 current = father;                 father = Ht[father].parent;             }         }         Hc[i] = new char[(length - 1) / 2 - start];         strcpy(Hc[i], code + start);         //for (int j = start; j < 3; j++) cout << code[j];              }     delete[] code;     string mas;     for (unsigned int i = 0; i < message.length(); i++)     {         for (int j = 0; j <(length-1)/2 ; j++)         {             if (message[i] == Ht[j].ch)             {                 mas.append(Hc[j]);             }         }     }     delete[]Hc;     return mas; } string HuffmanTree::Decode(string message){     string mas;     int m = 0;     int x;     for (unsigned int i = 0; i < message.length()+1; i++)     {         if (m == 0)         {             x = length - 3;             m++;         }         if (Ht[x].leftchild == -1 && Ht[x].rightchild == -1)         {             mas += Ht[x].ch;             i--;             m--;             continue;         }         if (message[i] == '0')         {             x = Ht[x].leftchild;         }         if (message[i] == '1')         {             x = Ht[x].rightchild;         }     }     return mas; } void HuffmanTree::select_minium(Huffman HT, int k, int& min1, int& min2) {     min1 = min(HT, k);     min2 = min(HT, k); } int HuffmanTree::min(Huffman HT, int k) {     int i = 0;     int min;             int min_weight;      while (HT[i].parent != -1)         i++;     min_weight = HT[i].weight;     min = i;          for (; i < k; i++)     {         if (HT[i].weight < min_weight && HT[i].parent == -1)         {             min_weight = HT[i].weight;             min = i;         }     }          HT[min].parent = 1;     return min; }  

  • 0

    回答

  • 12

    浏览

试了下直接用target_link_libraries链接正常无问题 用find_library查找库查找不到,然后链接的时候报错,路径代码如下   include_directories(./include/) find_library(GLFWDLL  glfw3.dll  HINTS ${PROJECT_SOURCE_DIR}/lib)   SET(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/bin/)   add_executable(demo src/main.cpp src/glad.c) target_link_libraries(demo ${PROJECT_SOURCE_DIR}/lib/glfw3.dll) #target_link_libraries(demo ${GLFWDLL})

  • 2

    回答

  • 9

    浏览

这句含义时很么 const char *FUNC_INIT_TRACEBAK_MONITOR = "init_tracebak_monitor";

回答 omig0001
采纳率89.5%
6小时前
  • 5

    回答

  • 21

    浏览

头文件的预处理信息中,有的会在文件名前后加两个下划线,有的不加,有的会把.h转化为_h,有的不转化,有的会把小写转化成大写,有的不转化?有没有规则? #ifndef __FILEC_H__ #ifndef _TEST_H #ifndef __FILEC_H__ #ifndef GRAPHICS_H

回答 omig0001
采纳率89.5%
6小时前
  • 4

    回答

  • 18

    浏览

(编译运行多次才会成功显示一次,大部分概率控制台无显示) 是否是因为while循环的if判断条件太多导致生成随机数的数目过多导致控制台无显示? #include <iostream> #include <stdlib.h> #include <time.h> using namespace std; int main() {         srand((unsigned int)time(0));                //用 srand 修改种子     int a,r;     int aa=0;                                     int num1[9]={1,2,3,4,5,6,7,8,9};     int num2[9]={1,2,3,4,5,6,7,8,9};     int num3[9]={1,2,3,4,5,6,7,8,9};     int num4[9]={1,2,3,4,5,6,7,8,9};     int num5[9]={1,2,3,4,5,6,7,8,9};     int num6[9]={1,2,3,4,5,6,7,8,9};     int num7[9]={1,2,3,4,5,6,7,8,9};     int num8[9]={1,2,3,4,5,6,7,8,9};     int array[9][9];                            //生成9*9的数独棋盘                                  /* 第一行*/         for(int i=0; i<9; i++)                             {             r=rand()%(9-i);                        //生成随机数              array[0][aa]=num1[r];                                     for(int j=r;j<9;j++)                 num1[j]=num1[j+1];                 aa++;                 }                 aa=0; /*第二行*/                                  for(int i=0; i<3; i++)                             {                                 while(true){                 r=rand()%(9-i);                        //生成随机数                  if(num2[r]!=array[0][0]&&num2[r]!=array[0][1]&&num2[r]!=array[0][2])                 break;                                                                                          }                 array[1][aa]=num2[r];                                                     for(int j=r;j<9;j++)                 num2[j]=num2[j+1];                     aa++;                      }         for(int i=3; i<6; i++)                             {                                 while(true){                 r=rand()%(9-i);                        //生成随机数                  if(num2[r]!=array[0][3]&&num2[r]!=array[0][4]&&num2[r]!=array[0][5])                 break;                                                                                          }                 array[1][aa]=num2[r];                                                     for(int j=r;j<9;j++)                 num2[j]=num2[j+1];                     aa++;                      }         for(int i=6; i<9; i++)                             {                                 while(true){                 r=rand()%(9-i);                        //生成随机数                  if(num2[r]!=array[0][6]&&num2[r]!=array[0][7]&&num2[r]!=array[0][8])                 break;                                                                                          }                 array[1][aa]=num2[r];                                                     for(int j=r;j<9;j++)                 num2[j]=num2[j+1];                     aa++;                      }                 aa=0; /*第三行*/                         for(int i=0; i<3; i++)                             {                                 while(true){                 r=rand()%(9-i);                        //生成随机数                  if(num3[r]!=array[0][0]&&num3[r]!=array[0][1]&&num3[r]!=array[0][2]                  &&num3[r]!=array[1][0]&&num3[r]!=array[1][1]&&num3[r]!=array[1][2])                 break;                                                                                          }                 array[2][aa]=num3[r];                                                     for(int j=r;j<9;j++)                 num3[j]=num3[j+1];                     aa++;                      }         for(int i=3; i<6; i++)                             {                                 while(true){                 r=rand()%(9-i);                        //生成随机数                  if(num3[r]!=array[0][3]&&num3[r]!=array[0][4]&&num3[r]!=array[0][5]                     &&num3[r]!=array[1][3]&&num3[r]!=array[1][4]&&num3[r]!=array[1][5])                 break;                                                                                          }                 array[2][aa]=num3[r];                                                     for(int j=r;j<9;j++)                 num3[j]=num3[j+1];                     aa++;                      }         for(int i=6; i<9; i++)                             {                                 while(true){                 r=rand()%(9-i);                        //生成随机数                  if(num3[r]!=array[0][6]&&num3[r]!=array[0][7]&&num3[r]!=array[0][8]                  &&num3[r]!=array[1][6]&&num3[r]!=array[1][7]&&num3[r]!=array[1][8])                 break;                                                                                          }                 array[2][aa]=num3[r];                                                     for(int j=r;j<9;j++)                 num3[j]=num3[j+1];                     aa++;                      } aa=0;                   /*第四行*/                         for(int i=0; i<9; i++)                             {                                 while(true){                 r=rand()%(9-i);                        //生成随机数                  if(num4[r]!=array[0][i]&&num4[r]!=array[1][i]&&num4[r]!=array[2][i])                 break;                                                                                          }                 array[3][aa]=num4[r];                                                     for(int j=r;j<9;j++)                 num4[j]=num4[j+1];                     aa++;                      } aa=0;                                                 /*第五行*/         for(int i=0; i<3; i++)                             {                                 while(true){                 r=rand()%(9-i);                        //生成随机数                  if(num5[r]!=array[0][i]&&num5[r]!=array[1][i]&&num5[r]!=array[2][i]                  &&num5[r]!=array[3][0]&&num5[r]!=array[3][1]&&num5[r]!=array[3][2])                 break;                                                                                          }                 array[4][aa]=num5[r];                                                     for(int j=r;j<9;j++)                 num5[j]=num5[j+1];                     aa++;                      }         for(int i=3; i<6; i++)                             {                                 while(true){                 r=rand()%(9-i);                        //生成随机数                  if(num5[r]!=array[0][i]&&num5[r]!=array[1][i]&&num5[r]!=array[2][i]                  &&num5[r]!=array[3][3]&&num5[r]!=array[3][4]&&num5[r]!=array[3][5])                 break;                                                                                          }                 array[4][aa]=num5[r];                                                     for(int j=r;j<9;j++)                 num5[j]=num5[j+1];                     aa++;                      }         for(int i=6; i<9; i++)                             {                                 while(true){                 r=rand()%(9-i);                        //生成随机数                  if(num5[r]!=array[0][i]&&num5[r]!=array[1][i]&&num5[r]!=array[2][i]                  &&num5[r]!=array[3][6]&&num5[r]!=array[3][7]&&num5[r]!=array[3][8])                 break;                                                                                          }                 array[4][aa]=num5[r];                                                     for(int j=r;j<9;j++)                 num5[j]=num5[j+1];                     aa++;                      } aa=0;  /*第六行*//*         for(int i=0; i<3; i++)                             {                                 while(true){                 r=rand()%(9-i);                        //生成随机数                  if(num6[r]!=array[0][i]&&num6[r]!=array[1][i]&&num6[r]!=array[2][i]&&num6[r]!=array[3][i]&&num6[r]                  &&num6[r]!=array[4][0]&&num6[r]!=array[4][1]&&num6[r]!=array[4][2]&&num6[r]!=array[3][0]&&num6[r]!=array[3][1]&&num6[r]!=array[3][2])                 break;                                                                                          }                 array[5][aa]=num6[r];                                                     for(int j=r;j<9;j++)                 num6[j]=num6[j+1];                     aa++;                      }         for(int i=3; i<6; i++)                             {                                 while(true){                 r=rand()%(9-i);                        //生成随机数                  if(num6[r]!=array[0][i]&&num6[r]!=array[1][i]&&num6[r]!=array[2][i]&&num6[r]!=array[3][i]                  &&num6[r]!=array[4][3]&&num6[r]!=array[4][4]&&num6[r]!=array[4][5]&&num6[r]!=array[3][3]&&num6[r]!=array[3][4]&&num6[r]!=array[3][5])                 break;                                                                                          }                 array[5][aa]=num6[r];                                                     for(int j=r;j<9;j++)                 num6[j]=num6[j+1];                     aa++;                      }         for(int i=6; i<9; i++)                             {                                 while(true){                 r=rand()%(9-i);                        //生成随机数                  if(num6[r]!=array[0][i]&&num6[r]!=array[1][i]&&num6[r]!=array[2][i]&&num6[r]!=array[3][i]                  &&num6[r]!=array[4][6]&&num6[r]!=array[4][7]&&num6[r]!=array[4][8]&&num6[r]!=array[3][6]&&num6[r]!=array[3][7]&&num6[r]!=array[3][8])                 break;                                                                                          }                 array[5][aa]=num6[r];                                                     for(int j=r;j<9;j++)                 num6[j]=num6[j+1];                     aa++;                      }                 aa=0; */ /*第七行*//*         for(int i=0; i<3; i++)                             {                                 while(true){                 r=rand()%(9-i);                        //生成随机数                  if(num7[r]!=array[0][i]&&num7[r]!=array[1][i]&&num7[r]!=array[2][i]&&num7[r]!=array[3][i]&&num7[r]!=array[3][i]&&num7[r]!=array[4][i]&&num7[r]!=array[5][i])                 break;                                                                                          }                 array[6][aa]=num7[r];                                                     for(int j=r;j<9;j++)                 num7[j]=num7[j+1];                     aa++;                      }         for(int i=3; i<6; i++)                             {                                 while(true){                 r=rand()%(9-i);                        //生成随机数                  if(num7[r]!=array[0][i]&&num7[r]!=array[1][i]&&num7[r]!=array[2][i]&&num7[r]!=array[3][i]&&num7[r]!=array[3][i]&&num7[r]!=array[4][i]&&num7[r]!=array[5][i])                 break;                                                                                          }                 array[6][aa]=num7[r];                                                     for(int j=r;j<9;j++)                 num7[j]=num7[j+1];                     aa++;                          }         for(int i=6; i<9; i++)                             {                                 while(true){                 r=rand()%(9-i);                        //生成随机数                  if(num7[r]!=array[0][i]&&num7[r]!=array[1][i]&&num7[r]!=array[2][i]&&num7[r]!=array[3][i]&&num7[r]!=array[3][i]&&num7[r]!=array[4][i]&&num7[r]!=array[5][i])                 break;                                                                                          }                 array[6][aa]=num7[r];                                                     for(int j=r;j<9;j++)                 num7[j]=num7[j+1];                     aa++;                          }                 aa=0;*/ /*第八行*/ /*第九行*/   /*输出数独*/             for(int y = 0;y < 9;++y)                 {         cout<<array[0][y]<<" ";                 }                 cout<<endl;         for(int y = 0;y < 9;++y)                 {         cout<<array[1][y]<<" ";                 }             cout<<endl;         for(int y = 0;y < 9;++y)                 {         cout<<array[2][y]<<" ";                 }         cout<<endl;         for(int y = 0;y < 9;++y)                 {         cout<<array[3][y]<<" ";                 }         cout<<endl;         for(int y = 0;y < 9;++y)                 {         cout<<array[4][y]<<" ";                 }         cout<<endl;                                  }  

  • 2

    回答

  • 10

    浏览

如下,包括/是什么意思?实际文件只有types.h #include <bits/types.h>

回答 omig0001
采纳率89.5%
7小时前
  • 0

    回答

  • 6

    浏览

通过pushbutton“导入数据”,使combobox的下拉列表选项,替换成excel文档里的某一列数据

  • 2

    回答

  • 8

    浏览

如图,我想要把文字显示在曲线上面用以绑定鼠标事件显示鼠标位置各曲线的值,请问该怎么做呢? qlabel父窗口与qchart父窗口同级无用。 qLabel->raise()无用。

  • 4

    回答

  • 29

    浏览

以下宏定义可否逐句释义,谢谢! #ifndef __sig_atomic_t_defined #define __sig_atomic_t_defined 1   #include <bits/types.h>   /* An integral type that can be modified atomically, without the    possibility of a signal arriving in the middle of the operation.  */ typedef __sig_atomic_t sig_atomic_t;   #endif

回答 omig0001
采纳率89.5%
10小时前
  • 0

    回答

  • 11

    浏览

现在又TIFF图片,有等高线,请问怎样提取山顶点啊?孩子头秃了。

  • 3

    回答

  • 38

    浏览

c++输出4×4整型数组(方阵)主对角线的最大值及主对角线所有元素的乘积。算法提示:主对角线上的数组元素列和行下标相等。

  • 2

    回答

  • 21

    浏览

void CMFCDlg::On_CaptureImage() { // TODO: 在此添加控件通知处理程序代码 //m_grabframe = cvQueryFrame(Capture); m_grabframe = frame; if (m_grabframe == 0) { MessageBox(_T("摄像头已关闭,无法捕捉图像!!!")); return; } CString ImagePath = TEXT("D:\\Documents\\qq\\"); if (!PathIsDirectory(ImagePath)) { CreateDirectory(ImagePath, 0);//不存在则创建 MessageBox(_T("标定图片文件夹已创建!!!")); return; } char ImagesName[100]; ImgNum = ImgNum + 1; sprintf_s(ImagesName, "%s%.2d%s", "D:\\Documents\\qq\\", ImgNum, ".jpg"); IplImage * m_snap = cvCreateImage(cvGetSize(m_grabframe), m_grabframe->depth, m_grabframe->nChannels); cvCopy(m_grabframe, m_snap, NULL); cvSaveImage(ImagesName, m_snap); //把图像写入指定文件夹的文件中去 //以下代码是完成图像的显示过程 pDC = GetDlgItem(IDC_PIC1_STATIC)->GetDC();//GetDlgItem(IDC_PIC_STATIC)意思为获取显示控件的句柄(句柄就是指针),获取显示控件的DC GetDlgItem(IDC_PIC1_STATIC)->GetClientRect(&rect); hDC = pDC->GetSafeHdc();//获取显示控件的句柄 CvvImage m_CvvImage; m_CvvImage.CopyOf(m_snap, 1); //复制该帧图像 m_CvvImage.DrawToHDC(hDC, &rect); //显示到设备环境的矩形框内 } 一直在pDC = GetDlgItem(IDC_PIC1_STATIC)->GetDC()这句中断,提示cv::Exception

回答 华莱士的好朋友
采纳率50%
13小时前
  • 3

    回答

  • 37

    浏览

我在写程序时遇到一个问题,在类的数据域中定义了变量len,然后动态分配int* p=new int[len]。之后在类的析构函数中delete[] p,触发断点。但是将动态分配的数组改为int* p=new int [6];即确定数组的太小,此时再delete[] p,没有问题。我想问一下各位大佬,是因为在类的析构函数中len最终也会销毁的原因吗,所以它delete越界了?

  • 2

    回答

  • 27

    浏览

#include<stdio.h> #include<string.h> #include<stdlib.h> #define MAX_ORDER 20 struct information{ int Order; char Name[16]; int Number; char Location[16]; }; int main() { int i,j,n; struct information Name_information[MAX_ORDER]; struct information temp; scanf("%d",&n); for(i=0;i<n;i++) scanf("%d %s %d %s",&Name_information[i].Order,&Name_information[i].Name,&Name_information[i].Number,&Name_information[i].Location); for(i=0;i<n-1;i++) { for(j=i;j<n-1;j++) { if(strcmp(Name_information[i].Name,Name_information[j].Name)>0) { temp=Name_information[i]; Name_information[i]=Name_information[j]; Name_information[j]=temp; } } } for(i=0;i<n;i++) printf("%d %s %d %s\r\n",Name_information[i].Order,Name_information[i].Name,Name_information[i].Number,Name_information[i].Location); } 题目 2014 年 8 月在南京举行第 2 届奥林匹克青年运动会,每个国家在报名参加时需要填写国家名字,参加的人数,所属的洲,同时系统会自动生成一个报名序号,在开幕式的运动员出场顺序上,按照国家名字的英文字母顺序来出场。请编写一个计算机程序实现国家名字的排序(升序),东道主中国(China)在最后一个出场 输入描述 多组输入,其中每组输入的第一行表示参加国家数 n(占一行),下面 n 行是国家的报名信息(序号、国家名称、参加人数、所属大洲) 输出描述 按国家名字的字母序输出信息(东道主国家名字最后输出)。 样例输入 5 1 France 123 Europe 2 Russia 254 Europe 3 Japan 235 Asia 4 Germany 185 Europe 5 China 560 Asia 样例输出 1 France 123 Europe 4 Germany 185 Europe 3 Japan 235 Asia 2 Russia 254 Europe 5 China 560 Asia

回答 小啵儿
采纳率0%
13小时前
  • 5

    回答

  • 56

    浏览

将1班45名学生和2班40名学生重新分组参加学校体育活动,要求每组学生人数一样多,组内的1班学生个数和2班学生个数都是固定的,问最多能分几个组?组内分别由1班、2班多少人?(1、2班学生人数从键盘输入)。

回答 qq_57959909
采纳率0%
15小时前
  • 2

    回答

  • 7

    浏览

重装系统之后出现这个情况,以为是注册表原因,重装VS2019之后还是一样情况 卸载项目再加载也不行  F12 转到定义报错  请遇到过这种情况的朋友给个解决方法 在 System.ComponentModel.Design.Serialization.CodeDomDesignerLoader.EnsureDocument(IDesignerSerializationManager manager) 在 System.ComponentModel.Design.Serialization.CodeDomDesignerLoader.PerformLoad(IDesignerSerializationManager manager) 在 Microsoft.VisualStudio.Design.Serialization.CodeDom.VSCodeDomDesignerLoader.PerformLoad(IDesignerSerializationManager serializationManager) --- 引发异常的上一位置中堆栈跟踪的末尾 --- 在 Microsoft.VisualStudio.Design.Serialization.CodeDom.VSCodeDomDesignerLoader.PerformLoad(IDesignerSerializationManager serializationManager) 在 Microsoft.VisualStudio.Design.Serialization.CodeDom.VSCodeDomDesignerLoader.DeferredLoadHandler.Microsoft.VisualStudio.TextManager.Interop.IVsTextBufferDataEvents.OnLoadCompleted(Int32 fReload)

回答 不想只是猴子
采纳率100%
22小时前
  • 5

    回答

  • 25

    浏览

#include<iostream> using namespace std; class C1 { public:C1(void) {     cout << 1 << endl; } public:int f1(int a) {     cout << "f1";     return 0; } public: ~C1(void){         cout << "delete" << endl;     } }; int main() {     C1* a = new C1();     delete a;     a->f1(1);//此处警告为: 使用未初始化的内存“a”,a的地址变了,但为什么还是按之前的执行呢       return 0; }

回答 前尘韶光
采纳率0%
23小时前