A. 用c语言编程,求百马百担问题!

#include <stdio.h>
int main(void){
int i,j,k;
for(i=100/3;i>0;i--)
for(j=100/2;j>0;j--)
for(k=100;k>0;k-=2){
if(((i+j+k)==100)&&((3*i+2*j+k/2 )== 100))
printf("%d ,%d ,%d\n", i,j,k);
}
return 0;
}

B. c语言高手,请问百马百担问题怎样解

呵呵 尝试法
也就是在一定范围满足条件的枚举法
很简单的
只提示到这了

C. c语言 百马百担问题 大神指教

if ((k%2==0)&&(3m+2n+0.5k=100))里面=100是不是该是==?

printf("大马%3d匹;中马%3d匹;小马%3d匹\n"m.n.k);里面\n"m.n.k是不是该是逗号?

D. c语言程序来编写关于百马百担问题,最好简单点

这里的flag不是函数啦,是一个变量。。 如果你是在自学或者暑假复习的话,建议你还是把前面的给弄清楚来吧解释也没用的, 如果是临时做作业或者干什么的,追问我 本文转载自 http://www.ncecit.com

E. 百马百担问题用C语言怎么编啊各位高手 请求帮助啊 谢谢了

先记下来,白天我帮你想想这个问题吧!貌似以前做过这个的。。。。

F. C语言 百马百担的问题!

楼上的代码错误
大马的个数应该不超过100/3=33.333.....个,取整应该为34个
中马的个数不超过100/2=50
小马的个数不超过100/0.5=200,但是马的总数为100个,所以小马的个数不超过100个
所以可能结果是相同的,但是代码的逻辑有错误。
正确的代码应该为
#include <stdio.h>
int main(void){
int i,j,k;
for(i=100/3 + 1;i>0;i--)
for(j=100/2;j>0;j--)
for(k=100;k>0;k-=2){
if(((i+j+k)==100)&&((3*i+2*j+k/2 )== 100))
printf("%d ,%d ,%d\n", i,j,k);
}
return 0;
}

G. 我在用c语言编百马百担的问题时 不知道错哪里了。这是我编的 速求!!!

if(100==l*3+m*2+s*0.5)
后面多了个;号吧

H. c语言填空 百马百担问题

求的是马的个数,所以没有歧义
#include <stdio.h>
int main(void){
int i,j,k;
for(i=100/3;i>0;i--)
for(j=100/2;j>0;j--)
for(k=100;k>0;k-=2){
if(((i+j+k)==100)&&((3*i+2*j+k/2 )== 100))
printf("%d ,%d ,%d\n", i,j,k);
}
return 0;
}
楼上的说我刚才逻辑错误,其实不然,因为34*3>100所以如果取上值的话,是超过100的,所以直接取下值。
你说逻辑,那我们从逻辑上来论证:
设r = [a/b]+1, 其中a为担总数, b为每马担数
则当[a/b] = a/b时, 有 r = a/b + 1, r> a/b
当[a/b] < a/b 时, 因为 0 < a/b - [a/b] < 1, 有 a/b < [a/b] + 1 = r, 即 r > a/b
综上: r > a/b
又:a/b * b = a, 则 必有 r * b > a
根据提设条件对于任意的大马个数x, 有 x*b <= a
因此 r不属于x存在的集合,不在取值范围之列。
仔细思考再下结论

I. 改正一下C语言百马百担问题

#include <stdio.h>
main()
{
int m,n,k;
int sum=0;
printf("各种驮法如下:\n");
for(m=1;m<=100;m++)
for(n=1;n<=100-m;n++)
{
k=100-m-n;
if((3*m+2*n+0.5*k)==100)
{ printf("大马%3d匹; 中马%3d匹; 小马%3d匹.\n",m,n,k);
sum++;
}
}
printf("共有 %d 种驮法.\n",sum);
}

J. 用C语言怎么翻译百马百担的问题

#include <stdio.h>
int main(void){
int i,j,k;
for(i=100/3 + 1;i>0;i--)
for(j=100/2;j>0;j--)
for(k=100;k>0;k-=2){
if(((i+j+k)==100)&&((3*i+2*j+k/2 )== 100))
printf("%d ,%d ,%d\n", i,j,k);
}
return 0;
}