亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

遞歸函數還是不太懂,請問我這么寫錯在了那里?

遞歸函數還是不太懂,請問我這么寫錯在了那里?

C
慕粉3374841 2016-11-11 15:57:03
#include <stdio.h>?int peopleage(n)?if(n==1)?int age;?{? ? ?age=10;? ? ?return 1;?}?else?{? ? ?age= peopleage(n-1)+2;? ???}?return age;int main()?{? ? fifth=peopleage(5); printf("第5個人的年齡是%d歲", fifth);? return 0;}
查看完整描述

3 回答

已采納
?
Lemon156

TA貢獻91條經驗 獲得超32個贊

#include?<stdio.h>?
int?peopleage(n)
{
	?int?age;
	?if(n==1){
		?age=10;
		?return?10;
	?}else{
		?age=?peopleage(n-1)+2;
		
	?}
	?return?age;
	?
}

int?main()?
{
	int?fifth=peopleage(5);
	printf("第5個人的年齡是%d歲",?fifth);?
	return?0;
}


正確代碼應該是這樣的,

你的代碼里存在錯誤:1.代碼格式應該盡量清晰一點2.定義函數沒有大括號;3.定義變量的位置不對4.主函數中的fifth變量是需要先定義再賦值的

望采納

查看完整回答
反對 回復 2016-11-11
?
望遠

TA貢獻1017條經驗 獲得超1032個贊

#include?<stdio.h>?
int?peopleage(int?n)
{
?????int?age;
?????if(n==1){
?????????return?10;
?????}else{
?????????age=?peopleage(n-1)+2;
?????????
?????}
?return?age;
??????
}
int?main()?
{
????int?fifth=peopleage(5);
????printf("第5個人的年齡是%d歲\n",?fifth);?
????return?0;
}

http://img1.sycdn.imooc.com//58258e850001360203370083.jpg

查看完整回答
反對 回復 2016-11-11
?
onemoo

TA貢獻883條經驗 獲得超454個贊

完整代碼就是這樣嗎?

是的話,就錯在你的代碼“不完整”:

peopleage的函數體大括號去哪里了??


其中if語句的語法也錯了,把 if 和下面 聲明age那行 交換一下

查看完整回答
反對 回復 2016-11-11
  • 3 回答
  • 0 關注
  • 1492 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號