求大神帮忙看一下c++代码哪里错了,谢谢。
#include<bits/stdc++.h>

#include<Windows.h>

#include<tlhelp32.h>

#include<shlwapi.h>

#include<psapi.h>

#include<commctrl.h>

using namespace std;

int main()

{

    HDC a;

    int x=0,y=0;

    a=GetDC(GetDesktopWindow());

    while(true){

        //if(y>=GetSystemMetrics(SM_CYSCREEN)){

        //  x=0;

        //  y=0;

        //}

    StretchBlt(a,x+25,y+25,

    GetSystemMetrics(SM_CXSCREEN)-(x+25)*2,

    GetSystemMetrics(SM_CYSCREEN)-(y+25)*2,

    a, 0, 0,GetSystemMetrics(SM_CXSCREEN),

    GetSystemMetrics(SM_CYSCREEN),13369376);

    Sleep(1000);

    }

    return 0;

 }

图片说明

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
求大神帮忙看一下c++代码哪里错了,谢谢

```#include<bits/stdc++.h> #include<Windows.h> #include<tlhelp32.h> #include<shlwapi.h> #include<psapi.h> #include<commctrl.h> using namespace std; int main() { HDC a; int x=0,y=0; a=GetDC(GetDesktopWindow()); while(true){ //if(y>=GetSystemMetrics(SM_CYSCREEN)){ // x=0; // y=0; //} StretchBlt(a,x+25,y+25, GetSystemMetrics(SM_CXSCREEN)-(x+25)*2, GetSystemMetrics(SM_CYSCREEN)-(y+25)*2, a, 0, 0,GetSystemMetrics(SM_CXSCREEN), GetSystemMetrics(SM_CYSCREEN),13369376); Sleep(1000); } return 0; } ``` ![图片说明](https://img-ask.csdn.net/upload/201905/20/1558346904_994324.png)

求大神帮忙看一下c++代码哪里错了,谢谢。

``` #include<bits/stdc++.h> #include<Windows.h> #include<tlhelp32.h> #include<shlwapi.h> #include<psapi.h> #include<commctrl.h> using namespace std; int main() { HDC a; int x=0,y=0; a=GetDC(GetDesktopWindow()); while(true){ //if(y>=GetSystemMetrics(SM_CYSCREEN)){ // x=0; // y=0; //} StretchBlt(a,x+25,y+25, GetSystemMetrics(SM_CXSCREEN)-(x+25)*2, GetSystemMetrics(SM_CYSCREEN)-(y+25)*2, a, 0, 0,GetSystemMetrics(SM_CXSCREEN), GetSystemMetrics(SM_CYSCREEN),13369376); Sleep(1000); } return 0; } ``` ![图片说明](https://img-ask.csdn.net/upload/201905/20/1558348064_632955.png)

求大神帮忙看一下c语言字符题目~~

从键盘上输入一个满足格式(形如“ A1,234 ” )要求的字符串(其长度不超过20),编程将其从分割符(“,”)位置分割成两个部分(如 A1 和 234 两个字符串),并在屏幕上分两行顺序显示分割后的结果(输入输出格式示例如下)。 输入: A 1, 234 输出 1 : A1 输出 2 : 234 方法1:不真正分隔,只是寻找分隔标志(逗号),然后用'\n'替代实现分两行输出。 方法2:真正以逗号作为分隔符,将字符串分成两个子串。 ``` #include<stdio.h> int main() { char c[100],a=0,b=0,d=0,i=0; gets(c); while(c[i]!=','); {printf("%c",c[i]); i++;} printf('\n'); i++; while(c[i]!='\0') {printf("%c",c[i]); i++; } printf('\n'); } ``` 我写的代码输出不了结果 请问为啥

求大神帮忙,用C语言写个生日蛋糕出来

各位大神帮帮忙,有个朋友过生日 不知道如何用C语言编个生日蛋糕,能力有限,特来请教大神们

C2086错误代码。求大神帮忙看看哪里错了

学习C Primer Plus第六版的时候出现的问题。 这个程序目的在于把我的年龄转换成天数 { int year, mon, day, //定义三个变量 day = 1; //day是一天 mon = 30 * day; //一个月30天 year = 12 * mon; //一年12个月 printf("I am 5 years old.That is %d day\n", 5 * year); return 0; } ``` ```输入到VS2019里。结果无法运行,显示 错误代码C2086 “int day":重定义。 请问这个程序有什么问题啊?我明明只定义了一次day变量啊!!!百度度不出来,官网的代码示例和我的也很大差异,救救小白吧QAQ

急!!求大神帮忙看一下以下代码需要改哪部分

急!!求大神帮忙看一下以下代码需要改哪部分,源代码执行后停的位置和提示抽到的数字不相符,谢谢!!! ![图片说明](https://img-ask.csdn.net/upload/201701/14/1484398068_625464.png)![图片说明](https://img-ask.csdn.net/upload/201701/14/1484398080_462003.png)![图片说明](https://img-ask.csdn.net/upload/201701/14/1484398090_662775.png)![图片说明](https://img-ask.csdn.net/upload/201701/14/1484398103_511992.png)![图片说明](https://img-ask.csdn.net/upload/201701/14/1484398115_525595.png)![图片说明](https://img-ask.csdn.net/upload/201701/14/1484398127_790124.png)![图片说明](https://img-ask.csdn.net/upload/201701/14/1484398138_997337.png)![图片说明](https://img-ask.csdn.net/upload/201701/14/1484398154_387932.png) <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>达能公司年会抽奖</title> <link href="css/nhcj.css" type="text/css" rel="stylesheet" /> <script type="text/javascript" src="js/jquery-1.8.1.min.js"></script> <script type="text/javascript" src="js/nhcj.js"></script> </head> <body> <style> body{ padding-top:10px;} </style> <div class="wrap"> <div class="header"><p style="text-align:center;font-size:40px;font-weight:bold;color:#FF0000">恭祝大家,新年快乐!</p> </div> <div class="main"> <div class="con980"> <div class="play rel"> <table class="playtab" id="ptb" cellpadding="0" cellspacing="1"> <tr> <td>1</td> <td>2</td> <td>3</td> <td>4</td> <td>5</td> </tr> <tr> <td>16</td> <td></td> <td></td> <td></td> <td>6</td> </tr> <tr> <td>15</td> <td></td> <td></td> <td></td> <td>7</td> </tr> <tr> <td>14</td> <td></td> <td></td> <td></td> <td>8</td> </tr> <tr> <td>13</td> <td>12</td> <td>11</td> <td>10</td> <td>9</td> </tr> </table> <img id="xingyun" class="xingyun" src="images/2.jpg" /> <ul> <li style="float:left;margin-top:4px;"> <input value="开始抽奖" id="btnplays" type="button" onclick="StartGame()" class="play_btn" > </li> <li style="float:left;margin-top:4px; margin-left:100px;"> <input value="停" id="btnstop" type="button" onclick="choujiang()" class="play_btn" > </li> </ul> </div> </div> </div> <!-- <div><span> &nbsp;&nbsp;&nbsp;开始抽奖前,请先设置参与抽奖的最大号码: <input style="width:60px;" id="maxnumst" value="" /></span></div> <div id="yizj"><p>&nbsp;</p><span>&nbsp;&nbsp;&nbsp;已中奖号码:</span></div> <div><p>&nbsp;</p><p>&nbsp;&nbsp;&nbsp;注:刷新页面,抽奖会重新开始,结果不会被保存。</p> </div>--> </div> </body> </html> // 代码整理:木头心 var index=1, //当前亮区位置 prevIndex=0, //前一位置 Speed=300, //初始速度 Time, //定义对象 arr = [], //初始化数组 zjarr = [], EndIndex=0, //决定在哪一格变慢 ptb, //获取tb对象 cycle=0, //转动圈数 EndCycle=0, //计算圈数 flag=false, //开始转动标志 quick=0, //加速 maxnum=16, // 最大开奖号码 btnplays; /* * 删除左右两端的空格 */ function Trim(str){ return str.replace(/(^\s*)|(\s*$)/g, ""); } /* * 定义数组 */ function GetSide(m,n){ //初始化数组 var arr = []; for(var i=0;i<m;i++){ arr.push([]); for(var j=0;j<n;j++){ arr[i][j]=i*n+j; } } //获取数组最外圈 var resultArr=[]; var tempX=0, tempY=0, direction="Along", count=0; while(tempX>=0 && tempX<n && tempY>=0 && tempY<m && count<m*n) { count++; resultArr.push([tempY,tempX]); if(direction=="Along"){ if(tempX==n-1) tempY++; else tempX++; if(tempX==n-1&&tempY==m-1) direction="Inverse"; } else{ if(tempX==0) tempY--; else tempX--; if(tempX==0&&tempY==0) break; } } return resultArr; } function StartGame(){ maxnum = 16;//$("#maxnumst").val(); /*if(maxnum == "") { alert("请设置参与抽奖的最大号码"); $("#maxnumst").addClass("playcurr"); return; } maxnum = maxnum.trim(); var reg = new RegExp("^[0123456789]+$"); if (!reg.test(maxnum) || maxnum < 1) { alert("请正确设置参与抽奖的最大号码"); $("#maxnumst").addClass("playcurr"); return; }*/ ptb = document.getElementById("ptb"); btnplays = $("#btnplays"); $("#maxnumst").attr("disabled",true); arr = GetSide(5,5); clearInterval(Time); cycle=0; // flag=true; EndIndex=Math.floor(Math.random()*16); EndCycle=1; btnplays.val("抽奖中..."); btnplays.attr("disabled",true); Speed = 300; Time = setInterval(Star,Speed); } //跑马灯变速 function Star(){ //走五格开始加速 if(quick==15){ clearInterval(Time); Speed=20; flag=true; Time=setInterval(Star,Speed); } if(index>=arr.length){ index=0; cycle++; } ptb.rows[arr[index][0]].cells[arr[index][1]].className="playcurr"; if(index>0){ prevIndex=index-1; }else{ prevIndex=arr.length-1; } ptb.rows[arr[prevIndex][0]].cells[arr[prevIndex][1]].className="playnormal"; index++; quick++; } //结束转动并选中号码 function choujiang(){ if(flag==false) { return; } flag = false; quick=0; cycle=0; clearInterval(Time); btnplays.attr("disabled",false); btnplays.val("开始抽奖"); var zjnum = getZJnumber(maxnum) alert("恭喜 "+zjnum+"号中奖"); var imgpath = "images/"+zjnum+".jpg" $("#xingyun").attr("src",imgpath); $("#yizj").append("<span>"+ zjnum + ",</span>"); // var yizinumb = $("#yizj").innerHTML(); //yizinumb = yizinumb + zjnum + ","; // $("#yizj").innerHTML(yizinumb); } // 中奖的随机数 function getZJnumber(maxnum) { maxnum = parseInt(maxnum); var zjnum = 0; while(true) { zjnum = Math.floor(Math.random()*maxnum*4 - maxnum) if( 0< zjnum && zjnum < maxnum + 1 && $.inArray(zjnum,zjarr) == -1) // 排除已中奖者,取随机数范围的中间区间 { zjarr.push(zjnum); break; } } return zjnum; }

mp3代码c语言,求大神帮忙

怎么可以从文件中获取声音文件,然后列表输出。用c语言写一个mp3的代码。

求大神帮忙写一道c语言的题

青年歌手参加歌曲大奖赛计分系统(5个选手,4个评委) 分别用子函数实现输入、计算平均分(去掉一个最高分和一个最低分),排序(成绩由高到低),输出(前三名) 注:不知道能不能用上struct结构 跪求代码

图片合成:求大神帮忙看一下,这个代码怎么改善,急!!!拜托了!

![图片说明](https://img-ask.csdn.net/upload/201905/11/1557540271_324552.png) ![图片说明](https://img-ask.csdn.net/upload/201905/11/1557540459_273591.png) ![图片说明](https://img-ask.csdn.net/upload/201905/11/1557540725_374345.png) 合成后的图片是这样的,合成用的图片数越多,合成后的图片中的人像就越透明。请问怎么改写这个代码可以改善这种情况? ![图片说明](https://img-ask.csdn.net/upload/201905/11/1557540589_436884.png) 原图片 ![图片说明](https://img-ask.csdn.net/upload/201905/11/1557547220_845008.png) ![图片说明](https://img-ask.csdn.net/upload/201905/11/1557554092_955789.png) ![图片说明](https://img-ask.csdn.net/upload/201905/11/1557554135_554143.png) ![图片说明](https://img-ask.csdn.net/upload/201905/11/1557554956_254465.png)

求帮助写一个代码 刚学习数据结构 实在是搞不懂 求大神帮忙谢谢

![图片说明](https://img-ask.csdn.net/upload/201603/21/1458544956_858474.png) ![图片说明](https://img-ask.csdn.net/upload/201603/21/1458544996_495420.jpg) ![图片说明](https://img-ask.csdn.net/upload/201603/21/1458545015_382608.jpg) 好心人帮忙翻译好了 求大神帮忙写一下代码 谢谢大家了 ![图片说明](https://img-ask.csdn.net/upload/201603/21/1458545036_342390.png)

求大神帮忙看看这个c语言他题目代码的缺陷~~

7.1连接两个字符串 不使用 strcat 函数,编写一个程序将两个字符串连接起来,注意程序首先需要通过键盘输入两个字符串,然后将它们连接起来,将连接后的字符串存储于新的字符数组中,再打印数出。 ``` #include<stdio.h> int main() { char a[50],b[50],c[50];int i=0,j; gets(a); gets(b); while(a[i]!='\0') { c[i]=a[i]; i++; } j=i,i=0; while(b[i]!='\0') { c[j]=b[i]; j++,i++; } puts(c); return 0; } ``` 我这个在平台上测试的时候有一个隐藏用例错误了,,,,,why 这个代码啥缺陷?![图片说明](https://img-ask.csdn.net/upload/201511/05/1446723065_529119.png)

跪求大神帮忙看下代码,错了不晓得怎么改哦

switch (uMsg) { case WM_CHAR: char szChar[20]; sprintf(_T(szChar),_T( "char code is %d"), wParam); ## 错误 1 error C2065: “LszChar”: 未声明的标识符## ## IntelliSense: "const wchar_t *" 类型的实参与 "const char *" 类型的形参不兼容 ## MessageBox(hwnd, _T(szChar), _T("XX虐编程"), MB_OKCANCEL); break; case WM_LBUTTONDOWN: MessageBox(hwnd, TEXT("点了"), TEXT("编程反被XX虐"), MB_OKCANCEL); HDC hdc; hdc = GetDC(hwnd); TextOut(hdc, 50, 50, TEXT("编程反抗了"), strlen(TEXT("编程反抗了"))); ReleaseDC(hwnd, hdc); break; case WM_PAINT: HDC hDc; PAINTSTRUCT ps; hDc = BeginPaint(hwnd, &ps); TextOut(hDc, 50, 50, TEXT("XX还是把它虐了"), strlen(TEXT("XX还是把它虐了"))); ## 错误 3 error C2664: “size_t strlen(const char *)”: 无法将参数 1 从“const wchar_t [6]”转换为“const char *” ## ## 错误 4 error C2660: “TextOutW”: 函数不接受 4 个参数 ## EndPaint(hwnd, &ps); break; case WM_CLOSE: if (IDYES == MessageBox(hwnd, TEXT("编程over啦?"), TEXT("XX虐编程"), MB_YESNO)) DestroyWindow(hwnd); break; case WM_DESTROY: PostQuitMessage(0); break; default: return DefWindowProc(hwnd, uMsg, wParam, lParam); } 错误提示: 错误 1 error C2065: “LszChar”: 未声明的标识符

求大神帮忙看看c语言,输入一串字符,然后输入在某个单词之前插入一个单词的代码,调试总是出问题

#include <stdio.h> #include <string.h> #include <stdlib.h> #define Acharlen 100 #define Bcharlen 20 char * mid(char * thechar,int start,int len) { char *my_char; int i=0; for(;start<start+len;start++,i++) { *(my_char+i)=thechar[start]; } return my_char; } int insert(char *longchar,char * my_char,unsigned int start) { unsigned int i,j=strlen(longchar); if(strlen(longchar)+strlen(my_char)>Acharlen) return 0; for(i=strlen(longchar);i>=start;i--) *(longchar+i+strlen(my_char))=*(longchar+i); for(i=0;i<=strlen(my_char);i++) { *(longchar+start+i)=*(my_char+i); } return 1; } void main() { char a[Acharlen]; char b[Bcharlen]; char c[Acharlen]; char *my_char; unsigned int i,k; printf("please intput many char\n"); gets(a); printf("please input insert before many char\n"); gets(b); printf("please input inser char\n"); gets(c); for(i=0;i<=strlen(a)-strlen(b);i++) { my_char=mid(a,i,strlen(b)); if(strcmp(my_char,b)) break; } if(i>strlen(a)-strlen(b)) { printf("you input error\n"); exit(0); } if(k=insert(a,c,i)) puts(a); else printf("error\n"); }

【求帮忙】来个大神帮忙写一个脉冲程序的C语言代码

现在需要用PC直接控制步进电机驱动进而来控制步进电机的启停,转动。兄弟我是一点都不会,所以特来此求大神给一个代码。只要能输出高低电平和方波的脉冲就好了!在此谢过啦!!!下面是驱动器型号和基本信息![![图片说明](https://img-ask.csdn.net/upload/201505/10/1431255085_682948.png)图片说明](https://img-ask.csdn.net/upload/201505/10/1431255076_255263.png)

求大神帮忙将C代码转换为java。

typedef struct _TIME_LIMIT2 { BYTE bSN[8]; DWORD expireTime; } TIME_LIMIT2; CString CMyUSBKey::GenDateLimit(CString strSn,CTime expirTime) { TIME_LIMIT2 limit; limit.bSN[0] = 'k'; limit.bSN[2] = 'a'; limit.bSN[4] = 0x85; limit.bSN[6] = 0xA1; srand( (unsigned)time( NULL ) ); limit.bSN[1] = rand(); limit.bSN[3] = rand(); limit.bSN[5] = rand(); limit.bSN[7] = 0; for (int i=0;i<7;i++) { limit.bSN[7] += limit.bSN[i]; } 前8个字节初始值 BYTE SN[8]; for (int i=0;i<8;i++) { int tmp; _stscanf_s(strSn.GetBuffer()+i*2,_T("%2x"),&tmp); SN[i] = (BYTE)tmp; } 读取8字节SN码 for (int i=0;i<8;i++) { limit.bSN[i] ^= SN[i]; 前8个字节初始值和8位SN码异或运算 } //C51中与PC的顺序相反,需要先颠倒顺序 limit.expireTime = (DWORD)expirTime.GetTime(); 将到期时间转换成4字节整数 limit.expireTime ^= 0x55AA55AA; 到期时间异或 FlipBuffer(&limit.expireTime, sizeof(DWORD)); 前后字节翻转,因为单片机和计算机整数存储顺序不一致 CString strLicense; CString tmp; for (int i=0;i<12;i++) { tmp.Format(_T("%02X"),limit.bSN[i]); 将许可码转换成字符串 strLicense += tmp; } return strLicense; } 时间许可限制,时、分、秒分别是:m_strSN.GetAt(13)%24,m_strSN.GetAt(14)%60,m_strSN.GetAt(15)%60 m_expireTime = CTime(m_expireTime.GetYear(),m_expireTime.GetMonth(),m_expireTime.GetDay(),m_strSN.GetAt(13)%24,m_strSN.GetAt(14)%60,m_strSN.GetAt(15)%60);

求大神帮忙解释下面这段代码,尤其是问号后边的,谢谢啦

求大神帮忙解释下面这段代码,尤其是问号后边的,谢谢啦 ``` <result type="redirect" name="success">/Module/QuZhengGuiZe/List.action?pageLink=${pager.pageLinkUrl}</result> ```

求大神帮忙,这段代码在哪有设置背景图片的,俄罗斯方块小游戏

求大神帮忙,这个俄罗斯方块程序在哪有设置新游戏背景图片的。另外运行以后新游戏界面底色如何清除。。链接在下面求求大神帮帮忙。。http://www.linuxidc.com/Linux/2011-08/41891.htm

数据结构顺序栈代码,老是报错,求大神帮忙看一下哪里有问题。

``` /* 实验内容: 1.利用数组建立并初始化一个顺序栈,并将此栈中各元素的值依次输出; 2.当栈不满时将一个新元素入栈,并依次输出此时栈中各元素的值。 3.当栈不空时将栈顶元素出栈,并输出此时栈中各元素的值。 实验要求: 栈的最大空间为10个元素单元,栈中已有部分元素,栈中元素值的类型为字符型。 要求新入栈的元素可以从键盘输入。 当操作不合理或不能完成时,程序应能处理并输出相应信息。 带星号的第3项实验内容为选作内容。 */ #include<stdio.h> #include<stdlib.h> //需要的头文件 typedef char StackData; typedef struct { StackData *base; StackData *top; int stacksize; } SeqStack; //说明顺序栈的结构体变量类型 void main() { Create_Stack(S); printf("顺序栈中已有的元素值为:\n"); Print_Stack(S); printf("\n请输入要入栈的新元素值:\n"); scanf("%c",&x); Push(S,x); //将新元素x入栈 printf("新元素入栈后栈中元素的值为:\n"); Print_Stack(S); } void Create_Stack(S)//初始化建立顺序栈 { S.base=(StackData*)malloc(10*sizeof(StackData)); S.top=S.base; S.stacksize=10; char a[10]={'a','b','c','d','e','f','g','h'}; int i; for(i=0;i<=9;i++) { *S.top=a[i]; S.top++; } } void Print_Stack(S)//依次输出栈中各元素的值 { StackNode *p; p=S.base; while(p<S.top) { printf("%c ",*p); p++; } } void Push(SeqStack S,StackData x) //将新元素x入栈 { if(StackFull(S)) { S.base=(StackData*)realloc(S.base,(S.stacksize+10)*sizeof(StackData)); if(!S.base) exit(overflow);//追加存储空间失败 S.top=S.base+S.stacksize; S.stacksize+=10; } *S.top=x; S.top++; } ```

求大神帮忙看一下二叉链表的层序遍历的代码T T

#include <iostream> using namespace std; struct Binode{ char data; Binode *lchild,*rchild; }; class Bitree{ public: Bitree(){root=Creat(root);} void Leverorder(); private: Binode *root; Binode *Creat(Binode *bt); }; Binode *Bitree::Creat(Binode *bt){ char ch; cin>>ch; if(ch=='#')bt=NULL; else{ bt=new Binode();bt->data=ch; bt->lchild=Creat(bt->lchild); bt->rchild=Creat(bt->rchild); } return bt; } void Bitree::Leverorder(){ Binode *Q[100];Q[100]=new Binode(); int front=-1,rear=-1; if(root==NULL)return; else{ rear++;Q[rear]=root; while(front!=rear){ Binode *q;q=new Binode(); front++;q=Q[front]; cout<<q->data; if(q->lchild!=NULL)Q[++rear]=q->lchlid; if(q->rchild!=NULL)Q[++rear]=q->rchlid; } } } int main() { Bitree m; m.Leverorder(); return 0; } 编译一下是有错误的但我不知道怎么改正 [Error] C:\Users\35321\Documents\C-Free\Temp\未命名1.cpp:36: error: 'struct Binode' has no member named 'lchlid' [Error] C:\Users\35321\Documents\C-Free\Temp\未命名1.cpp:37: error: 'struct Binode' has no member named 'rchlid' 求指教QAQ

求大神来看看我代码错在哪个地方,能运行但是输出有问题

实验6: 地下迷宫探索(注:要求使用邻接表) 1.实验目的 (1)熟练掌握图的存储结构。 (2)熟练掌握图的深度优先遍历方法。 2.实验内容 在现在来说,探索地下通道是一种娱乐益智的游戏。本实验案例以探索地下通道迷宫作为内容。 假设有一个地下通道迷宫,它的通道都是直的,而通道所有交叉点(包括通道的端点)上都有一盏灯和一个开关,如图1所示。请问如何从某个起点开始在迷宫中点亮所有的灯并回到起点? ![图片说明](https://img-ask.csdn.net/upload/202004/24/1587701616_259513.png) 3.实验要求 (1)输入说明:输入第1行给出三个正整数,分别表示地下迷宫的结点数N(1≤ N≤1000,表示通道所有交叉点和端点)、边数M(M≤3000,表示通道数)和探索起始结点编号S(结点从1到N编号)。随后的M行对应M条边(通道),每行给出一对正整数,分别是该条边连通的两个结点的编号。 (2)输出说明:若可以点亮所有结点的灯,则输出从S开始并以S结束的包含所有结点的序列,序列中相邻的节点一定有边(通道);否则虽然不能点亮所有结点的灯,但还是输出点亮部分灯的结点序列,最后输出0,此时表示迷宫不是连通图。 由于深度优先遍历的结点序列是不唯一的,为了使输出具有唯一的结果,约定以编号小的结点优先的次序访问(点灯)。在点亮所有可以点亮的灯后,以原路返回的方式回到起点。 (3)测试用例: ![图片说明](https://img-ask.csdn.net/upload/202004/24/1587701661_921157.png) 这是我的实验代码,求大神帮忙看一下错在哪里,每次输入到第三行就没法输新的数字了 ``` #include <iostream> #include <stdlib.h> #include <malloc.h> //本题使用的是邻接表储存迷宫图 int* visit[1000];//标记是否访问 typedef struct ANode{ int adjvex; //该边的终点编号 struct ANode *nextarc; //指向下一条边的指针 }ArcNode; typedef struct Vnode{ int data; //顶点信息 ArcNode *firstarc; //指向第一条边 }VNode; typedef struct { VNode adjlist[1000]; //邻接表 }AdjGraph; typedef struct{ int data[1000]; int top; //栈顶指针 }path;//设置一个堆栈存放迷宫路径 void InitStack(path *&s){ s=(path *)malloc(sizeof(path)); s->top=-1; } //初始化堆栈 bool push(path *&s,int e){ if (s->top==1000) //栈满的情况,即栈上溢出 return false; s->top++; //栈顶指针增1 s->data[s->top]=e; //元素e放在栈顶指针处 return true; }//进栈 void CreateALGraph(AdjGraph *&G,int adjlist[1000],int num,int edge){ //创建迷宫图 ArcNode *p; G=(AdjGraph *)malloc(sizeof(AdjGraph)); p=(ArcNode *)malloc(sizeof(ArcNode)); p=G->adjlist[0].firstarc; int i,n,m,k; for(i=0;i<num;i++) //给邻接表中所有头结点的指针域置初值 G->adjlist[i].firstarc=NULL; for(n=0;n<edge;n++){ scanf("%d %d",&k,&m); p=G->adjlist[k-1].firstarc; while(p->nextarc!=NULL){ p=p->nextarc; } p->adjvex=m; p->nextarc=NULL; } } void DFS_non_recursive(AdjGraph *&G,path *&s,int begin,int visit[1000]){//借助堆栈求出路径并输出 bool push(path *&s,int e); int min(int a,int b); ArcNode *p,*a; p=(ArcNode *)malloc(sizeof(ArcNode)); a=(ArcNode *)malloc(sizeof(ArcNode)); push(s,begin); printf("%d",begin); p=G->adjlist[begin-1].firstarc; p=p->nextarc; visit[begin-1]=1; while(p!=NULL||(G->adjlist[p->adjvex-1].firstarc)->nextarc!=NULL){ a=G->adjlist[p->adjvex-1].firstarc; push(s,min((p->nextarc)->adjvex,(a->nextarc)->adjvex)); printf("%d ",min((p->nextarc)->adjvex,(a->nextarc)->adjvex)); visit[min((p->nextarc)->adjvex,(a->nextarc)->adjvex)-1]=1; } while(s->top=!-1){ s->top--; printf("%d ",s->data[s->top]); } } void check(int visit[1000],int num){//检查是否连通 int i=0; while(visit[i]!=0&&i<num){ if(visit[i]=0) printf("0"); } } int min(int a,int b){ if(a>b) return b; else if(a<b) return a; else if(a==b) printf("ERROR"); } int main(){ void InitStack(path *&s); bool push(path *&s,int e); void CreateALGraph(AdjGraph *&G,int adjlist[1000],int num,int edge); void DFS_non_recursive(AdjGraph *&G,path *&s,int begin,int visit[1000]); void check(int visit[1000],int num); int min(int a,int b); int num,edge,begin; path *s; AdjGraph *G; int* adjlist[1000]; scanf("%d %d %d",&num,&edge,&begin); InitStack(s); CreateALGraph(G,adjlist[1000],num,edge); DFS_non_recursive(G,s,begin,visit[1000]); check(visit[1000],num); return 0; } ```

大学四年自学走来,这些私藏的实用工具/学习网站我贡献出来了

大学四年,看课本是不可能一直看课本的了,对于学习,特别是自学,善于搜索网上的一些资源来辅助,还是非常有必要的,下面我就把这几年私藏的各种资源,网站贡献出来给你们。主要有:电子书搜索、实用工具、在线视频学习网站、非视频学习网站、软件下载、面试/求职必备网站。 注意:文中提到的所有资源,文末我都给你整理好了,你们只管拿去,如果觉得不错,转发、分享就是最大的支持了。 一、电子书搜索 对于大部分程序员...

在中国程序员是青春饭吗?

今年,我也32了 ,为了不给大家误导,咨询了猎头、圈内好友,以及年过35岁的几位老程序员……舍了老脸去揭人家伤疤……希望能给大家以帮助,记得帮我点赞哦。 目录: 你以为的人生 一次又一次的伤害 猎头界的真相 如何应对互联网行业的「中年危机」 一、你以为的人生 刚入行时,拿着傲人的工资,想着好好干,以为我们的人生是这样的: 等真到了那一天,你会发现,你的人生很可能是这样的: ...

Java基础知识面试题(2020最新版)

文章目录Java概述何为编程什么是Javajdk1.5之后的三大版本JVM、JRE和JDK的关系什么是跨平台性?原理是什么Java语言有哪些特点什么是字节码?采用字节码的最大好处是什么什么是Java程序的主类?应用程序和小程序的主类有何不同?Java应用程序与小程序之间有那些差别?Java和C++的区别Oracle JDK 和 OpenJDK 的对比基础语法数据类型Java有哪些数据类型switc...

我以为我学懂了数据结构,直到看了这个导图才发现,我错了

数据结构与算法思维导图

String s = new String(" a ") 到底产生几个对象?

老生常谈的一个梗,到2020了还在争论,你们一天天的,哎哎哎,我不是针对你一个,我是说在座的各位都是人才! 上图红色的这3个箭头,对于通过new产生一个字符串(”宜春”)时,会先去常量池中查找是否已经有了”宜春”对象,如果没有则在常量池中创建一个此字符串对象,然后堆中再创建一个常量池中此”宜春”对象的拷贝对象。 也就是说准确答案是产生了一个或两个对象,如果常量池中原来没有 ”宜春” ,就是两个。...

技术大佬:我去,你写的 switch 语句也太老土了吧

昨天早上通过远程的方式 review 了两名新来同事的代码,大部分代码都写得很漂亮,严谨的同时注释也很到位,这令我非常满意。但当我看到他们当中有一个人写的 switch 语句时,还是忍不住破口大骂:“我擦,小王,你丫写的 switch 语句也太老土了吧!” 来看看小王写的代码吧,看完不要骂我装逼啊。 private static String createPlayer(PlayerTypes p...

Linux面试题(2020最新版)

文章目录Linux 概述什么是LinuxUnix和Linux有什么区别?什么是 Linux 内核?Linux的基本组件是什么?Linux 的体系结构BASH和DOS之间的基本区别是什么?Linux 开机启动过程?Linux系统缺省的运行级别?Linux 使用的进程间通信方式?Linux 有哪些系统日志文件?Linux系统安装多个桌面环境有帮助吗?什么是交换空间?什么是root帐户什么是LILO?什...

Linux命令学习神器!命令看不懂直接给你解释!

大家都知道,Linux 系统有非常多的命令,而且每个命令又有非常多的用法,想要全部记住所有命令的所有用法,恐怕是一件不可能完成的任务。 一般情况下,我们学习一个命令时,要么直接百度去搜索它的用法,要么就直接用 man 命令去查看守冗长的帮助手册。这两个都可以实现我们的目标,但有没有更简便的方式呢? 答案是必须有的!今天给大家推荐一款有趣而实用学习神器 — kmdr,让你解锁 Linux 学习新姿势...

和黑客斗争的 6 天!

互联网公司工作,很难避免不和黑客们打交道,我呆过的两家互联网公司,几乎每月每天每分钟都有黑客在公司网站上扫描。有的是寻找 Sql 注入的缺口,有的是寻找线上服务器可能存在的漏洞,大部分都...

史上最全的 python 基础知识汇总篇,没有比这再全面的了,建议收藏

网友们有福了,小编终于把基础篇的内容全部涉略了一遍,这是一篇关于基础知识的汇总的文章,请朋友们收下,不用客气,不过文章篇幅肯能会有点长,耐心阅读吧爬虫(七十)多进程multiproces...

讲一个程序员如何副业月赚三万的真实故事

loonggg读完需要3分钟速读仅需 1 分钟大家好,我是你们的校长。我之前讲过,这年头,只要肯动脑,肯行动,程序员凭借自己的技术,赚钱的方式还是有很多种的。仅仅靠在公司出卖自己的劳动时...

女程序员,为什么比男程序员少???

昨天看到一档综艺节目,讨论了两个话题:(1)中国学生的数学成绩,平均下来看,会比国外好?为什么?(2)男生的数学成绩,平均下来看,会比女生好?为什么?同时,我又联想到了一个技术圈经常讨...

85后蒋凡:28岁实现财务自由、34岁成为阿里万亿电商帝国双掌门,他的人生底层逻辑是什么?...

蒋凡是何许人也? 2017年12月27日,在入职4年时间里,蒋凡开挂般坐上了淘宝总裁位置。 为此,时任阿里CEO张勇在任命书中力赞: 蒋凡加入阿里,始终保持创业者的冲劲,有敏锐的...

总结了 150 余个神奇网站,你不来瞅瞅吗?

原博客再更新,可能就没了,之后将持续更新本篇博客。

副业收入是我做程序媛的3倍,工作外的B面人生是怎样的?

提到“程序员”,多数人脑海里首先想到的大约是:为人木讷、薪水超高、工作枯燥…… 然而,当离开工作岗位,撕去层层标签,脱下“程序员”这身外套,有的人生动又有趣,马上展现出了完全不同的A/B面人生! 不论是简单的爱好,还是正经的副业,他们都干得同样出色。偶尔,还能和程序员的特质结合,产生奇妙的“化学反应”。 @Charlotte:平日素颜示人,周末美妆博主 大家都以为程序媛也个个不修边幅,但我们也许...

MySQL数据库面试题(2020最新版)

文章目录数据库基础知识为什么要使用数据库什么是SQL?什么是MySQL?数据库三大范式是什么mysql有关权限的表都有哪几个MySQL的binlog有有几种录入格式?分别有什么区别?数据类型mysql有哪些数据类型引擎MySQL存储引擎MyISAM与InnoDB区别MyISAM索引与InnoDB索引的区别?InnoDB引擎的4大特性存储引擎选择索引什么是索引?索引有哪些优缺点?索引使用场景(重点)...

新一代神器STM32CubeMonitor介绍、下载、安装和使用教程

关注、星标公众号,不错过精彩内容作者:黄工公众号:strongerHuang最近ST官网悄悄新上线了一款比较强大的工具:STM32CubeMonitor V1.0.0。经过我研究和使用之...

如果你是老板,你会不会踢了这样的员工?

有个好朋友ZS,是技术总监,昨天问我:“有一个老下属,跟了我很多年,做事勤勤恳恳,主动性也很好。但随着公司的发展,他的进步速度,跟不上团队的步伐了,有点...

我入职阿里后,才知道原来简历这么写

私下里,有不少读者问我:“二哥,如何才能写出一份专业的技术简历呢?我总感觉自己写的简历太烂了,所以投了无数份,都石沉大海了。”说实话,我自己好多年没有写过简历了,但我认识的一个同行,他在阿里,给我说了一些他当年写简历的方法论,我感觉太牛逼了,实在是忍不住,就分享了出来,希望能够帮助到你。 01、简历的本质 作为简历的撰写者,你必须要搞清楚一点,简历的本质是什么,它就是为了来销售你的价值主张的。往深...

大学一路走来,学习互联网全靠这几个网站,最终拿下了一把offer

大佬原来都是这样炼成的

离职半年了,老东家又发 offer,回不回?

有小伙伴问松哥这个问题,他在上海某公司,在离职了几个月后,前公司的领导联系到他,希望他能够返聘回去,他很纠结要不要回去? 俗话说好马不吃回头草,但是这个小伙伴既然感到纠结了,我觉得至少说明了两个问题:1.曾经的公司还不错;2.现在的日子也不是很如意。否则应该就不会纠结了。 老实说,松哥之前也有过类似的经历,今天就来和小伙伴们聊聊回头草到底吃不吃。 首先一个基本观点,就是离职了也没必要和老东家弄的苦...

为什么你不想学习?只想玩?人是如何一步一步废掉的

不知道是不是只有我这样子,还是你们也有过类似的经历。 上学的时候总有很多光辉历史,学年名列前茅,或者单科目大佬,但是虽然慢慢地长大了,你开始懈怠了,开始废掉了。。。 什么?你说不知道具体的情况是怎么样的? 我来告诉你: 你常常潜意识里或者心理觉得,自己真正的生活或者奋斗还没有开始。总是幻想着自己还拥有大把时间,还有无限的可能,自己还能逆风翻盘,只不是自己还没开始罢了,自己以后肯定会变得特别厉害...

什么时候跳槽,为什么离职,你想好了么?

都是出来打工的,多为自己着想

为什么程序员做外包会被瞧不起?

二哥,有个事想询问下您的意见,您觉得应届生值得去外包吗?公司虽然挺大的,中xx,但待遇感觉挺低,马上要报到,挺纠结的。

当HR压你价,说你只值7K,你该怎么回答?

当HR压你价,说你只值7K时,你可以流畅地回答,记住,是流畅,不能犹豫。 礼貌地说:“7K是吗?了解了。嗯~其实我对贵司的面试官印象很好。只不过,现在我的手头上已经有一份11K的offer。来面试,主要也是自己对贵司挺有兴趣的,所以过来看看……”(未完) 这段话主要是陪HR互诈的同时,从公司兴趣,公司职员印象上,都给予对方正面的肯定,既能提升HR的好感度,又能让谈判气氛融洽,为后面的发挥留足空间。...

面试阿里p7,被按在地上摩擦,鬼知道我经历了什么?

面试阿里p7被问到的问题(当时我只知道第一个):@Conditional是做什么的?@Conditional多个条件是什么逻辑关系?条件判断在什么时候执...

你期望月薪4万,出门右拐,不送,这几个点,你也就是个初级的水平

先来看几个问题通过注解的方式注入依赖对象,介绍一下你知道的几种方式@Autowired和@Resource有何区别说一下@Autowired查找候选者的...

面试了一个 31 岁程序员,让我有所触动,30岁以上的程序员该何去何从?

最近面试了一个31岁8年经验的程序猿,让我有点感慨,大龄程序猿该何去何从。

大三实习生,字节跳动面经分享,已拿Offer

说实话,自己的算法,我一个不会,太难了吧

程序员垃圾简历长什么样?

已经连续五年参加大厂校招、社招的技术面试工作,简历看的不下于万份 这篇文章会用实例告诉你,什么是差的程序员简历! 疫情快要结束了,各个公司也都开始春招了,作为即将红遍大江南北的新晋UP主,那当然要为小伙伴们做点事(手动狗头)。 就在公众号里公开征简历,义务帮大家看,并一一点评。《启舰:春招在即,义务帮大家看看简历吧》 一石激起千层浪,三天收到两百多封简历。 花光了两个星期的所有空闲时...

立即提问
相关内容推荐