C语言编程题:定义一个长度为10的数组,求最大值及下标。

 我来答
莫道無情
2019-07-08 · TA获得超过1.5万个赞
知道答主
回答量:317
采纳率:100%
帮助的人:7.7万
展开全部

C语言程序如下:

#include <stdio.h>

void fun(int a[],int n,int *k)

{

int i,maxxr,j;

maxxr=a[0];

for(i=0;i<n;i++)

{

if(maxxr<a[i])

{

maxxr=a[i];

}

}

for(i=0;i<n;i++)

{

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、按要求输出。

TableDI
2024-07-18 广告
当我们谈到Python与Excel的拆分时,通常指的是使用Python的库来读取Excel文件中的数据,然后根据某种逻辑(如按行、按列、按特定值等)将数据拆分成多个部分或输出到新的Excel文件中。上海悉息信息科技有限公司在处理这类任务时,... 点击进入详情页
本回答由TableDI提供
百度网友4eb4912
2013-04-02
知道答主
回答量:9
采纳率:0%
帮助的人:3.9万
展开全部
#include <stdio.h>
void main()
{
//定义数组
int a[10] = {1,2,3,-4,5,6,-7,8,9,-10};
//给最大值、下标赋值
int max=a[0], pos=0;
//循环
for(int i=1; i<10; i++)
{
//判断循环的a[i]是否大于最大值a[0]=1;
if (a[i] > max)
{
//如果大于则把a[i]的值附给max
max = a[i];
//把i赋值给pos
pos = i;
}
}
//输出最大值和下标
printf("最大值=%d\n下标=%d\n", max, pos);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
星月小木木
2015-12-16 · TA获得超过3.2万个赞
知道大有可为答主
回答量:2.4万
采纳率:0%
帮助的人:9207万
展开全部
#include<stdio.h>

void main()
{
int max;
int a[10];
int h;
printf("please input 10 number\n");
for(int i = 0; i < 10; i++)
scanf("%d",&a[i]);
max = a[0];
for(i = 0; i < 10; i++)
{
if(a[i] > max)
{
max = a[i];
h = i;
}
}
printf("最大值是:%d, 下标是:%d\n", max, h);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
conbein
2013-03-12 · TA获得超过120个赞
知道答主
回答量:154
采纳率:0%
帮助的人:93.7万
展开全部
#include <stdio.h>
int main()
{
float a[10];
int i,id=0;
float max;
printf("请输入10个数,以回车键隔开\n");
for(i=0;i<10;i++)
scanf("%f",&a[i]);
max=a[0];
for(i=1; i<10; i++)
if (a[i] > max)
{
max = a[i];
id = i;
}
printf("最大值=%f\n下标=%d\n", max, id);
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
双鱼爱生活555
2018-01-18
知道答主
回答量:3
采纳率:0%
帮助的人:2584
引用星月小木木的回答:
#include<stdio.h>

void main()
{
int max;
int a[10];
int h;
printf("please input 10 number\n");
for(int i = 0; i < 10; i++)
scanf("%d",&a[i]);
max = a[0];
for(i = 0; i < 10; i++)
{
if(a[i] > max)
{
max = a[i];
h = i;
}
}
printf("最大值是:%d, 下标是:%d\n", max, h);
}
展开全部
没有对i进行定义吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 3条折叠回答
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式