c语言程序设计:求数组中的最小数
编写函数intgetminitem(int&,int*),实现求一个整型数组中所有数的最小值要求返回值为最小值元素的下标;函数的参数为整型数组的首地址和存储最小元素的变量...
编写函数int getminitem(int &,int *),实现求一个整型数组中所有数的最小值
要求返回值为最小值元素的下标;函数的参数为整型数组的首地址和存储最小元素的变量地址 展开
要求返回值为最小值元素的下标;函数的参数为整型数组的首地址和存储最小元素的变量地址 展开
6个回答
展开全部
加班为你写的。我不明白,你的数组大小怎么没有传过来。
#include "stdio.h"
int getminitem(int array[],int ,int *);
int main() {
int lowNum = -1;
int array[12] = {8,2,5,9,6,4,12,56,-2,-9,46,12};
int index = getminitem(array,12,&lowNum);
printf("index=%d,lowNumber=%d",index,lowNum);
}
int getminitem(int array[],int arraySize,int *lowNum) {
int i = 0;
int index = 0;
if(arraySize <= 0)
return 0;
*lowNum = array[0];
for(i=0;i<arraySize;i++) {
if(array[i]<(*lowNum)) {
*lowNum = array[i];
index = i;
}
}
return index;
}
#include "stdio.h"
int getminitem(int array[],int ,int *);
int main() {
int lowNum = -1;
int array[12] = {8,2,5,9,6,4,12,56,-2,-9,46,12};
int index = getminitem(array,12,&lowNum);
printf("index=%d,lowNumber=%d",index,lowNum);
}
int getminitem(int array[],int arraySize,int *lowNum) {
int i = 0;
int index = 0;
if(arraySize <= 0)
return 0;
*lowNum = array[0];
for(i=0;i<arraySize;i++) {
if(array[i]<(*lowNum)) {
*lowNum = array[i];
index = i;
}
}
return index;
}
追问
我怎么知道数组大小?教科书上题目就这样!
鬼晓得清华出版社怎么审稿的!
另:同一楼--函数原型int getminitem(int &,int *),请问您这怎么变三个了?
追答
必须要知道 数组大小,不然没有办法解,你想只有首地址,不知道,结束地址,怎么找出最小的 。
展开全部
int getminitem(int & min,int* data , int len)
{
int minindex = 0;
min= data[0];
for(int i = 1;i<len;i++)
{
if(data[i] < min)
{
min = data[i];
minindex = i;
}
}
return minindex;
}
{
int minindex = 0;
min= data[0];
for(int i = 1;i<len;i++)
{
if(data[i] < min)
{
min = data[i];
minindex = i;
}
}
return minindex;
}
追问
函数原型int getminitem(int &,int *),请问您这怎么变三个了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
#define N 10
int getminitem(int &min,int *a);
int main()
{
int min;
int a[N]={1,2,3,4,5,6,7,8,9,10};
int mini;
mini = getminitem(a,&min);
printf("xiabiao = %d,min=%d",mini,min);
getchar();
return 0;
}
int getminitem(int &min,int *a)
{
int i;
min = a[0];
int mini =0;
for(i=0;i<N;i++)
{
if(a[i] < min)
{
min = a[i];
mini = i;
}
}
return mini;
}
#define N 10
int getminitem(int &min,int *a);
int main()
{
int min;
int a[N]={1,2,3,4,5,6,7,8,9,10};
int mini;
mini = getminitem(a,&min);
printf("xiabiao = %d,min=%d",mini,min);
getchar();
return 0;
}
int getminitem(int &min,int *a)
{
int i;
min = a[0];
int mini =0;
for(i=0;i<N;i++)
{
if(a[i] < min)
{
min = a[i];
mini = i;
}
}
return mini;
}
更多追问追答
追问
请问为嘛连编译都通不过?
error C2143: syntax error : missing ')' before '&'
error C2143: syntax error : missing '{' before '&'
error C2059: syntax error : '&'
error C2059: syntax error : ')'
error C2143: syntax error : missing ')' before '&'
error C2143: syntax error : missing '{' before '&'
error C2059: syntax error : '&'
error C2059: syntax error : ')'
追答
标准C语言中是没有引用类型的,你的函数原型中有&引用类型,所以需要在C++环境下编译。
即建立.cpp文件。你确定这题的要求是用纯C语言吗?如果是,这个函数原型就不对。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
int getminitem(int &a,int *p)
{
int i,n
int temp;
int j = strlen(a);
for(i=0;i<j;i++)
{
if(*(a+i)>*(a+i+1))
{
temp = *(a+i);
*(a+i) = *(a+i+1);
*(a+i+1) = temp;
n = i;
}
}
p = a+i-1;
return n;
}
{
int i,n
int temp;
int j = strlen(a);
for(i=0;i<j;i++)
{
if(*(a+i)>*(a+i+1))
{
temp = *(a+i);
*(a+i) = *(a+i+1);
*(a+i+1) = temp;
n = i;
}
}
p = a+i-1;
return n;
}
追问
我知道题目只要子函数,可您能给全程序吗!
这样我没法验证,谢谢了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include"stdio.h"
int getminitem(int min,int* data , int len)
{
int minindex = 0;
min= data[0];
for(int i = 1;i<len;i++)
{
if(data[i] < min)
{
min = data[i];
minindex = i;
}
}
return minindex;
}
void main()
{
getminitem(min,data ,len);
}
int getminitem(int min,int* data , int len)
{
int minindex = 0;
min= data[0];
for(int i = 1;i<len;i++)
{
if(data[i] < min)
{
min = data[i];
minindex = i;
}
}
return minindex;
}
void main()
{
getminitem(min,data ,len);
}
追问
同一楼--函数原型int getminitem(int &,int *),请问您这怎么变三个了?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询