#include<stdio.h>
int main()
{ int n,i,x,max=0x80000000
scanf("%d",&n) //找n个数中的最大值
for(i=0i<ni++)
{ scanf("%d",&x)
if(x>max)max=x
}
printf("%d\n",max)
return 0
}
temp=(((a[0]>a[1])?a[0]:a[1])>a[2]?:((a[0]>a[1])?a[0]:a[1]):a[2])temp就是最大值
不好意思,上面那个多谢了一个冒号,当时没有验证就直接写了,现在已经验证完毕:
具体代码:
#include
int
main()
{
int
a[3]
a[0]=1
a[2]=3
a[1]=2
int
temp=(((a[0]>a[1])?a[0]:a[1])>a[2]?((a[0]>a[1])?a[0]:a[1]):a[2])
printf("%d",temp)
return
0
}
C语言程序如下:
#include <stdio.h>
void fun(int a[],int n,int *k)
{
int i,maxxr,j
maxxr=a[0]
for(i=0i<ni++)
{
if(maxxr<a[i])
{
maxxr=a[i]
}
}
for(i=0i<ni++)
{
if(maxxr==a[i]){
j=i
break
}
}
*k=j
}
int main(void)
{
int a[10]={ 876,675,896,101,301,401,980,431,451,777},k
fun(a, 10, &k)
printf("%d,%d", k, a[k])
}
扩展资料:
思路:
1、先定义数组(其数组长度取最大值,题目要求为10),然后通过for循环给数组一个个赋值,即可得到一个数组;
2、找数组的最大值,这一步是最关键的一步,由于所输入的值不确定那个是最大值,故可以先设置另一个一个变量(index)来存储最大值变量的下标。
3、紧接着继续在数组里for循环,逐一跟下标为index的值相比较,如果比下标为index的值大,这时候就将两者中数值大的下标赋值给index。
4、按要求输出。