各位大哥,遞歸函數(shù)的變量在函數(shù)外部聲明為啥不行呢?
#include <stdio.h>
/* 定義獲取單詞數(shù)量的函數(shù) */
int getWordNumber(int n)
int result:
{? ?
? ??
? ? if(n == 1)
? ? {
? ? ? ? return 1;? ? //第一天只會(huì)1個(gè)單詞
? ? }
? ? else{
? ? ? ??
? ? ? ?result=getWordNumber(n-1)+n;? ? ? ?//到第天會(huì)的單詞數(shù)量
? ? }
? return result;
}
int main()
{
? ? int num = getWordNumber(10);? ? ?//獲取會(huì)了的單詞數(shù)量
? ? printf("小明第10天記了:%d個(gè)單詞。\n", num);
? ? return 0;
}
2020-04-04
我試了下,在外部聲明好像不是不可以(?)
你這個(gè)主要問題不應(yīng)該了是位置放反了嗎,把result的定義放在函數(shù)的定義上面才對(duì)吧,現(xiàn)在這個(gè)代碼差不多把函數(shù)的定義給拆掉了,會(huì)直接報(bào)錯(cuò),順便定義result之后你的標(biāo)點(diǎn)應(yīng)該是分號(hào)不是冒號(hào)吧
int result;
int getWordNumber(int n){}? ?//你把int result插入在這中間了