#include <stdio.h>
int main()
{
float gets[8];
int i;
char mes;
printf("Enter 7 numbers into the vector:");
for(i=0 ; i<7 ; i++)
scanf("%f" ,&gets);
float min=0;
int v;
for(v=0 ; v<7 ; v++)
{
if (min > gets[v])
min = gets[v];
}
printf("%f" ,min);
如何编辑代码.c代码如何可以条件化 我填充7号,但每次min = 0。
答案 0 :(得分:2)
您将错误的参数传递给函数scanf()
。
您要输入的每个元素的地址应传递给scanf()
。
您想为gets[i]
填充i=0,..6
。
使用&
运算符找到元素的地址。
scanf("%f" ,&gets[i]);
答案 1 :(得分:1)
除@coderedoc答案外,您还需要进行以下更改。
将float min=0;
更改为float min=gets[0];
- 即。当前最小值是数组中的第一个值。然后将for(v=0 ; v<7 ; v++)
更改为for(v=1 ; v<7 ; v++)
,因为您不需要考虑第一个值。
此外,使用gets
作为变量名称可能不是一个好主意,因为有一个同名函数 - gets