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、按要求输出。
以下是用C语言编写的实现方案:#include <stdio.h>
int main() {
int grades[5], total = , i
printf("请输入5个学生成绩:\n")
for (i = i <5i++) {
scanf("%d", &grades[i])
total += grades[i]
}
printf("5个学生的总成绩为:%d\n", total)
return
}
程序中首先定义一个长度为5的整型数组grades来存储学生成绩,然后循环5次,使用scanf从键盘输入每个学生的成绩,并将它们累加到变量total中。最后输出total的值,即5个学生的总成绩。
值得注意的是,程序中没有对输入的成绩做任何验证或错误处理,您应该根据实际需要添加相关的逻辑。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)