
作者:微信公开课+
作品:微信公开课
地区:全国小程序
标签:教育,工具,微信公开课,资讯
描述:微信公开课是微信官方与小程序行业合作伙伴沟通交流的微信小程序社区,为线下微信小程序公开课的免费授课提供线上的相关服务,包括查阅小程序活动议程、参与小程序活动互动以及回顾小程序课程内容等。
声明:作者对小程序服务信息内容及运营行为等真实性/合法性及有效性承担全部责任
订阅微信公开课小程序
-
武汉哪里有学习,微信小程序的?
2019-03-12 17:01:43微信公开课小程序热门讨论「武汉哪里有学习,微信小程序的?」最新回复-微信小程序并不难学,关键看你有没有编程基础,如果你是从0开始那就有点吃力了!小程序要学网页基础,HTML,CSS,JS!有了这些基础才能学小程序!慕课网上就有很多学习视频
首先楼主是要学习小程序什么呢?小程序的开发制作?小程序的设计?小程序的营销,小程序的推广?还是用小程序来赚钱呢?小程序不但有微信小程序,支付宝小程序,百度小程序等等。希望对你有帮助,欢迎交流。 更多有关「武汉哪里有学习,微信小程序的?」的疑问请扫码关注微信公开课+小程序! -
武汉微信小程序开发公司?
2019-03-12 17:01:43微信公开课小程序热门讨论「武汉微信小程序开发公司?」最新回复-找武汉楚天智睿传媒吧或看看媒体超市网
先说价格吧,模板价格小程序三四千每年。定制开发价格一般在五万元起。根据自己的需求,来开发自己的小程序。之前找可待科技做的模板开发还可以 更多有关「武汉微信小程序开发公司?」的疑问请扫码关注微信公开课+小程序! -
武汉微信小程序开发公司?求推荐?
2019-03-12 17:01:43微信公开课小程序热门讨论「武汉微信小程序开发公司?求推荐?」最新回复-小程序目前已成为了一种趋势红利,针对于小程序做开发的公司也出现了好多,武汉也是一样的,不过这样的公司有两种类型,这个首先要明白,因为不同的类型情况是不一样的,只有知道了这些才可以进行选择,至于价格呢,这个要看你做什么样的小程序,你对小程序的功能、框架、定位、交互、UI的要求是什么?这些都要提前计划好的,定制开发一套小程序,价格几万到几十万不等,一下列出价格表:1、定制开发服务:价格最低5万到几十万不等,适合有实力的大企业自用。2、一键授权开发:类似《天客通》这样的小程序一键制作平台,成本5000元以下,一键制作小程序,可视化图形编辑,省时、省力、省钱,后期可以更改,非常适合初创企业和发展中的企业。
开发个小程序还用外包?自己招一个前端工程师不就好了。 更多有关「武汉微信小程序开发公司?求推荐?」的疑问请扫码关注微信公开课+小程序! -
武汉有没有开发微信小程序公司啊
2019-03-12 17:01:43微信公开课小程序热门讨论「武汉有没有开发微信小程序公司啊」最新回复-全国各地都有微信小程序的公司的。可以重点关注公司的实力以及公司的客户。小程序公司遍地开发,一定要选择适合自己的。
想要找到一家比较有实力的微信小程序开发公司,可以从以下方面考虑:1、适合自己的,根据你的功能需求寻找合适的,目前已经有很多现成的模板可以直接用,既能满足要求又可以不用定制开发少花钱。2、看小程序的功能是否丰富,要知道做小程序是第一步,后面利用各种活动推广去发展你的用户才是最重要的,所以一个小程序的营销插件决定了你以后推广的力度3、小程序装修是否支持自定义装修,有些小程序装修风格比较单一,只能按照模板装修,相对于自定义拖拽式装修就单调很多4、产品是否成熟稳定,有没有经过市场检验,是否在持续升级中5、售后服务是否跟得上,后面你们肯定会遇到一些自己解决不了的这样那样的问题,需要技术售后支持,如果服务跟不上只会耽误你们的工作进程6、价格合理、性价比高 更多有关「武汉有没有开发微信小程序公司啊」的疑问请扫码关注微信公开课+小程序! -
比如ECharts,小程序能引用外部的图表库吗
2019-03-12 17:01:43微信公开课小程序热门讨论「比如ECharts,小程序能引用外部的图表库吗」最新回复-基于html5Canvas,是一个纯Javascript图表库,提供直观,生动,可交互,可个性化定制的数据可视化图表
暂时小程序这边还不能实现融入,只能等了 更多有关「比如ECharts,小程序能引用外部的图表库吗」的疑问请扫码关注微信公开课+小程序! -
民宿小程序开发功能亮点
2019-03-12 17:01:43微信公开课小程序热门讨论「民宿小程序开发功能亮点」最新回复-三、民宿小程序核心功能:入住日期:入住日期选择;入住人数:入住人数填写;时间区间:可设定日期区间,选择合适的民宿;城市选择:所在城市可手动选择;排序方式:多种排序方式展示;图库展示:民宿图库展示,相册展览;城市定位:手机GPS网络定位,精准可靠;价格筛选:可筛选价格区。民宿小程序所需要的主要功能有:客房预订、在线预约、订单查询和管理、客户信息的收集与管理、优惠券、限时秒杀、线上商城、在线客服等。四、民宿小程序开发功能概况:●客房预订:作为民宿小程序最基本也最核心的功能,既可方便住客快速解决订房的需求,亦可帮助企业更高效地管理订单。●订单查询和管理:通过订单查询与管理经营主可实时掌握房间预订情况,并及时来对服务进行相应的调整与管理。●客户信息收集与管理:通过订单查询与管理企业可实时掌握销售情况,并依据此信息来对服务进行相应的调整与管理。●价格调整:民宿行业隶属于旅游业,有旺季淡季之分,此功能可帮助企业依据不同的活动期、节假日来制定相应的价格策略。●在线预约:通过预约功能,可对民宿内提供的服务进行预约功能,既方便住客预约服务,亦可减轻内部沟通成本,提高效率。●优惠券、限时秒杀:隶属于电商小程序内的两大营销功能,两者搭配使用可达到非常好的效果哦,能激发用户下单的积极性。●线上商城:方便住客购买周边产品,民宿亦可将商城中出售的产品作为房间配套产品供顾客使用,先试用后买单的模式非常利于销售的促成。●在线客服:民宿也算是服务业,所以完善专业的售后服务也是很必要的哦。五、民宿预订小程序开发,获取更多引流曝光机会民宿行业如何分享这块的流量红利,通过微信赚得金矿呢?那么,必然需要靠微信小程序的来完成自己线上的布局,小程序具备小、快、精、便的特点是旅游行业的线上最佳选择!帮助您快速布局线上,一键安装您的业务利器!在民宿在线预订服务小程序开发上,「速成应用」支持定制开发,可以是平台型模式,也可以是连锁店型或者单店型。「速成应用」民宿在线预订服务小程序可以增加多种功能营销模块,小编拿单店型举个例子。比如一家民宿酒店可以开发自己的微信小程序,在小程序中可以增加会员营销功能模块,或者满减、积分会员等营销模块。另外还可以增加消费者评价后支持返现等活动。为了给民宿在线预订服务小程序更大的曝光率,商家也可以根据需要增加分销的功能等,粉丝每推荐成功一人入住即可享受优惠或者红包、积分等。对于民宿而言,因为曝光率不够高,往往对民宿的收入影响很大,因此,民宿行业开发民宿在线预订服务小程序是最好的引流和曝光手段。民宿小程序,出境游旅行必备,打造一站式旅行,房东和房客沟通无障碍,深度体验当地生活。站内查看完相关房源信息。手机号&身份验证,确保个人信息的真实性。第三方支付担保,安全便捷,支持多种付款和收款方式。房客在预订后由平台担保,房款冻结,住一天解冻一天,待入住完成后全部房款解冻,房东房客互评,打造真实信任的社区。
民宿小程序所需要的主要功能有:客房预订、在线预约、订单查询和管理、客户信息的收集与管理、优惠券、限时秒杀、线上商城、在线客服等。民宿小程序开发功能概况:●客房预订:作为民宿小程序最基本也最核心的功能,既可方便住客快速解决订房的需求,亦可帮助企业更高效地管理订单。●订单查询和管理:通过订单查询与管理经营主可实时掌握房间预订情况,并及时来对服务进行相应的调整与管理。●客户信息收集与管理:通过订单查询与管理企业可实时掌握销售情况,并依据此信息来对服务进行相应的调整与管理。●价格调整:民宿行业隶属于旅游业,有旺季淡季之分,此功能可帮助企业依据不同的活动期、节假日来制定相应的价格策略。●在线预约:通过预约功能,可对民宿内提供的服务进行预约功能,既方便住客预约服务,亦可减轻内部沟通成本,提高效率。●优惠券、限时秒杀:隶属于电商小程序内的两大营销功能,两者搭配使用可达到非常好的效果哦,能激发用户下单的积极性。●线上商城:方便住客购买周边产品,民宿亦可将商城中出售的产品作为房间配套产品供顾客使用,先试用后买单的模式非常利于销售的促成。●在线客服:民宿也算是服务业,所以完善专业的售后服务也是很必要的哦。 更多有关「民宿小程序开发功能亮点」的疑问请扫码关注微信公开课+小程序! -
水果店小程序怎么做,谁做过,告诉我一下
2019-03-12 17:01:43微信公开课小程序热门讨论「水果店小程序怎么做,谁做过,告诉我一下」最新回复-如果是行业内比较成熟的标准化系统就会相对便宜点。如:餐饮行业类的和电商类以及酒店预约类的小程序的一般几千元就可以了,因为模板的功能已经相对丰富了。水果店小程序,其实就是电商类小程序;而简单的企业宣传类的一般几百到几千元就可以了。但如果是全部需要开发定制,且功能也比较复杂、繁琐,周期比较长的话,一般都是一万至好几万甚至超过10万,而且像这种是需要商家提出具体的需求服务商才能判断出具体价格。总之,开发一个小程序需要考虑的方面有很多,具体要根据你的要求以及市场的需求等因素来定价格,但不会跟上面的价格相差太大,关于开发一个小程序商城大概会花费多少钱,你可以参考上面的介绍以及自己的实际情况,自己来定夺选择哪家公司合作。
这个还是要根据你的需求,你如果是门店的话,建议做一个单门店型的,如果你是多家门店的话建议你做连锁版的,价格也不贵,现在市面上很多。 更多有关「水果店小程序怎么做,谁做过,告诉我一下」的疑问请扫码关注微信公开课+小程序! -
求C语言小程序源代码,300行左右
2019-03-12 17:01:43微信公开课小程序热门讨论「求C语言小程序源代码,300行左右」最新回复-黑白棋游戏#includegraphics.h/*图形系统头文件*/#defineLEFT0x4b00/*光标左键值*/#defineRIGHT0x4d00/*光标右键值*/#defineDOWN0x5000/*光标下键值*/#defineUP0x4800/*光标上键值*/#defineESC0x011b/*ESC键值*/#defineENTER0x1c0d/*回车键值*/inta[8][8]={0},key,score1,score2;/*具体分数以及按键与存放棋子的变量*/charplayone[3],playtwo[3];/*两个人的得分转换成字符串输出*/voidplaytoplay(void);/*人人对战函数*/voidDrawQp(void);/*画棋盘函数*/voidSetPlayColor(intx);/*设置棋子第一次的颜色*/voidMoveColor(intx,inty);/*恢复原来棋盘状态*/intQpChange(intx,inty,intz);/*判断棋盘的变化*/voidDoScore(void);/*处理分数*/voidPrintScore(intn);/*输出成绩*/voidplayWin(void);/*输出胜利者信息*//******主函数*********/voidmain(void){intgd=DETECT,gr;initgraph(&gd,&gr,c:\\tc);/*初始化图形系统*/DrawQp();/*画棋盘*/playtoplay();/*人人对战*/getch();closegraph();/*关闭图形系统*/}voidDrawQp()/*画棋盘*/{inti,j;score1=score2=0;/*棋手一开始得分都为0*/setbkcolor(BLUE);for(i=100;i=420;i+=40){line(100,i,420,i);/*画水平线*/line(i,100,i,420);/*画垂直线*/}setcolor(0);/*取消圆周围的一圈东西*/setfillstyle(SOLID_FILL,15);/*白色实体填充模式*/fillellipse(500,200,15,15);/*在显示得分的位置画棋*/setfillstyle(SOLID_FILL,8);/*黑色实体填充模式*/fillellipse(500,300,15,15);a[3][3]=a[4][4]=1;/*初始两个黑棋*/a[3][4]=a[4][3]=2;/*初始两个白棋*/setfillstyle(SOLID_FILL,WHITE);fillellipse(120+3*40,120+3*40,15,15);fillellipse(120+4*40,120+4*40,15,15);setfillstyle(SOLID_FILL,8);fillellipse(120+3*40,120+4*40,15,15);fillellipse(120+4*40,120+3*40,15,15);score1=score2=2;/*有棋后改变分数*/DoScore();/*输出开始分数*/}voidplaytoplay()/*人人对战*/{intx,y,t=1,i,j,cc=0;while(1)/*换棋手走棋*/{x=120,y=80;/*每次棋子一开始出来的坐标,x为行坐标,y为列坐标*/while(1)/*具体一个棋手走棋的过程*/{PrintScore(1);/*输出棋手1的成绩*/PrintScore(2);/*输出棋手2的成绩*/SetPlayColor(t);/*t变量是用来判断棋手所执棋子的颜色*/fillellipse(x,y,15,15);key=bioskey(0);/*接收按键*/if(key==ESC)/*跳出游戏*/break;elseif(key==ENTER)/*如果按键确定就可以跳出循环*/{if(y!=80&&a[(x120)/40][(y120)/40]!=1&&a[(x120)/40][(y120)/40]!=2)/*如果落子位置没有棋子*/{if(t%2==1)/*如果是棋手1移动*/a[(x120)/40][(y120)/40]=1;else/*否则棋手2移动*/a[(x120)/40][(y120)/40]=2;if(!QpChange(x,y,t))/*落子后判断棋盘的变化*/{a[(x120)/40][(y120)/40]=0;/*恢复空格状态*/cc++;/*开始统计尝试次数*/if(cc=64score1score2)/*如果尝试超过空格数则停步*/{MoveColor(x,y);fillellipse(x,y,15,15);break;}elsecontinue;/*如果按键无效*/}DoScore();/*分数的改变*/break;/*棋盘变化了,则轮对方走棋*/}else/*已经有棋子就继续按键*/continue;}else/*四个方向按键的判断*/if(key==LEFT&&x120)/*左方向键*/{MoveColor(x,y);fillellipse(x,y,15,15);SetPlayColor(t);x=40;fillellipse(x,y,15,15);}elseif(key==RIGHT&&x400&&y80)/*右方向键*/{MoveColor(x,y);fillellipse(x,y,15,15);SetPlayColor(t);x+=40;fillellipse(x,y,15,15);}elseif(key==UP&&y120)/*上方向键*/{MoveColor(x,y);fillellipse(x,y,15,15);SetPlayColor(t);y=40;fillellipse(x,y,15,15);}elseif(key==DOWN&&y400)/*下方向键*/{MoveColor(x,y);fillellipse(x,y,15,15);SetPlayColor(t);y+=40;fillellipse(x,y,15,15);}}if(key==ESC)/*结束游戏*/break;if((score1+score2)==64||score1==0||score2==0)/*格子已经占满或一方棋子为0判断胜负*/{playWin();/*输出最后结果*/break;}t=t%2+1;/*一方走后,改变棋子颜色即轮对方走*/cc=0;/*计数值恢复为0*/}/*endwhile*/}voidSetPlayColor(intt)/*设置棋子颜色*/{if(t%2==1)setfillstyle(SOLID_FILL,15);/*白色*/elsesetfillstyle(SOLID_FILL,8);/*灰色*/}voidMoveColor(intx,inty)/*走了一步后恢复原来格子的状态*/{if(y100)/*如果是从起点出发就恢复蓝色*/setfillstyle(SOLID_FILL,BLUE);else/*其他情况如果是1就恢复白色棋子,2恢复黑色棋子,或恢复蓝色棋盘*/switch(a[(x120)/40][(y120)/40]){case1:setfillstyle(SOLID_FILL,15);break;/*白色*/case2:setfillstyle(SOLID_FILL,8);break;/*黑色*/default:setfillstyle(SOLID_FILL,BLUE);/*蓝色*/}}intQpChange(intx,inty,intt)/*判断棋盘的变化*/{inti,j,k,kk,ii,jj,yes;yes=0;i=(x120)/40;/*计算数组元素的行下标*/j=(y120)/40;/*计算数组元素的列下标*/SetPlayColor(t);/*设置棋子变化的颜色*//*开始往8个方向判断变化*/if(j6)/*往右边*/{for(k=j+1;k8;k++)if(a[i][k]==a[i][j]||a[i][k]==0)/*遇到自己的棋子或空格结束*/break;if(a[i][k]!=0&&k8){for(kk=j+1;kkk&&k8;kk++)/*判断右边*/{a[i][kk]=a[i][j];/*改变棋子颜色*/fillellipse(120+i*40,120+kk*40,15,15);}if(kk!=j+1)/*条件成立则有棋子改变过颜色*/yes=1;}}if(j1)/*判断左边*/{for(k=j1;k=0;k)if(a[i][k]==a[i][j]||!a[i][k])break;if(a[i][k]!=0&&k=0){for(kk=j1;kkk&&k=0;kk){a[i][kk]=a[i][j];fillellipse(120+i*40,120+kk*40,15,15);}if(kk!=j1)yes=1;}}if(i6)/*判断下边*/{for(k=i+1;k8;k++)if(a[k][j]==a[i][j]||!a[k][j])break;if(a[k][j]!=0&&k8){for(kk=i+1;kkk&&k8;kk++){a[kk][j]=a[i][j];fillellipse(120+kk*40,120+j*40,15,15);}if(kk!=i+1)yes=1;}}if(i1)/*判断上边*/{for(k=i1;k=0;k)if(a[k][j]==a[i][j]||!a[k][j])break;if(a[k][j]!=0&&k=0){for(kk=i1;kkk&&k=0;kk){a[kk][j]=a[i][j];fillellipse(120+kk*40,120+j*40,15,15);}if(kk!=i1)yes=1;}}if(i1&&j6)/*右上*/{for(k=i1,kk=j+1;k=0&&kk8;k,kk++)if(a[k][kk]==a[i][j]||!a[k][kk])break;if(a[k][kk]&&k=0&&kk8){for(ii=i1,jj=j+1;iik&&k=0;ii,jj++){a[ii][jj]=a[i][j];fillellipse(120+ii*40,120+jj*40,15,15);}if(ii!=i1)yes=1;}}if(i6&&j1)/*左下*/{for(k=i+1,kk=j1;k8&&kk=0;k++,kk)if(a[k][kk]==a[i][j]||!a[k][kk])break;if(a[k][kk]!=0&&k8&&kk=0){for(ii=i+1,jj=j1;iik&&k8;ii++,jj){a[ii][jj]=a[i][j];fillellipse(120+ii*40,120+jj*40,15,15);}if(ii!=i+1)yes=1;}}if(i1&&j1)/*左上*/{for(k=i1,kk=j1;k=0&&kk=0;k,kk)if(a[k][kk]==a[i][j]||!a[k][kk])break;if(a[k][kk]!=0&&k=0&&kk=0){for(ii=i1,jj=j1;iik&&k=0;ii,jj){a[ii][jj]=a[i][j];fillellipse(120+ii*40,120+jj*40,15,15);}if(ii!=i1)yes=1;}}if(i6&&j6)/*右下*/{for(k=i+1,kk=j+1;kk8&&kk8;k++,kk++)if(a[k][kk]==a[i][j]||!a[k][kk])break;if(a[k][kk]!=0&&kk8&&k8){for(ii=i+1,jj=j+1;iik&&k8;ii++,jj++){a[ii][jj]=a[i][j];fillellipse(120+ii*40,120+jj*40,15,15);}if(ii!=i+1)yes=1;}}returnyes;/*返回是否改变过棋子颜色的标记*/}voidDoScore()/*处理分数*/{inti,j;score1=score2=0;/*重新开始计分数*/for(i=0;i8;i++)for(j=0;j8;j++)if(a[i][j]==1)/*分别统计两个人的分数*/score1++;elseif(a[i][j]==2)score2++;}voidPrintScore(intplaynum)/*输出成绩*/{if(playnum==1)/*清除以前的成绩*/{setfillstyle(SOLID_FILL,BLUE);bar(550,100,640,400);}setcolor(RED);settextstyle(0,0,4);/*设置文本输出样式*/if(playnum==1)/*判断输出哪个棋手的分,在不同的位置输出*/{sprintf(playone,%d,score1);outtextxy(550,200,playone);}else{sprintf(playtwo,%d,score2);outtextxy(550,300,playtwo);}setcolor(0);}voidplayWin()/*输出最后的胜利者结果*/{settextstyle(0,0,4);setcolor(12);if(score2score1)/*开始判断最后的结果*/outtextxy(100,50,blackwin!);elseif(score2score1)outtextxy(100,50,whitewin!);elseouttextxy(60,50,youallwin!);}五子棋游戏/*五子棋*/#includestdio.h#includestdlib.h#includegraphics.h#includebios.h#includeconio.h#defineLEFT0x4b00#defineRIGHT0x4d00#defineDOWN0x5000#defineUP0x4800#defineESC0x011b#defineSPACE0x3920#defineBILI20#defineJZ4#defineJS3#defineN19intbox[N][N];intstep_x,step_y;intkey;intflag=1;voiddraw_box();voiddraw_cicle(intx,inty,intcolor);voidchange();voidjudgewho(intx,inty);voidjudgekey();intjudgeresult(intx,inty);voidattentoin();voidattention(){charch;window(1,1,80,25);textbackground(LIGHTBLUE);textcolor(YELLOW);clrscr();gotoxy(15,2);printf(游戏操作规则:);gotoxy(15,4);printf(PlayRules:);gotoxy(15,6);printf(1、按左右上下方向键移动棋子);gotoxy(15,8);printf(1.PressLeft,Right,Up,DownKeytomovePiece);gotoxy(15,10);printf(2、按空格确定落棋子);gotoxy(15,12);printf(2.PressSpacetoplacethePiece);gotoxy(15,14);printf(3、禁止在棋盘外按空格);gotoxy(15,16);printf(3.DONOTpressSpaceoutsideofthechessboard);gotoxy(15,18);printf(你是否接受上述的游戏规则(Y/N));gotoxy(15,20);printf(DoyouaccepttheabovePlayingRules?[Y/N]:);while(1){gotoxy(60,20);ch=getche();if(ch==Y||ch==y)break;elseif(ch==N||ch==n){window(1,1,80,25);textbackground(BLACK);textcolor(LIGHTGRAY);clrscr();exit(0);}gotoxy(51,12);printf();}}voiddraw_box(){intx1,x2,y1,y2;setbkcolor(LIGHTBLUE);setcolor(YELLOW);gotoxy(7,2);printf(Left,Right,Up,DownKEYtomove,Spacetoput,ESCquit.);for(x1=1,y1=1,y2=18;x1=18;x1++)line((x1+JZ)*BILI,(y1+JS)*BILI,(x1+JZ)*BILI,(y2+JS)*BILI);for(x1=1,y1=1,x2=18;y1=18;y1++)line((x1+JZ)*BILI,(y1+JS)*BILI,(x2+JZ)*BILI,(y1+JS)*BILI);for(x1=1;x1=18;x1++)for(y1=1;y1=18;y1++)box[x1][y1]=0;}voiddraw_circle(intx,inty,intcolor){setcolor(color);setlinestyle(SOLID_LINE,0,1);x=(x+JZ)*BILI;y=(y+JS)*BILI;circle(x,y,8);}voidjudgekey(){inti;intj;switch(key){caseLEFT:if(step_x10)break;else{for(i=step_x1,j=step_y;i=1;i)if(box[i][j]==0){draw_circle(step_x,step_y,LIGHTBLUE);break;}if(i1)break;step_x=i;judgewho(step_x,step_y);break;}caseRIGHT:if(step_x+118)break;else{for(i=step_x+1,j=step_y;i=18;i++)if(box[i][j]==0){draw_circle(step_x,step_y,LIGHTBLUE);break;}if(i18)break;step_x=i;judgewho(step_x,step_y);break;}caseDOWN:if((step_y+1)18)break;else{for(i=step_x,j=step_y+1;j=18;j++)if(box[i][j]==0){draw_circle(step_x,step_y,LIGHTBLUE);break;}if(j18)break;step_y=j;judgewho(step_x,step_y);break;}caseUP:if((step_y1)0)break;else{for(i=step_x,j=step_y1;j=1;j)if(box[i][j]==0){draw_circle(step_x,step_y,LIGHTBLUE);break;}if(j1)break;step_y=j;judgewho(step_x,step_y);break;}caseESC:break;caseSPACE:if(step_x=1&&step_x=18&&step_y=1&&step_y=18){if(box[step_x][step_y]==0){box[step_x][step_y]=flag;if(judgeresult(step_x,step_y)==1){sound(1000);delay(1000);nosound();gotoxy(30,4);if(flag==1){setbkcolor(BLUE);cleardevice();setviewport(100,100,540,380,1);/*定义一个图形窗口*/setfillstyle(1,2);/*绿色以实填充*/setcolor(YELLOW);rectangle(0,0,439,279);floodfill(50,50,14);setcolor(12);settextstyle(1,0,5);/*三重笔划字体,水平放?5倍*/outtextxy(20,20,TheWhiteWin!);setcolor(15);settextstyle(3,0,5);/*无衬笔划字体,水平放大5倍*/outtextxy(120,120,TheWhiteWin!);setcolor(14);settextstyle(2,0,8);getch();closegraph();exit(0);}if(flag==2){setbkcolor(BLUE);cleardevice();setviewport(100,100,540,380,1);/*定义一个图形窗口*/setfillstyle(1,2);/*绿色以实填充*/setcolor(YELLOW);rectangle(0,0,439,279);floodfill(50,50,14);setcolor(12);settextstyle(1,0,8);/*三重笔划字体,水平放大8倍*/outtextxy(20,20,TheRedWin!);setcolor(15);settextstyle(3,0,5);/*无衬笔划字体,水平放大5倍*/outtextxy(120,120,TheRedWin!);setcolor(14);settextstyle(2,0,8);getch();closegraph();exit(0);}}change();break;}}elsebreak;}}voidchange(){if(flag==1)flag=2;elseflag=1;}voidjudgewho(intx,inty){if(flag==1)draw_circle(x,y,15);if(flag==2)draw_circle(x,y,4);}intjudgeresult(intx,inty){intj,k,n1,n2;while(1){n1=0;n2=0;/*水平向左数*/for(j=x,k=y;j=1;j){if(box[j][k]==flag)n1++;elsebreak;}/*水平向右数*/for(j=x,k=y;j=18;j++){if(box[j][k]==flag)n2++;elsebreak;}if(n1+n21=5){return(1);break;}/*垂直向上数*/n1=0;n2=0;for(j=x,k=y;k=1;k){if(box[j][k]==flag)n1++;elsebreak;}/*垂直向下数*/for(j=x,k=y;k=18;k++){if(box[j][k]==flag)n2++;elsebreak;}if(n1+n21=5){return(1);break;}/*向左上方数*/n1=0;n2=0;for(j=x,k=y;j=1,k=1;j,k){if(box[j][k]==flag)n1++;elsebreak;}/*向右下方数*/for(j=x,k=y;j=18,k=18;j++,k++){if(box[j][k]==flag)n2++;elsebreak;}if(n1+n21=5){return(1);break;}/*向右上方数*/n1=0;n2=0;for(j=x,k=y;j=18,k=1;j++,k){if(box[j][k]==flag)n1++;elsebreak;}/*向左下方数*/for(j=x,k=y;j=1,k=18;j,k++){if(box[j][k]==flag)n2++;elsebreak;}if(n1+n21=5){return(1);break;}return(0);break;}}voidmain(){intgdriver=VGA,gmode=VGAHI;clrscr();attention();initgraph(&gdriver,&gmode,c:\\tc);/*setwritemode(XOR_PUT);*/flag=1;draw_box();do{step_x=0;step_y=0;/*draw_circle(step_x,step_y,8);*/judgewho(step_x1,step_y1);do{while(bioskey(1)==0);key=bioskey(0);judgekey();}while(key!=SPACE&&key!=ESC);}while(key!=ESC);closegraph();}
嗯,那就给你一个我自己编写的科学计算器代码吧,不懂Q我:281754179#includestdio.h#includestring.h#includestdlib.h#includeconio.h#defineEsc27#defineTab9voidneedle(char*s,char*carriage,intstart)//needle意为“用针缝”{intsize_carriage=(int)strlen(carriage);inti,j;for(j=0;jsize_carriage;j++){ for(i=(int)strlen(s);i=start;i--)s[i+1]=s[i]; s[i+1]=carriage[j]; start=i+2;}}doublefactorial(doubled)//factorial意为“阶乘”{returnd==0?1:d*factorial(d-1);}voidhandle(char*carriage)//handle意为“处理”{voidfind_start(char*,int*);char*save1,*save2,ch;charop[111];doubled1,d2;intstart,i;find_start(carriage,&start);ch=carriage[start];d1=strtod(carriage,&save1);//strtod是库函数,功能是将字符串carriage中出现的第一个浮点数转化为double,并将剩余字符储存在save1中if(ch==!){ sprintf(op,%g,factorial(d1));//springf是库函数,功能是将显示在屏幕上的内容储存在op中 strcpy(carriage,op); return;}for(i=0;i(int)strlen(save1);i++)//对于第一个不是+或-或数字的字符串,strtod无法作用。所以得去掉诸如*22字符串中的* save1[i]=save1[i+1];d2=strtod(save1,&save2);switch(ch){ case*:sprintf(op,%.32g,d1*d2);break; case/:sprintf(op,%.32g,d1/d2);break; case+:sprintf(op,%.16g,d1+d2);break; case-:sprintf(op,%.16g,d1-d2);}strcpy(carriage,op);}voiddelete(char*s,intstart,intend)//delete意为“删除”{inti,j;intsize=(int)strlen(s);for(i=end;i=start;i--) for(j=i;jsize;j++)s[j]=s[j+1];}voidcopy(char*s,char*carriage,intstart,intend)//copy意为“复制”{inti;for(i=0;start=end;i++,start++) carriage[i]=s[start];carriage[i]=0;}voidscissor(char*s,char*carriage,int*start)//scissor意为“用剪刀剪”{intsta,end;for(sta=*start-1;(s[sta]=0&&s[sta]=9)||s[sta]==.;sta--);if(sta!=0||s[*start]==!)//处理式子是-2+3或-2!的特殊情况 sta++;if(s[*start]==!)//!是单目运算符 end=*start;else{ for(end=*start+1;(s[end]=0&&s[end]=9)||s[end]==.;end++); if((s[end-1]==*||s[end-1]==/)&&(s[end]==+||s[end]==-))//处理式子是2*-2等的特殊情况for(end++;(s[end]=0&&s[end]=9)||s[end]==.;end++); end--;}copy(s,carriage,sta,end);delete(s,sta,end);*start=sta;//记住等下针线函数needle要开始缝的地方}voidfind_start(char*s,int*start)//find_start意为“找到操作符号开始处”{inti;intsize=(int)strlen(s);//由优先级决定从上而下的顺序for(i=0;isize;i++) if(s[i]==!) {*start=i;return; }for(i=0;isize;i++) if(s[i]==*||s[i]==/) {*start=i;return; }if(s[0]==+||s[0]==-){ for(*start=1;(s[*start]=0&&s[*start]=9)||s[*start]==.;(*start)++); return;}for(i=0;isize;i++) if(s[i]==+||s[i]==-) {*start=i;return; }}intjudge(char*s)//judge意为“判断”{inti;intsize=(int)strlen(s);for(i=1;isize;i++) if(s[i]==+||s[i]==-||s[i]==*||s[i]==/||s[i]==!)return1;return0; }voidcount(char*s)//count意为“计算”{intstart,i;charcarriage[555];//carriage意为“运载体”while(judge(s))//判断式子是否还需要进行运算{ for(i=0;i(int)strlen(s);i++)//此循环作用是将式子中出现的--替换为+ {for(;s[i]!=-&&i(int)strlen(s);i++);if(s[i+1]==-){ delete(s,i,i+1); needle(s,+,i);} } find_start(s,&start);//让下标start指向式子应该最先开始处理的运算符 scissor(s,carriage,&start);//用剪刀scissor将start指向的运算符及相对应的操作数剪下并储存在运载体carriage上 handle(carriage);//处理该运载体,并将运载体上运载的式子的计算结果储存在运载体上 needle(s,carriage,start);//见函数simplify中的说明}}voidsimplify(char*s)//simplify意为“简化”{charcarriage[555];//carriage意为“运载体”intstart,end,i;intsize=(int)strlen(s);while(1){ for(i=0;s[i]!=(&&isize;i++); if(i==size)break;//说明式子已不含括号 for(end=0;s[end]!=);end++);//使end下标指向式子中第一个出现)的地方 end--; for(start=end;s[start]!=(;start--);//寻找与上面一个)配对的( start++; copy(s,carriage,start,end);//将括号里的内容复制给运载体carriage delete(s,start-1,end+1);//删除整个括号及其里面的内容 count(carriage);//计算运载体运载的表达式,运算结果储存在运载体上 needle(s,carriage,start-1);//将运载体运载过来的结果用针线needle缝在刚才删除式子s括号及其内容的地方}}intmain(){inti=0;chars[555],ch;puts(本程序不对用户输入数据进行检测:);puts(即用户应输入规范的计算式,包括分母不能为0:);puts(式子不能含有空格及其他非计算字符;);puts(按任意一个键开始,按回车键显示运算结果;);while(1){ i++; ch=getch(); if(Esc==ch)break; if(Tab==ch) {system(cls);//清除当前屏幕puts(显示运算结果后:按“Esc”键退出,按“Tab”键清除当前屏幕); } if(i==1) {system(cls);puts(显示运算结果后:按“Esc”键退出,按“Tab”键清除当前屏幕); } puts(~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~); gets(s); simplify(s); count(s); puts(s); //实验数据:23.243*(5!-23.123/.133+(2!-13/13.23)*(2!-.235)-((4!-20)!/2!)-32*(3!+2.23/(2*3)!)) //其正确结果是:-5953.9401265774754346182917611489}puts(谢谢使用!);getch();return0;}参考资料:http://hi.baidu.com/liangxiaowen1989/blog/item/af972310f7119670ca80c413.html已赞过已踩过评论收起オハヨ2010-10-02オハヨ采纳数:1获赞数:9LV2擅长:暂未定制向TA提问私信TA展开全部贪吃蛇游戏#defineN200#includegraphics.h#includestdlib.h#includedos.h#defineLEFT0x4b00#defineRIGHT0x4d00#defineDOWN0x5000#defineUP0x4800#defineESC0x011binti,key;intscore=0;/*得分*/intgamespeed=50000;/*游戏速度自己调整*/structFood{ intx;/*食物的横坐标*/ inty;/*食物的纵坐标*/ intyes;/*判断是否要出现食物的变量*/}food;/*食物的结构体*/structSnake{ intx[N]; inty[N]; intnode;/*蛇的节数*/ intdirection;/*蛇移动方向*/ intlife;/*蛇的生命,0活着,1死亡*/}snake;voidInit(void);/*图形驱动*/voidClose(void);/*图形结束*/voidDrawK(void);/*开始画面*/voidGameOver(void);/*结束游戏*/voidGamePlay(void);/*玩游戏具体过程*/voidPrScore(void);/*输出成绩*//*主函数*/voidmain(void){ Init();/*图形驱动*/ DrawK();/*开始画面*/ GamePlay();/*玩游戏具体过程*/ Close();/*图形结束*/}/*图形驱动*/voidInit(void){ intgd=DETECT,gm; initgraph(&gd,&gm,c:tc); cleardevice();}/*开始画面,左上角坐标为(50,40),右下角坐标为(610,460)的围墙*/voidDrawK(void){/*setbkcolor(LIGHTGREEN);*/ setcolor(11); setlinestyle(SOLID_LINE,0,THICK_WIDTH);/*设置线型*/ for(i=50;i=600;i+=10)/*画围墙*/ { rectangle(i,40,i+10,49);/*上边*/ rectangle(i,451,i+10,460);/*下边*/ } for(i=40;i=450;i+=10) { rectangle(50,i,59,i+10);/*左边*/ rectangle(601,i,610,i+10);/*右边*/ }}/*玩游戏具体过程*/voidGamePlay(void){ randomize();/*随机数发生器*/ food.yes=1;/*1表示需要出现新食物,0表示已经存在食物*/ snake.life=0;/*活着*/ snake.direction=1;/*方向往右*/ snake.x[0]=100;snake.y[0]=100;/*蛇头*/ snake.x[1]=110;snake.y[1]=100; snake.node=2;/*节数*/ PrScore();/*输出得分*/ while(1)/*可以重复玩游戏,压ESC键结束*/ { while(!kbhit())/*在没有按键的情况下,蛇自己移动身体*/ { if(food.yes==1)/*需要出现新食物*/ { food.x=rand()00+60; food.y=rand()%350+60; while(food.x%10!=0)/*食物随机出现后必须让食物能够在整格内,这样才可以让蛇吃到*/ food.x++; while(food.y%10!=0) food.y++; food.yes=0;/*画面上有食物了*/ } if(food.yes==0)/*画面上有食物了就要显示*/ {setcolor(GREEN);rectangle(food.x,food.y,food.x+10,food.y-10); } for(i=snake.node-1;i0;i--)/*蛇的每个环节往前移动,也就是贪吃蛇的关键算法*/ { snake.x[i]=snake.x[i-1]; snake.y[i]=snake.y[i-1]; }/*1,2,3,4表示右,左,上,下四个方向,通过这个判断来移动蛇头*/ switch(snake.direction) { case1:snake.x[0]+=10;break; case2:snake.x[0]-=10;break; case3:snake.y[0]-=10;break; case4:snake.y[0]+=10;break; } for(i=3;isnake.node;i++)/*从蛇的第四节开始判断是否撞到自己了,因为蛇头为两节,第三节不可能拐过来*/ { if(snake.x[i]==snake.x[0]&&snake.y[i]==snake.y[0]) {GameOver();/*显示失败*/snake.life=1;break; }}if(snake.x[0]55||snake.x[0]595||snake.y[0]55||snake.y[0]455)/*蛇是否撞到墙壁*/{ GameOver();/*本次游戏结束*/ snake.life=1;/*蛇死*/}if(snake.life==1)/*以上两种判断以后,如果蛇死就跳出内循环,重新开始*/break;if(snake.x[0]==food.x&&snake.y[0]==food.y)/*吃到食物以后*/{setcolor(0);/*把画面上的食物东西去掉*/rectangle(food.x,food.y,food.x+10,food.y-10);snake.x[snake.node]=-20;snake.y[snake.node]=-20; /*新的一节先放在看不见的位置,下次循环就取前一节的位置*/snake.node++;/*蛇的身体长一节*/food.yes=1;/*画面上需要出现新的食物*/score+=10;PrScore();/*输出新得分*/}setcolor(4);/*画出蛇*/for(i=0;isnake.node;i++)rectangle(snake.x[i],snake.y[i],snake.x[i]+10,snake.y[i]-10);delay(gamespeed);setcolor(0);/*用黑色去除蛇的的最后一节*/rectangle(snake.x[snake.node-1],snake.y[snake.node-1],snake.x[snake.node-1]+10,snake.y[snake.node-1]-10); } /*endwhile(!kbhit)*/if(snake.life==1)/*如果蛇死就跳出循环*/break;key=bioskey(0);/*接收按键*/if(key==ESC)/*按ESC键退出*/break;elseif(key==UP&&snake.direction!=4)/*判断是否往相反的方向移动*/ snake.direction=3;else if(key==RIGHT&&snake.direction!=2) snake.direction=1; else if(key==LEFT&&snake.direction!=1) snake.direction=2; else if(key==DOWN&&snake.direction!=3) snake.direction=4; }/*endwhile(1)*/}/*游戏结束*/voidGameOver(void){cleardevice(); PrScore(); setcolor(RED); settextstyle(0,0,4); outtextxy(200,200,GAMEOVER); getch();}/*输出成绩*/voidPrScore(void){ charstr[10]; setfillstyle(SOLID_FILL,YELLOW); bar(50,15,220,35); setcolor(6); settextstyle(0,0,2); sprintf(str,score:%d,score); outtextxy(55,20,str);}/*图形结束*/voidClose(void){getch();closegraph();} 更多有关「求C语言小程序源代码,300行左右」的疑问请扫码关注微信公开课+小程序!