欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

c語言函數(shù)摘蘋果,蘋果 c語言

小學(xué)編程題目c語言摘紅蘋果?

程序設(shè)計(jì)思路:

創(chuàng)新互聯(lián)公司服務(wù)項(xiàng)目包括鑲黃網(wǎng)站建設(shè)、鑲黃網(wǎng)站制作、鑲黃網(wǎng)頁制作以及鑲黃網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,鑲黃網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到鑲黃省份的部分城市,未來相信會繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!

一、小朋友和蘋果都具有多樣屬性(比如高度、編號、狀態(tài)等,還可以擴(kuò)展出姓名,重量等)。所以小朋友和蘋果要定義成結(jié)構(gòu)體。

二、人和蘋果數(shù)量都是手動(dòng)輸入,因此數(shù)組大小不確定,要使用動(dòng)態(tài)數(shù)組(不使用動(dòng)態(tài),就得得限制用戶輸入的大?。?/p>

三、題目要求確保摘到的總數(shù)最多,從最矮的小朋友開始摘,因此小朋友的數(shù)組要進(jìn)行排序。

四、遞歸函數(shù)實(shí)現(xiàn)摘蘋果邏輯,每人在自己夠到的范圍中隨機(jī)摘兩個(gè)(不夠就拿1個(gè))。(遞歸函數(shù)每次發(fā)現(xiàn)一個(gè)可摘取的蘋果,有50%概率看中,都沒看中,默認(rèn)摘取最后一個(gè)看中的蘋果)。

下面是代碼(控制臺刷新函數(shù)中cls僅限window系統(tǒng)運(yùn)行,其它操作系統(tǒng),刪除或修改):

#includestdio.h

#includestdlib.h

#includetime.h

#includemalloc.h

#define AFR 7//蘋果圖像的行數(shù)

#define AFC 6//蘋果圖像的行數(shù)

#define CFR 5//小朋友圖像的行數(shù)

#define CFC 6//小朋友圖像的行數(shù)

typedef struct apple//表示蘋果數(shù)據(jù)的結(jié)構(gòu)體

{

int aid;//蘋果編號

int height;//蘋果的高度

int status;//0:表示未被摘取。1:表示已被摘取

char aframe[AFR][AFC];//表示蘋果的圖像

}APPE;

typedef struct childern//表示小孩子的編號

{

int cid;//小孩子的編號

int height;//小孩子的身高

int n;//小孩摘取的蘋果數(shù)量

char cframe[CFR][CFC];//表示小朋友的圖像

APPE **appes;//小孩摘取的蘋果結(jié)構(gòu)指針數(shù)組

}CHN;

int n,m;//蘋果和小朋友的個(gè)數(shù),設(shè)為全局變量

APPE *setApps();//設(shè)置蘋果。成功返回結(jié)構(gòu)數(shù)組,失敗返回NULL

CHN *setChns();//設(shè)置小盆友。同上。

int orderChnByHeight(CHN *chns);//對小朋友數(shù)組按照身高升序排列

int getApple(APPE *appes,CHN *chns,char (*strInfo)[100]);//遞歸,模擬小朋友依次選蘋果。異常返回-1

int showFrame(APPE *appes,CHN *chns,char (*strInfo)[100]);

int main()

{

int i;

char (*strInfo)[100]=NULL;//用于顯示操作流水

APPE *appes=NULL;

CHN *chns=NULL;

appes=setApps();

chns=setChns();

if(orderChnByHeight(chns)==-1)return 1;

srand(time(NULL));

strInfo=(char (*)[100])malloc(sizeof(char *)*m*100);

for(i=0;im;i++)strInfo[i][0]=0;

if(!strInfo) return 1;

showFrame(appes,chns,strInfo);

return 0;

}

int showFrame(APPE *appes,CHN *chns,char (*strInfo)[100])

{

static int k=1;

int i,j;

system("cls");

printf("\n=============每組圖像靠上的數(shù)值為高度,靠下的數(shù)值為編號============\n");

printf("\n=============為確保能拿到最多的蘋果,小朋友們按升序排列============\n");

for(i=0;iAFR;printf("\n"),i++)

? for(j=0;jn;j++)

? ? ? printf("%s ?",appes[j].aframe[i]);

printf("\n");

for(i=0;iCFR;printf("\n"),i++)

? for(j=0;jm;j++)

? ? ? printf("%s ?",chns[j].cframe[i]);

printf("\n====================================================================\n");

printf("操作流水:\n");

for(i=0;im;i++)

? printf("%s\n",strInfo[i]);

fflush(stdin);

printf("按下任意鍵進(jìn)行下一步。。。。。。\n");

getchar();

if(getApple(appes,chns,strInfo)==-1)return -1;

if(k)showFrame(appes,chns,strInfo),k--;

return 1;

}

int getApple(APPE *appes,CHN *chns,char (*strInfo)[100])

{

static int i=0,aflag,cflag;

int j,indexSave;

if(appes==NULL||chns==NULL) return -1;

if(chns[i].n==2)i++;//當(dāng)前小朋友拿夠2個(gè),換下一個(gè)小朋友

if(i==m)return 1;//所有人均拿過,結(jié)束遞歸

aflag=0;

for(j=0;jn;j++)

? if(appes[j].status==0) {aflag=1;break;}

if(aflag==0) return 1;//所有蘋果均拿完,結(jié)束遞歸

indexSave=-1;

cflag=0;

for(j=0;jn;j++)

{

? if(appes[j].status==0 appes[j].height=chns[i].height)

? {

? ? ? cflag=1;

? ? ? indexSave=j;

? ? ? if(rand()%2)//每次發(fā)現(xiàn),有50%概率拿取,如所有可拿蘋果都沒選中,選最后發(fā)現(xiàn)的目標(biāo)

? ? ? ? ? break;

? }

}

if(cflag)//小朋友拿起一個(gè)蘋果的過程

{

? appes[indexSave].status=1;

? //改變蘋果初始圖像

? sprintf(appes[indexSave].aframe[6]," ? ? ");

? chns[i].appes[chns[i].n]=appes[indexSave];

? chns[i].n++;

? if(chns[i].n==1)

? {

? ? ? //改變小朋友初始圖像

? ? ? sprintf(chns[i].cframe[0]," %c%c/ ",3,1);

? ? ? sprintf(strInfo[i],"編號%d的小朋友拿取了1個(gè)蘋果(編號%d)\n",chns[i].cid,chns[i].appes[0]-aid);

? }

? if(chns[i].n==2)

? {

? ? ? //改變小朋友初始圖像

? ? ? sprintf(chns[i].cframe[0]," %c%c%c ",3,1,3);

? ? ? sprintf(strInfo[i],"編號%d的小朋友拿取了2個(gè)蘋果(編號%d和編號%d)\n",chns[i].cid,chns[i].appes[0]-aid,chns[i].appes[1]-aid);

? }

}

if(cflag==0 chns[i].n==0) sprintf(strInfo[i],"編號%d的小朋友沒有能拿到的蘋果,非常沮喪!\n",chns[i].cid),i++;

if(cflag==0 chns[i].n==1) i++;

return getApple(appes,chns,strInfo);

}

int orderChnByHeight(CHN *chns)

{

CHN chnTemp;

int i,j;

chnTemp.appes=(APPE **)malloc(sizeof(APPE*)*2);

if(!chnTemp.appes) return -1;

else

{

? chnTemp.appes[0]=chnTemp.appes[1]=NULL;

? if(chns)

? ? ? for(i=0;im-1;i++)

? ? ? ? ? for(j=i+1;jm;j++)

? ? ? ? ? ? ? if(chns[i].heightchns[j].height)

? ? ? ? ? ? ? ? ? chnTemp=chns[i],chns[i]=chns[j],chns[j]=chnTemp;

}

free(chnTemp.appes);

return 1;

}

CHN *setChns()

{

int i;

CHN *chns=NULL;

printf("請輸入小朋友的個(gè)數(shù):");

scanf("%d",m);

chns=(CHN *)malloc(sizeof(CHN)*m);

if(!chns) return NULL;

printf("請輸入%d個(gè)小朋友身高(不超過3位整數(shù)):\n",m);

for(i=0;im;i++)

{

? chns[i].cid=i+1;

? scanf("%d",chns[i].height);

? chns[i].height=chns[i].height%1000;//超出3位截取

? chns[i].n=0;

? chns[i].appes=(APPE **)malloc(sizeof(APPE*)*2);

? if(!chns[i].appes) return NULL;

? chns[i].appes[0]=chns[i].appes[1]=NULL;

? //設(shè)置小朋友初始圖像

? sprintf(chns[i].cframe[0]," \\%c/ ",1);

? sprintf(chns[i].cframe[1]," / \\ ");

? sprintf(chns[i].cframe[2],"-----");

? sprintf(chns[i].cframe[3],"高%3d",chns[i].height);

? sprintf(chns[i].cframe[4],"ID%3d",chns[i].cid);

}

return chns;

}

APPE *setApps()

{

int i;

APPE *appes=NULL;

printf("請輸入蘋果的個(gè)數(shù):");

scanf("%d",n);

appes=(APPE *)malloc(sizeof(APPE)*n);

if(!appes) return NULL;

printf("請輸入%d個(gè)蘋果的高度(不超過3位整數(shù)):\n",n);

for(i=0;in;i++)

{

? appes[i].aid=i+1;

? scanf("%d",appes[i].height);

? appes[i].height=appes[i].height%1000;//超出3位截取

? appes[i].status=0;

? //設(shè)置蘋果初始圖像

? sprintf(appes[i].aframe[0],"高%3d",appes[i].height);

? sprintf(appes[i].aframe[1],"ID%3d",appes[i].aid);

? sprintf(appes[i].aframe[2],"-----");

? sprintf(appes[i].aframe[3]," ?%c ?",'|');

? sprintf(appes[i].aframe[4]," ?%c ?",'|');

? sprintf(appes[i].aframe[5]," ?%c ?",'|');

? sprintf(appes[i].aframe[6]," ?%c ?",3);

}

return ?appes;

}

C語言:一棵蘋果樹,一人摘蘋果有一凳子高30cm,輸入10個(gè)蘋果高度(100~200),輸出能摘到幾個(gè)蘋果

#includestdio.h #include stdlib.h void main() { int i,b,count,a[10]; printf("蘋果高度:"); for(i=0; i10; i++) { scanf("%d",a[i]); } printf("手長:"); scanf("%d",b); count = 0; for(i=0; i10; i++) { if(a[i]b+30) { count++; } } printf("%d\n",count); }

小明家有棵蘋果樹,每到秋天樹上就回結(jié)出10個(gè)蘋果。蘋果成熟的時(shí)候,小明就會去摘蘋果。小明有個(gè)30厘

這個(gè)題目考的是讓數(shù)組作為函數(shù)的形式參數(shù),自定義一個(gè)函數(shù)就行,具體代碼如下:

#include?stdio.h

#includestdlib.h

int?GetApple(int?a[],?int?height,?int?n);

main()

{

int?i;

int?a[10]={0};??//蘋果的高度

int?h;??//小明的手能夠到達(dá)的最大高度

scanf("%d",h);

printf("%d",GetApple(a,h,10));

system("pause");

}

int?GetApple(int?a[],?int?height,?int?n)

{

int?i;??

int?count=0;??//能夠摘到的蘋果個(gè)數(shù)

//用戶輸入蘋果高度的同時(shí)判斷淘淘是否能夠摘到蘋果

for(i=0;in;i++)

{

scanf("?%d",a[i]);

if(a[i]=30+height)

count++;

}

return?count;

}

分享文章:c語言函數(shù)摘蘋果,蘋果 c語言
文章出自:http://chinadenli.net/article28/heeojp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站制作、網(wǎng)站內(nèi)鏈、小程序開發(fā)、搜索引擎優(yōu)化App開發(fā)、全網(wǎng)營銷推廣

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)