哪位大神教我写,c语言的作业,定义一个10个元素的数组,找出最大值打印出来。
4个回答
展开全部
同学,你一共发了三张图片。
第一张,定义了一个10元素的一维整型数组,但只定义了三个元素值2、4、8,这代表什么呢?它说明后面的7个元素都是0!你定义的这个数组实际是:2、4、8、0、0、0、0、0、0、0。但这并不影响找到数组的最大值8,恰恰程序缺少这部分内容。
第二张,这个可能有一点问题,你仍然定义了一个10元素数组,但是你只写了9个数,9个数也无妨,图一还三个呢!关键是第9个数后面还有一个逗号!电脑可能会认为操作数丢失而报错。所以建议你要么增加一个数凑够10个,要么去掉那个逗号,让最后那个元素自动判为0。接下来就是找最大数,程序缺少这一部分。另外,你定义的temp=-32767没有多大作用。
图片三,你定义了一个3元素数组,只能在3个数中找最大数。
回归正题,就按图片1为基础,你把for语句中的i<=2改成i<10,还需要以下语句:
int max;
max=a[0];
for(i=1;i<10;i++)
if(max<a[i])max=a[i];
printf(“最大数 = %d\n”,max);
第一张,定义了一个10元素的一维整型数组,但只定义了三个元素值2、4、8,这代表什么呢?它说明后面的7个元素都是0!你定义的这个数组实际是:2、4、8、0、0、0、0、0、0、0。但这并不影响找到数组的最大值8,恰恰程序缺少这部分内容。
第二张,这个可能有一点问题,你仍然定义了一个10元素数组,但是你只写了9个数,9个数也无妨,图一还三个呢!关键是第9个数后面还有一个逗号!电脑可能会认为操作数丢失而报错。所以建议你要么增加一个数凑够10个,要么去掉那个逗号,让最后那个元素自动判为0。接下来就是找最大数,程序缺少这一部分。另外,你定义的temp=-32767没有多大作用。
图片三,你定义了一个3元素数组,只能在3个数中找最大数。
回归正题,就按图片1为基础,你把for语句中的i<=2改成i<10,还需要以下语句:
int max;
max=a[0];
for(i=1;i<10;i++)
if(max<a[i])max=a[i];
printf(“最大数 = %d\n”,max);
追问
图片是老师举的例子,他随意打的
我还有作业,,课后的,晚上发问题,你做出来我采纳,这次是别的人做了,而且他没有按照老师规定的做,所以让我觉得不对,老师也不交
--
2022-12-05 广告
2022-12-05 广告
图形化编程简单理解为用积木块形式编程,scratch和python也是其中的一种,属于入门级编程,以其简单生动的画面获得无数学生的喜爱,深圳市创客火科技有限公司是一家做教育无人机的公司,旗下有编程无人机,积木无人机及室内外编队,每款飞机含有...
点击进入详情页
本回答由--提供
展开全部
#include<stdio.h>
#define N 10
void main() { int a[10],i,m; //如果不输入可以写int a[10]={ 2,4,5,6,7,9,7,2,8,3 },i,m;
for ( i=0;i<N;i++ ) scanf("%d",&a[i]); //输入10个值
m=a[0]; for ( i=1;i<N;i++ ) if ( m<a[i] ) m=a[i];
printf("%d\n",m);
}
#define N 10
void main() { int a[10],i,m; //如果不输入可以写int a[10]={ 2,4,5,6,7,9,7,2,8,3 },i,m;
for ( i=0;i<N;i++ ) scanf("%d",&a[i]); //输入10个值
m=a[0]; for ( i=1;i<N;i++ ) if ( m<a[i] ) m=a[i];
printf("%d\n",m);
}
更多追问追答
追问
看不懂
追答
找最大值:先假定数组第1个元素的值是最大值m=a[0];
然后用循环变量i顺序访问数组其他元素,每次i循环时i=1~9
循环中比较m和a[i],如果记录的最大值m小于当前的a[i],则更换记录m成a[i]的值
这样循环一遍m中存放的必定是数组中的最大值,相当于用变量m在数组中挑出了一个最大值存放。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
int a[10]={2,4,8};
int max=a[0] ;
for(int i=0;i<3;i++){
if(max<=a[i]){
max=a[i];
}
}
printf("%d",max)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <stdio.h>
int main(void)
{
int num[10];
for(int j=0;j<10;j++)
scanf("%d",num+j);
for(int k=1;k<10;k++)
if(num[0]<num[k])
num[0]=num[k];
printf("%d\n",num[0]);
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询