利用递归函数c语言判断数组是否为递减,如果把函数中的n<=1改成n<1就不管什么数组都判断为递减,为什么?
答案:4 悬赏:80 手机版
解决时间 2021-02-22 11:36
- 提问者网友:孤山下
- 2021-02-22 02:44
利用递归函数c语言判断数组是否为递减,如果把函数中的n<=1改成n<1就不管什么数组都判断为递减,为什么?
最佳答案
- 五星知识达人网友:玩家
- 2021-02-22 03:19
n 表示数组的个数啊,如果只有0个还需要进行比较吗?要好好理解题目,不难的追问但n=1时,怎么会返回1呢? if(decrease(a,0)==1)
t=1;
else
t=(a[0]>=a[-1]);
return t;追答都判断为非递减的啊,n=1 时返回的是o啊
因为a[n-1]>=a[n-2],已经在n=2时,即a[1]>=a[0]判断完成了,
n<=1时已近表示所有的元素都比较完成了····
t=1;
else
t=(a[0]>=a[-1]);
return t;追答都判断为非递减的啊,n=1 时返回的是o啊
因为a[n-1]>=a[n-2],已经在n=2时,即a[1]>=a[0]判断完成了,
n<=1时已近表示所有的元素都比较完成了····
全部回答
- 1楼网友:不如潦草
- 2021-02-22 07:06
#include
void reverse(char str[], int start, int end )
{
if(start>=end) return;
else
{
char t;
t=str[start];
str[start]=str[end];
str[end]=t;
reverse(str,start+1,end-1);
}
}
int main()
{ char str[100];
int start, end;
gets(str);
scanf("%d%d", &start, &end);
reverse( str, start, end );
printf("%s\n", str);
return 0;
}
运行情况(字符编号从0开始):
abcd
0 3
dcba
请按任意键继续. . .
另外,团IDC网上有许多产品团购,便宜有口碑
void reverse(char str[], int start, int end )
{
if(start>=end) return;
else
{
char t;
t=str[start];
str[start]=str[end];
str[end]=t;
reverse(str,start+1,end-1);
}
}
int main()
{ char str[100];
int start, end;
gets(str);
scanf("%d%d", &start, &end);
reverse( str, start, end );
printf("%s\n", str);
return 0;
}
运行情况(字符编号从0开始):
abcd
0 3
dcba
请按任意键继续. . .
另外,团IDC网上有许多产品团购,便宜有口碑
- 2楼网友:西风乍起
- 2021-02-22 05:29
下标越界啦``
- 3楼网友:渊鱼
- 2021-02-22 04:20
for循环加个{}啊
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯