当前位置:首页 » 编程语言 » 一百匹马驮一百担货c语言编程
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

一百匹马驮一百担货c语言编程

发布时间: 2022-04-30 23:15:29

c语言的程序编辑题:一百匹马,一百旦粮,大马驮三旦,中马驮两旦,两匹小马驮一旦,大 中 小马各几匹

//功能:一百匹马,一百旦粮,大马驮三旦,中马驮两旦,两匹小马驮一旦大
//中小马各几匹?
//编写日期08-06-22
//编写者:埃罚梗afg
#include<stdio.h>
#define N 100
void main(){
int i = 0;
int x, y, z;//大马,中马,小马
for(x=1;x<34;x++)
for(y=1;y<50;y++){
z = N - x - y;
if(3*x + 2*y + 0.5*z == N)
printf("方案:%d:\n大马:%d匹,中马:%d匹,小马:%d匹\n",i++,x,y,z);
}
}

方案:1:
大马:2匹,中马:30匹,小马:68匹
方案:2:
大马:5匹,中马:25匹,小马:70匹
方案:3:
大马:8匹,中马:20匹,小马:72匹
方案:4:
大马:11匹,中马:15匹,小马:74匹
方案:5:
大马:14匹,中马:10匹,小马:76匹
方案:6:
大马:17匹,中马:5匹,小马:78匹
Press any key to continue

② c语言for循环:100匹马挑100担货,大马一匹驮三担,中马一匹驮两担,小马两匹驮一担,求大中小马的数量

我只会初级的C++,仅供参考,单词拼错了别怪我
#include <iostream>
using namespace std;
int main(){
int big=0,mid=0,sml=0;
for(big=0;big<=33;big++)
{
float midmax=(100-3*big)*0.5;
for(mid=0;mid<=midmax;mid++)
{
sml=100-big-mid;
float sum=3*big+mid*2+0.5*sml;
if(sum==100)cout<<"big:"<<big<<"\tmeddium:"<<mid<<"\tsmall:"<<sml<<endl;
}
}
return 0;
}

输出结果

big:2 meddium:30 small:68
big:5 meddium:25 small:70
big:8 meddium:20 small:72
big:11 meddium:15 small:74
big:14 meddium:10 small:76
big:17 meddium:5 small:78
big:20 meddium:0 small:80

③ (C语言)有100匹马,要驮100担货物,其中,1匹大马驮3担,1匹中马驮2担,1匹小马驮1担(注意是一匹)!

你看第8行要x+y+z==100,只有一种可能,就是全部是小马,因为只要有一匹大马或者中马的话,就不需要100匹马了,应该将x+y+z==100改成(x+y+z)<=100,还有printf那一行应该改为{
{
printf("%d,%d,%d\n",x,y,z);

}
顺便我想问你一下,你的main函数内型都没有定下来你的程序怎么运行的?至少要个int main()
才能return 0;吧???

④ C语言编程问题100匹马

#include<stdio.h>
void main()
{
int i=1,j=1,k=99;
while(i<33)
{i++;
while(j<50)
{j++;
while(k>1)
{k--;
if(i*3+j*2+k==100)
{printf("i=%d,j=%d,k=%d\n",i,j,k);
break;}

}
}
}
}
我运行了,不懂追问,望采纳

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

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

⑥ 100匹马驼100担货,大马可以驮3担,中马可以驮2担,2匹小马共驮1担,问有多少种驮法C语言

#include<stdio.h>
voidmain(){
inta,b,c,n=0;
for(a=0;a<=32;a++)
for(b=0;b<=50;b++)
for(c=0;c<=100;c+=2)
if(a+b+c==100&&a*3+b*2+c/2==100)
{
printf("大马:%d,中马:%d,小马:%d ",a,b,c);
n++;
}
printf("共有%d种驮法",n);
}

⑦ 用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;
}

⑧ 改正一下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);
}

⑨ 问一个C语言编程问题。

给,已经编译运行确认:
1. 当大马,中马,小马每种不能少于1匹,有多少种组合法。
#include<stdio.h>
#include<conio.h>

int main()
{
int i,j,k;
int count=0;

i=1;
j=1;
k=2;

while(i<100)
{
while(j<100)
{
while(k<100)
{
if((i+j+k==100)&&(3*i+2*j+k/2==100))
{
printf("大马:%d 中马:%d 小马:%d\n",i,j,k);
count++;
}
k=k+2;
}
k=2;
j++;
}
j=1;
i++;
}

printf("一共%d种组合法\n",count);
getch();
return 1;
}

运行结果为:
大马:2 中马:30 小马:68
大马:5 中马:25 小马:70
大马:8 中马:20 小马:72
大马:11 中马:15 小马:74
大马:14 中马:10 小马:76
大马:17 中马:5 小马:78
一共6种组合法

2. 当可以缺少一种或两种,又有多少种组合法。
#include<stdio.h>
#include<conio.h>

int main()
{
int i,j,k;
int count=0;

i=0;
j=0;
k=0;

while(i<100)
{
while(j<100)
{
while(k<100)
{
if((i+j+k==100)&&(3*i+2*j+k/2==100))
{
printf("大马:%d 中马:%d 小马:%d\n",i,j,k);
count++;
}
k=k+2;
}
k=0;
j++;
}
j=0;
i++;
}

printf("一共%d种组合法\n",count);
getch();
return 1;
}

运行结果为:
大马:2 中马:30 小马:68
大马:5 中马:25 小马:70
大马:8 中马:20 小马:72
大马:11 中马:15 小马:74
大马:14 中马:10 小马:76
大马:17 中马:5 小马:78
大马:20 中马:0 小马:80
一共7种组合法

=====================================
如果不用while do...while语句该怎么写这程序?
=====================================
大哥,你早说啊,不用while更简单:
1. 当大马,中马,小马每种不能少于1匹,有多少种组合法。
#include<stdio.h>
#include<conio.h>

int main()
{
int i,j,k,count=0;

for(i=1;i<100;i++)//大马
for(j=1;j<100;j++)//中马
for(k=2;k<100;k=k+2)//小马 步长为2,因为小马不能为奇数,否则将有一个小马驮半担货

if((i+j+k==100)&&(3*i+2*j+k/2==100))
{
printf("大马:%d 中马:%d 小马:%d\n",i,j,k);
count++;
}

printf("一共%d种组合法\n",count);
getch();
return 1;
}

2. 当可以缺少一种或两种,又有多少种组合法。
#include<stdio.h>
#include<conio.h>

int main()
{
int i,j,k,count=0;

for(i=0;i<100;i++)//大马
for(j=0;j<100;j++)//中马
for(k=0;k<100;k=k+2)//小马 步长为2,因为小马不能为奇数,否则将有一个小马驮半担货

if((i+j+k==100)&&(3*i+2*j+k/2==100))
{
printf("大马:%d 中马:%d 小马:%d\n",i,j,k);
count++;
}

printf("一共%d种组合法\n",count);
getch();
return 1;
}

⑩ C语言编程:100匹马驼100担货,大马一匹驼3担,中马一匹驼2担,小马两匹驼一担。

大马最多33匹,中马最多50匹,小马最多100匹。
#include<stdio.h>
void main(void){
int a=0; //大马
int b=0; //中马
int c=0; //小马驮货数
int d; //小马
int n=0; //个数
do{
c=c+1;
if(3*a+2*b+c==100&&a+b+2*c==100){
d=2*c;
printf("大马、中马、小马分别为:%d,%d,%d\n",a,b,d);
n=n+1;
}
if(c==100){
c=0;
b=b+1;
}
if(b==50){
b=0;
a=a+1;
}
}while(a<=33);
printf("共有%d种方法。\n",n);
}
输出屏幕是放不下结果的,建议你改成向文件输出。