从键盘输入10个整数存入一个数组中,用函数编程将其中的最大数与最小数位置互换,...
麻烦大家帮忙看下哪里错了#include <stdio.h>
void MaxMinExchang(int a[],int n);
int max,min;
void main()
{
int a,i,n=10;
printf("Input 10 numbers:");
for(i=0;i<n;i++)
{
scanf("%d",&a);
}
MaxMinExchang(a,n);
printf("Exchang results:");
for(i=0;i<n;i++)
{
printf("%4d",a);
}
}
void MaxMinExchang(int a[],int n)
{
int i,b,d=0,x=0;
max=min=a;
for(i=0;i<n;i++)
{
if(a>max)
{
max=a;
d=i;
}
else if(a<min)
{
min=a;
x=i;
}
}
b=a;
a=a;
a=b;
} 本帖最后由 永恒的蓝色梦想 于 2020-5-9 17:56 编辑
这样就可以了#include <stdio.h>
void MaxMinExchang(int a[], int n);
int max, min;
int main()
{
int a, i, n = 10;
printf("Input 10 numbers:");
for (i = 0; i < n; i++)
{
scanf_s("%d", &a);
}
MaxMinExchang(a, n);
printf("Exchang results:");
for (i = 0; i < n; i++)
{
printf("%4d", a);
}
}
void MaxMinExchang(int a[], int n)
{
int i, b, d = 0, x = 0;
max = min = a;
for (i = 0; i < n; i++)
{
if (a > max)
{
max = a;
d = i;
}
else if (a < min)
{
min = a;
x = i;
}
}
b = a;
a = a;
a = b;
}
PS:交换是 EXCHANGE,不是EXCHANG
#include <stdio.h>
void MaxMinExchang(int a[],int n);
int max,min;
void main()
{
int a,i,n=10;
printf("Input 10 numbers:");
for(i=0;i<n;i++)
{
scanf("%d",&a);
}
MaxMinExchang(a,n);
printf("Exchang results:");
for(i=0;i<n;i++)
{
printf("%4d",a);
}
}
void MaxMinExchang(int a[],int n)
{
int i,b,d=0,x=0;
max=min=a;
for(i=0;i<n;i++)
{
if(a>max)
{
max=a;
d=i;
}
else if(a<min)
{
min=a;
x=i;
}
}
b=a;
a=a;
a=b;
}
数组作为函数参数的用法不对
还有
max=min=a;
这句我没看明白 永恒的蓝色梦想 发表于 2020-5-9 17:52
这样就可以了
PS:交换是 EXCHANGE,不是EXCHANG
scanf-sC语言用不起 谢谢大佬们啊{:10_254:} 一只老甲鱼 发表于 2020-5-9 18:07
scanf-sC语言用不起
scanf_s 就是C语言的啊 永恒的蓝色梦想 发表于 2020-5-9 18:08
scanf_s 就是C语言的啊
能编译但是运行不了,error LNK2001: unresolved external symbol _scanf_s 一只老甲鱼 发表于 2020-5-9 18:10
能编译但是运行不了,error LNK2001: unresolved external symbol _scanf_s
我错了……这个只有VS才能用
页:
[1]