當前位置:首頁 » 編程語言 » 一百匹馬馱一百擔貨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);
}
輸出屏幕是放不下結果的,建議你改成向文件輸出。