程序成功执行一次后,再次执行时输入参数不能得到执行结果。求数组的最大最小值。为什么?? 5
#include"stdafx.h"#include"stdio.h"//usingnamespacestd;voidselect1(intarray[],intn){i...
#include "stdafx.h"
#include"stdio.h"
//using namespace std;
void select1(int array[], int n)
{
int max, min;
max = min = array[0];
for (int i = 1; i < n; i++)
{
if (array[i]>max)
max = array[i];
else if (array[i] < min)
min = array[i];
}
printf("max=%d\nmin=%d", max, min);
}
int main()
{
int a[5];
for (int i = 0; i < 5; i++)
scanf_s("%d ", &a[i]);
select1(a, 5);
return 0;
}
此处max,min都没有设置为全局变量,但是第一次运行也没有问题的,之后还想就不能得到结果了,程序没改动。 展开
#include"stdio.h"
//using namespace std;
void select1(int array[], int n)
{
int max, min;
max = min = array[0];
for (int i = 1; i < n; i++)
{
if (array[i]>max)
max = array[i];
else if (array[i] < min)
min = array[i];
}
printf("max=%d\nmin=%d", max, min);
}
int main()
{
int a[5];
for (int i = 0; i < 5; i++)
scanf_s("%d ", &a[i]);
select1(a, 5);
return 0;
}
此处max,min都没有设置为全局变量,但是第一次运行也没有问题的,之后还想就不能得到结果了,程序没改动。 展开
3个回答
展开全部
#include"stdio.h"
void select1(int array[], int n)
{
int max, min;
max = min = array[0];
int i;
for (i = 0; i < n; i++)
{
if (array[i]>max)
max = array[i];
else if (array[i] < min)
min = array[i];
}
printf("max=%d\nmin=%d", max, min);
}
int main()
{
int a[5];
int i;
for (i = 0; i < 5; i++)
scanf("%d", &a[i]);
select1(a, 5);
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我想原因有可能是因为你用的scanf_s的原因,而scanf_s是要输入缓冲区的大小的,你试试看把
scanf_s改成scanf看看行不行
scanf_s改成scanf看看行不行
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <stdio.h>
//using namespace std;
void select1(int array[], int n)
{
int max, min;
int i;
max = min = array[0];
for (i = 1; i < n; i++)
{
if (array[i]>max)
max = array[i];
else if (array[i] < min)
min = array[i];
}
printf("max=%d\nmin=%d", max, min);
}
int main()
{
int a[5];
int i;
while(1)
{
printf("\n请输入5个数:\n");
for (i = 0; i < 5; i++)
{
scanf("%d", &a[i]);
}
select1(a, 5);
}
return 0;
}
//using namespace std;
void select1(int array[], int n)
{
int max, min;
int i;
max = min = array[0];
for (i = 1; i < n; i++)
{
if (array[i]>max)
max = array[i];
else if (array[i] < min)
min = array[i];
}
printf("max=%d\nmin=%d", max, min);
}
int main()
{
int a[5];
int i;
while(1)
{
printf("\n请输入5个数:\n");
for (i = 0; i < 5; i++)
{
scanf("%d", &a[i]);
}
select1(a, 5);
}
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询