当前位置:首页 » 编程语言 » c语言赛马游戏视频
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言赛马游戏视频

发布时间: 2022-08-12 04:21:49

c语言 渊子赛马 非常规解法出现不理解的问题

我调试了一下,需要把两层for循环里面if语句里面的执行体
i++;j++;
continue;
把这两句改成一句:
break;
因为比如a[3]>b[6],那么接下来我们只需要从i=4开始判断就行了,跳出当前j循环,就是从i=3进入到i=4。
而如果像原来那样都加1,则当(j+1)+1>=n时很有可能跳到(i+1)+1=5上去。并且就算跳到i=4上,那么j也不是从0开始了,而是从半路的6+1+1=8开始了。

我的程序,题目给的五个样例都通过了:
#include <stdio.h>
#include <stdlib.h>
#define maxn 1000
int main()
{
int n, num;
int i, j, t;
int mine[maxn], his[maxn];
do {
num=0;
scanf("%d",&n);
if (n>=1 && n<=1000) {
for (i=0; i<n; i++) scanf("%d", &mine[i]);
for (i=0; i<n; i++) scanf("%d", &his[i]);
//Sort mine[]={5,4,6,1,9} to {1,4,5,6,9}.
for (i=0; i<n-1; i++)
for (j=i+1; j<n; j++)
if (mine[i]>mine[j]) {
t=mine[i];
mine[i]=mine[j];
mine[j]=t;
}
for (i=0; i<n; i++)
for (j=0; j<n; j++)
if (mine[i]>his[j] && mine[i]!=0 && his[j]!=0) {
num++;
printf("%d %d---%d.......",mine[i],his[j],num);
mine[i]=his[j]=0;
break;
}
printf("%d and %d \n", num, n/2+1);
if (num>=n/2+1)
printf("YES\n");
else
printf("NO\n");
}
} while(n!=0);
system("pause");
return 0;
}

㈡ 关于c语言的田忌赛马问题。

应该是贪心的思路有点问题:
解题思路:
贪心算法。
如果当前最好的马可以胜齐王最好的马,那么让这两匹马比一场。
如果当前最差的马能胜齐王最差的马,那么让这两匹马比一场。
如果上面两个条件都不满足,那么让当前最差的马和齐王最好的马比一场。

㈢ 用c语言写出田忌赛马的流程图和程序

根据流程图,我写了一个完整的程序给你参考。
源代码如下(vc++6.0下编译通过):

#include <stdio.h>

int main(void)
{
int x=0,max=0,min=0,i=0,s=0;

printf("please input a number(x): \n");
scanf("%d", &x);

max = x;
min = x;

㈣ c语言田忌赛马问题

把双方的马从大到小排序 然后从前往后比较 老田赢了呢 就继续往下比 老田比不过呢 就拉老田最慢的马跟这个比 这里好理解

还有比平的情况 比平了还是从后面找一匹马

找的时候 要是老田后面的马可以赢对应位置的马 就接着往前比 然后找到的那匹就跟前面这匹马比

核心代码:
for(i=0;i<n;i++)
{
if(t[head]>k[i])
{
head++;
ans+=200;
}
else if(t[head]<k[i])
{
tailt--;
ans-=200;
}
else if(t[head]==k[i])
{
for(j=tailt,m=tailk;j>=head;j--,m--)
{
if(t[j]>k[m])
{
ans+=200;
tailt--;
tailk--;
}
else
{
if(t[j]<k[i]) ans-=200;
tailt=--j;
tailk=m;
break;
}
}
}

if(head>tailt) break;
}

㈤ c语言解决田忌赛马问题。我的代码总过不了,求debug。。

我的代码;
#include<stdio.h>
int main()
{
int n,s,i,j,sub=0,sum=0;
int tfast,tslow,wfast,wslow; //分别代表田的最快马,最慢马,王的最快马,最慢马
int t[1000],w[1000];
while(scanf("%d",&n)&&(n!=0))
{
for(i=0;i<n;i++)
scanf("%d",&t[i]);
for(i=0;i<n;i++)
scanf("%d",&w[i]);
for(i=0;i<n-1;i++)
for(j=0;j<n-1-i;j++)
if(t[j]<t[j+1])
{s=t[j];t[j]=t[j+1];t[j+1]=s;}
for(i=0;i<n-1;i++)
for(j=0;j<n-1-i;j++)
if(w[j]<w[j+1])
{s=w[j];w[j]=w[j+1];w[j+1]=s;} //由大到小排序

tfast=0;tslow=n-1;
wfast=0;wslow=n-1; //最快最慢马的初始化

for(i=0;i<n;i++) //分三种情况
{
if(t[tfast]==w[wfast]) //情况1
{
if(t[tslow]>w[wslow]){sub++;tslow--;wslow--;}
else if(t[tslow]<w[wslow]){sub--;tslow--;wfast++;}
else if(t[tslow]==w[wslow])
{
if(t[tslow]<w[wfast]){sub--;tslow--;wfast++;}
else if(t[tslow]==w[wfast]){break;}
}
}
else if(t[tfast]>w[wfast]) //情况2
{sub++;tfast++;wfast++;}
else {sub--;tslow--;wfast++;} //情况3
}
sum=sub*200;
printf("%d\n",sum);
sub=0;sum=0;
}
}

㈥ 在vc6.0用C语言编写游戏 由简单到复杂 有没有与这方面有关的视频

http://www.pconline.com.cn/pce/empolder/gj/vc/0607/820674.html

可以看看

㈦ 渊子赛马C语言

#include<stdio.h>
#include<algorithm>
using namespace std;
int main()
{
int num,i,j,a[1000],b[1000];
while(scanf("%d",&num)!=EOF && num!=0)
{
int count=0,t=1;
for(i=0;i<num;i++)
scanf("%d",&a[i]);//输入老王的马的速度
for(i=0;i<num;i++)
scanf("%d",&b[i]);//对方马的速度
sort(a,a+num); //从小到大排序
sort(b,b+num);
i=0; //比较计数
for(j=0;j<num;j=j+t)
{
if(a[i]>b[j])
{
count++;
i++;
t=1;
continue;
}
else
{
i++;
t=0;
}
if(i>=num)
break;
}
//printf("%d\n",count);
if(count>num/2)
printf("YES\n");
else printf("NO\n");
}
return 0;
}

㈧ C语言制作游戏、视频软件教程有吗

你可以先去【绘学霸】网站找“游戏设计/游戏制作”板块的【免费】视频教程-【点击进入】完整入门到精通视频教程列表: www.huixueba.net/web/AppWebClient/AllCourseAndResourcePage?type=1&tagid=307&zdhhr-11y04r-1518389039042221740

想要系统的学习可以考虑报一个网络直播课,推荐CGWANG的网络课。老师讲得细,上完还可以回看,还有同类型录播课可以免费学(赠送终身VIP)。

自制能力相对较弱的话,建议还是去好点的培训机构,实力和规模在国内排名前几的大机构,推荐行业龙头:王氏教育。
王氏教育全国直营校区面授课程试听【复制后面链接在浏览器也可打开】: www.huixueba.com.cn/school/3dmodel?type=2&zdhhr-11y04r-1518389039042221740

在“游戏设计/游戏制作”领域的培训机构里,【王氏教育】是国内的老大,且没有加盟分校,都是总部直营的连锁校区。跟很多其它同类型大机构不一样的是:王氏教育每个校区都是实体面授,老师是手把手教,而且有专门的班主任从早盯到晚,爆肝式的学习模式,提升会很快,特别适合基础差的学生。

大家可以先把【绘学霸】APP下载到自己手机,方便碎片时间学习——绘学霸APP下载: www.huixueba.com.cn/Scripts/download.html