⑴ c語言2數求最大值max函數
#include<stdio.h>
void main()
{
int max(int x,int y);
int a,b,c;
scanf("%d,%d",&a,&b);
c=max(a,b);
printf("max=%d\n",c);
}
int max(int x,int y)
{
int z;
if(x>y) z=x;
else z=y;
return(z);
}
該函數在vs2010中始終編譯不過,軟體提示的錯誤為syntax error:『type』
而錯誤指向的位置則是「int max(int x,int y);」和「int max(int x,int y)」。
經過摸索發現,問題就出在max上,只要將max改為別的比如說daxiao、big等就可以順利編譯通過。
⑵ 用c #編寫程序實現打擂台法求1,2,3,4,5,6,7,8中的最大值
打擂台 演算法 ? 你說的是冒泡排序完 再取第一個值吧
⑶ c語言 利用函數求階乘的最大值
階乘可以寫成一個函數,最大值可以寫成一個函數,但階乘的最大值的含義並不明確,先給出階乘和(整數的)最大值的函數:
//階乘的函數(遞歸寫法)
longlongfactorial(unsignedn)
{
if(n==0||n==1)return1;
returnfactorial(n-1)*n;
}
//最大值函數
intmax(intarr[],intlen)
{
inti,m=arr[0];
for(i=1;i<len;++i)
if(arr[i]>m)m=arr[i];
returnm;
}
⑷ C語言程序設計 函數調用 求最大值
#include <stdio.h>
void f(int *x, int *y)
{
int t;
t = *x;
*x = *y;
*y = t;
}
int main(void)
{
int a[3];
int i, j;
int x, y, z;
while(scanf("%d%d%d", &x, &y, &z)!=EOF)
{
a[0] = x;
a[1] = y;
a[2] = z;
for(i=1;i<3;i++)
for(j=0;j<3-i;j++)
if(a[j]<a[j+1])
f(&a[j], &a[j+1]);
printf("%d %d %d\n", a[0], a[1], a[2]);
}
return 0;
}
三個數從大到小,不知道你說的是不是這個意思,想要n個數的話,改下就可以了,其實一般都用快排的,方便
⑸ 求C語言 輸入10個數 輸出最大值
C語言輸入十個數的編程方法如下:
1.首先需要定義一個整型數組空間,因為這里需要輸入十個數,所以數組空間為10個。
⑹ C語言,用粒子群演算法求函數最大值,拜託了!!
for i=1:sizepop % 隨機產生一個種群 pop(i,:)=2*rands(1,2); % 初始化粒子 V(i,:)=0.5*rands(1,2); % 初始化速度 % 計算粒子適應度值 fitness(i)=fun(pop(i,:)); end [bestfitness bestindex]=min(fitness); zbest=pop(bestindex,:); % 群體極...
⑺ c語言求隨機產生的10個數的最大值(要求用函數實現)
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
intmain()
{
intn,i,max;
srand(time(NULL));
max=rand();
for(i=1;i<10;i++)
{
n=rand();
if(n>max)max=n;
}
printf("max=%d ",max);
return0;
}
⑻ 用「打擂台法」輸出10個數最大值及第幾個數,c語言。
#include<stdio.h>
#include<windows.h>
int main()
{
int arr[10] = {1,5,6,3,4,2,4,5,3,4};//創建一個數組,然後放入10個數
int max = 0;//定義一個數max,用來放打擂後的擂主
int i = 0;//定義一個數i,循環來遍歷數組
int num = 0;//定義第幾個數
while (i <= 9) {
if (arr[i] > max) {
max = arr[i];//當打擂成功時,將較大數賦值給max,作為新的擂主
num = i;
}
i++;//每次循環結束後給i加1,達到數組遍歷的目的
}
printf("這10個數中最大的數為:%d,排在第%d位", max,num+1);
system("pause");
return 0;
}
(8)c語言打擂法函數求最大值擴展閱讀:
if(max(m,a[i])>m),比較條件錯誤。
此時的比較條件,應該是擂主的數字和當前循環的數字進行比較,如果當前循環的數字比較大,則把擂主數字替換掉。反之,繼續循環數字比較。
max(m,a[i])>m,先把m和a[i]比較一次,再把此次的結果和m比較一次。比較的動作進行了兩次,是不對的。
if...else...:
if 和 else 是兩個新的關鍵字,if 意為「如果」,else 意為「否則」,用來對條件進行判斷,並根據判斷結果執行不同的語句。總結起來,if else的結構為:
if(判斷條件){
語句塊1
}else{
語句塊2
}
⑼ C語言調用函數求最大值問題
輸入的兩個數字間用英文的逗號,不要用中文標點