A. c語言數組比較求最小值
剛才有事耽誤了......()
#include<stdio.h>
//用於求絕對值
#defineABSO(m)(m>0?m:-m)
intS_value(inttmp[3],intD[3]);//用於求S的值,
int*Compare(inttmp_1[3],inttmp_2[3],inttmp_3[3],intD[3]);//返回要求的數組指針
voidmain()
{
inti=0;
inta[3]={1,5,9};
intb[3]={4,8,12};
intc[3]={3,7,11};
intd[3]={2,6,10};//題目中的ABCD是給定的吧?不是的話你再改改
inttemp[3],*p=temp;
printf("結果如下: ");
p=Compare(a,b,c,d);
for(i=0;i<3;i++)
printf("%d ",p[i]);
}
intS_value(inttmp[3],intD[3])
{
intk=0,i=0;
for(i=0;i<3;i++)
k+=ABSO((tmp[i]-D[i]));
returnk;
}
int*Compare(inttmp_1[3],inttmp_2[3],inttmp_3[3],intD[3])
{
int*tmp,flag=0;
inti,j;
i=S_value(tmp_1,D);
j=S_value(tmp_2,D);
printf("%d,%d ",i,j);
tmp=(i<j?tmp_1:(i!=j?tmp_2:(flag=1,tmp_2)));
i=S_value(tmp,D),j=S_value(tmp_3,D);
printf("%d,%d ",i,j);
/*這時,如果前兩組比較結果是不同的,那麼這次1.相同,就輸出D[3],2.不同,就輸出最小的tmp[3]/D[3]
如果前兩組比較結果是相同的,那麼這次1.相同,就輸出D[3]2.不同,如枿a.相同的那組是最小的,輸出D[3]b.相同的那兩組不是最小的,救輸出tmp_3[3]
*/
tmp=i>j?tmp_3:(i!=j?(flag!=0?D:tmp):D);
returntmp;
}
B. C語言查找數組中的最小數
#include<stdio.h>
int main()
{
int a[5];
int i,max,min;
printf("input number:\n");
for(i=0;i<5;i++)
scanf("%d",&a[i]);
max=a[0];
min=a[0];
for(i=0;i<5;i++){
if(a[i]>max)
max=a[i];
}
for(i=0;i<5;i++){
if(a[i]<min)
min=a[i];
}
for(i=0;i<5;i++){
printf("%d",a[i]);
printf(" ");
}
printf("\n");
printf("最大值為%d\n",max);
printf("最小值為%d\n",min);
return 0;
}
C. c語言用函數找一個數組的最小值
1、首先定義一個Max最大值變數。
D. C語言:求一維數組中的最大、最小值
#include<stdio.h>
main()
{
int
a[N]={};//已知數組
int
max=a[0];//保存最大值
int
min=a[0];/乎握/保存最小值,先初始化為數組第一個元素
for(int
i=1;i<N;i++)//循環判斷
{
if(a[i]>max)//判斷最大值
max=a[i];
if(a[i]<min)//判歲睜慶斷最小值
min=a[i];
}
//輸出
printf("max=%d,min=%d\早穗n",max,min);
}
E. C語言編程,多種方法求一個數組里的最大值和最小值。
因為只是找出最大最小值,直接循環每個比較一次就可以。
#include<stdio.h> //挑選法
#define N 10
void main() { int a[N],m,n,i;
for ( i=0;i<N;i++ ) scanf("%d",&a[i]);
m=n=a[0]; for ( i=1;i<N;i++ ) if ( m<a[i] ) m=a[i]; else if ( n>a[i] ) n=a[i];
printf("最大值%d,最小值%d ",m,n);
}
#include<stdio.h> //排序法
#define N 10
void main() { int a[N],i,j,k;
for ( i=0;i<N;i++ ) scanf("%d",&a[i]);
for ( i=0;i<N-1;i++ ) for ( j=i+1;j<N;j++ ) if ( a[i]<a[j] ) {k=a[i];a[i]=a[j];a[j]=k;}
printf("最大值%d,最小值%d ",a[0],a[N-1]);
}
(5)c語言數組元素最小值擴展閱讀:
C語言包含的各種控制語句僅有9種,關鍵字也只有32 個,程序的編寫要求不嚴格且以小寫字母為主,對許多不必要的部分進行了精簡。實際上,語句構成與硬體有關聯的較少,且C語言本身不提供與硬體相關的輸入輸出、文件管理等功能,如需此類功能,需要通過配合編譯系統所支持的各類庫進行編程,故c語言擁有非常簡潔的編譯系統。
F. C語言編程:求出一維數組中最小元素的值以及它所在的下標號
//這個程序的好處是能輸出所有的最小數的下標,比如1,1,2,3,4中能輸出a[0],a[1],而上面三位的不能
#include <stdio.h>
#define M 5//自己定義數組的長度
void main()
{
int i,n=0,min;
int a[M];
printf("請輸入%d個數,用空格隔開:",M);
for(i=0;i<5;i++)
scanf("%d",&a[i]);
min=a[0];
for(i=1;i<M;i++)
if(a[i]<=min)
{
min=a[i];
}
printf("這組數組中最小的數是%d,分別是:\n",min);
for(i=0;i<5;i++)
if(a[i]==min)
printf("a[%d] ",i);
}
G. 編寫函數min(int b[10]) ,用來求數組a中元素的最小值。C語言
主要個子函數
Min在c語言中系統沒有定義,需要我們自己定義,安題目傳參是一個數組,10個元素,
其實跟比較大小一樣,
Int min(int b[10])
Int i,m;
M=b[0];
For(i=1;i<10;i++)
If(m>b[i])
M=b[i];
Return m;
這樣子函數就好了
主函數應該沒問題,
輸入數組a
調用min(a[10]),記得這里傳參是實參,要用a
H. C語言作業,在含有10個元素的數組中,找出最小值,並與第一個數交換。
輸入格式:
輸入在第一行中給出一個正整數N(≤10),第二行給出N個整數,數字間以空格分隔。
輸出格式:
在一行中順序輸出雹肆輪交換後的序列,每個整數後跟一個空格。
輸入樣例:
5
8 2 5 1 4
輸出樣例:
1 2 5 4 8
#include<stdio.h>
main()
{
int n,i,a[10],c,d,min,max,j;
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%d",&a<i>);
}
min=max=a[0];
for(i=0;i<n;i++)
{
if(a<i><=min)
{
min=a<i>;
j=i;
}
}
c=a[0];
a[0]=min;
a[j]=c;
for(i=0;i<n;i++)
{
if(a<i>>=max)
{
max=a<i>;
j=i;
}
}
d=max;
a[j]=a[n-1];
a[n-1]=d;
for(i=0;i<n;i++)
printf("%d",a<i>);
}
擴展雹虛資料:
方法二、
#include<stdio.h>
int main(){
int a[10],i,t,imin,imax,n=10;
printf("輸入10整數(空格隔開):");
for(i=0;i<n;++i)
scanf("%d",&a<i>);
printf("處理前: ");
for(i=0;i<n;++i)
printf("%d",a<i>);
printf(" ");
imin=imax=0;
for(i=1;i<n;++i){
if(a<i>>a[imax])imax=i;
if(a<i>&源信lt;a[imin])imin=i;
}
if(imin!=0){
t=a[0];
a[0]=a[imin];
a[imin]=t;
}
if(imax!=n-1){
t=a[n-1];
a[n-1]=a[imax];
a[imax]=t;
}
printf("處理後: ");
for(i=0;i<n;++i)
printf("%d",a<i>);
printf(" ");
return 0;
}
I. C語言編寫函數求數組中最小值
可以參考下面的代碼:
int findMin(int szIn[], int size)
{
int tmpMin = szIn[0];
for(int i = 0; i < size; ++i)
{
if(tmpMin <= szIn[i])
{
tmpMin = szIn[i];
}
}
return tmpMin;
}
(9)c語言數組元素最小值擴展閱讀:
C語言isupper()函數:判斷一個字元是否是大寫字母
C語言isspace()函數:判斷一個字元是否是空白符
C語言isprint()函數:判斷一個字元是否是可列印字元
C語言islower()函數:判斷一個字元是否是小寫字母
C語言ldexp()函數:返回x乘以2的exponent次方(次冪)的值
int isdigit(int ch) 若ch是數字('0'-'9')返回非0值,否則返回0
J. C語言,求數組最大最小值
求數組中的最大值和最小值,一般使用假設法,即假設數組耐燃的第1個元素為最大值,同時也是最小值,然後遍歷數組,找到最大值和最小值。示例如下:
#include<stdio.h>
intmain()
{
inta[]={1,2,3,4,5,6,7,8,9,10};
intmax,min;
max=min=a[0];臘沖//假設第1個元素即是最大值也是最小值。
intmax_pos=0,min_pos=0;
//遍歷數組,找出數組a中的最大數和最小數
for(intinx=0;inx!=sizeof(a)/sizeof(int);++inx){
if(a[inx]>max)max=a[inx],max_pos=inx;
elseif(a[inx]<min)輪畝殲min=a[inx],min_pos=inx;
}
printf("最大數:%d 最小數:%d
",max,min);
return0;
}