當前位置:首頁 » 編程語言 » 一堆果子c語言
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

一堆果子c語言

發布時間: 2022-03-31 03:46:09

① 用C語言編程求出猴子頭天摘了多少果子

#include <stdio.h>
void main ()
{
int i=1,j;
for(j=0;j<10;j++)
{
i=(i+1)*2;
}
printf("猴子摘的果子數為:%d\n",i);
}
多讀書,多做題自然就會了。

② C語言的題目

描述的不是很清楚,第4個果子掉到第3個果子位置上,那第五個掉第四個的位置上?

③ 初中C語言經典例題

1、求1+2+3+4+5+......+n
2、求1*2*3*4*5*......*n
3、求菲波拉契數列第n項(菲波拉契數列滿足:A1 = 1;A2 = 1;An = An-1 + An-2(n>=3);
4、判斷一個數能否分成兩個合數的積
5、求兩個數的最大公約數;
6、這是高中信息學奧林匹克競賽2004年的復賽第一題,不過蠻簡單的,推介做一下:
津津的儲蓄計劃
(save.c)

【問題描述】

津津的零花錢一直都是自己管理。每個月的月初媽媽給津津300元錢,津津會預算這個月的花銷,並且總能做到實際花銷和預算的相同。
為了讓津津學習如何儲蓄,媽媽提出,津津可以隨時把整百的錢存在她那裡,到了年末她會加上20%還給津津。因此津津制定了一個儲蓄計劃:每個月的月初,在得到媽媽給的零花錢後,如果她預計到這個月的月末手中還會有多於100元或恰好100元,她就會把整百的錢存在媽媽那裡,剩餘的錢留在自己手中。
例如11月初津津手中還有83元,媽媽給了津津300元。津津預計11月的花銷是180元,那麼她就會在媽媽那裡存200元,自己留下183元。到了11月月末,津津手中會剩下3元錢。
津津發現這個儲蓄計劃的主要風險是,存在媽媽那裡的錢在年末之前不能取出。有可能在某個月的月初,津津手中的錢加上這個月媽媽給的錢,不夠這個月的原定預算。如果出現這種情況,津津將不得不在這個月省吃儉用,壓縮預算。
現在請你根據2004年1月到12月每個月津津的預算,判斷會不會出現這種情況。如果不會,計算到2004年年末,媽媽將津津平常存的錢加上20%還給津津之後,津津手中會有多少錢。

【輸入文件】

輸入文件save.in包括12行數據,每行包含一個小於350的非負整數,分別表示1月到12月津津的預算。

【輸出文件】

輸出文件save.out包括一行,這一行只包含一個整數。如果儲蓄計劃實施過程中出現某個月錢不夠用的情況,輸出-X,X表示出現這種情況的第一個月;否則輸出到2004年年末津津手中會有多少錢。

【樣例輸入1】

290
230
280
200
300
170
340
50
90
80
200
60

【樣例輸出1】

-7

【樣例輸入2】

290
230
280
200
300
170
330
50
90
80
200
60

【樣例輸出2】

1580

數列基本:
1、找最大數:
找一組數中的最大數;
2、排序:
將N個數從小到大排列;
3、搜索:
在一個數列中找到一個數,並將其刪除。

字元串處理相關:
1、解一元一次方程(該方程被直接作為字元串讀入):
-x+3x-18-9x+37-9x-1=2x+3-x
綜合:
這里也同樣給出一道題,盡可能優化程序效率:

合並果子

(fruit.c)

【問題描述】

在一個果園里,多多已經將所有的果子打了下來,而且按果子的不同種類分成了不同的堆。多多決定把所有的果子合成一堆。

每一次合並,多多可以把兩堆果子合並到一起,消耗的體力等於兩堆果子的重量之和。可以看出,所有的果子經過n-1次合並之後,就只剩下一堆了。多多在合並果子時總共消耗的體力等於每次合並所耗體力之和。

因為還要花大力氣把這些果子搬回家,所以多多在合並果子時要盡可能地節省體力。假定每個果子重量都為1,並且已知果子的種類數和每種果子的數目,你的任務是設計出合並的次序方案,使多多耗費的體力最少,並輸出這個最小的體力耗費值。

例如有3種果子,數目依次為1,2,9。可以先將1、2堆合並,新堆數目為3,耗費體力為3。接著,將新堆與原先的第三堆合並,又得到新的堆,數目為12,耗費體力為12。所以多多總共耗費體力=3+12=15。可以證明15為最小的體力耗費值。

【輸入文件】

輸入文件fruit.in包括兩行,第一行是一個整數n(1<=n<=10000),表示果子的種類數。第二行包含n個整數,用空格分隔,第i個整數ai(1<=ai<=20000)是第i種果子的數目。

【輸出文件】

輸出文件fruit.out包括一行,這一行只包含一個整數,也就是最小的體力耗費值。輸入數據保證這個值小於231。

【樣例輸入】

3
1 2 9

【樣例輸出】

15

【數據規模】

對於30%的數據,保證有n<=1000:
對於50%的數據,保證有n<=5000;
對於全部的數據,保證有n<=10000。

④ C語言 合並果子(類哈夫曼樹)問題

這段代碼恐怕達不到目的。有如下問題,看注釋:
for(j=num;j>=0;j--){ //要改成j>0,因為j從num開始,到1就夠數兒了
bubble_sort(a,n);
b[j-1]=a[j-1]+=a[j];//要改成b[j-1]=a[j-2]+=a[j-1],因為j=num開始
n=n-1;
}
for(j=num;j>=0;j--){//改成j=num-1;j>0;j--。num就越界了,而b[0]還沒有賦值,是隨機的
total+=b[j];
}
//final=total-temp; 這句沒有必要了
printf("%d",final);//改成printf("%d",total);
}
另:函數bubble_sort改成void型吧,無需返回值,實現中也沒有……
以上意見僅供參考……

⑤ 合並果子 C語言編程

先排序,然後從小到大合並,可以用貪心證明這是最優解

⑥ 一堆果子,三個一分多2個,5個一分多1個,7個一分多3個,問這堆果子至少有多少個

由題意得3x+2=5y+1=7Z+3
解得x=13,y=6,Z=4,所以至少有3×13+2=31個。

⑦ 果實累累a b c c是怎麼寫

碩果累累。

⑧ C語言 合並果子問題

其他都寫得不錯但是演算法出了點問題

正確的順序應該是:排序-最小的兩項相加-排序-最小的兩項相加-排序-最小的兩項相加-排序-最小的兩項相加..........

而不是:排序-最小的兩項相加-依次往後相加-........

給你一段我寫的
#include<stdio.h>
#defineN100
intcount[N];
intmain()
{
intkind,i;
doublesum=0;
voidcompare(intm);
scanf("%d",&kind);
for(i=0;i<kind;i++)
scanf("%d",&count[i]);
for(i=0;i<kind-1;i++)
{
compare(kind);
sum+=count[0]+count[1];
count[0]=sum;
count[1]=count[kind-1]+1;

}
printf("%lf",sum);
return0;
}
voidcompare(intm)
{
inti,j;
for(i=0;i<m-1;i++)
for(j=i;j<m-i-1;j++)
if(count[j]>count[j+1])
{
count[j]=count[j]+count[j+1];
count[j+1]=count[j]-count[j+1];
count[j]=count[j]-count[j+1];
}
}

⑨ C程序編寫求助

#include <iostream>

using namespace std;

void main()
{
int fruit=0;
for (int i=0;i<4;i++)
{
fruit=(fruit+1)*2;
}
cout<<"一共有"<<fruit<<"個水果"<<endl;
}

一共有30個水果