函数运行2次。
问题描述:
我做了这个程序,代码成功编译我以为程序需要5个用户输入,但需要10个输入。函数运行2次。
#include <stdio.h>
int greatest_number();
int main()
{
greatest_number();
printf("Greatest number is %d", greatest_number());
return(0);
}
int greatest_number()
{
int a[6], x, i, z, y;
我不知道为什么该环路从用户需要10个输入
甚至我编程它采取5个输入 为(X = 0; X < 5; X ++) { 的printf(“输入一个号码:”); 012fscanf(“%d”,& a [x]); } a [x] = 0; x = 0,i = 1; y = 0; z = a [x]; (a [x]) 如果(z> a [i]){z = a [y]; } else { z = a [i]; y = i; } x ++; i ++; } return(z); }
答
在此代码段函数greatest_number
被调用两次
greatest_number();
^^^^^^^^^^^^^^^^^
printf("Greatest number is %d", greatest_number());
^^^^^^^^^^^^^^^^^
第一呼叫是多余的,其结果被丢弃。
而且似乎然后输入的所有元素具有负值(除非有像我所理解的标记值的最后一个元素),那么该函数将返回标记值。
请格式化您的代码。目前它是无法读取的。 –
不可读 - 修复压痕,(我的意思,其实它缩进)。在函数之间添加一个空行。 – ThingyWotsit
因为你调用'greatest_number'功能*** *** 2倍? –