| 网站首页 | 业界新闻 | 群组 | 交易 | 人才 | 下载频道 | 博客 | 代码贴 | 编程论坛
大量收QQ微信精准粉/交友粉,非诚勿扰千里之行 始于足下
共有 404 人关注过本帖
标题:oj 上的一个数组问题,不知道编,求助!!
只看楼主 加入收藏
于瞳yi1999
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2018-4-28
结帖率:0
  已结贴   问题点数:10  回复次数:7   
oj 上的一个数组问题,不知道编,求助!!
附件: 您没有浏览附件的权限,请 登录注册
2018-06-13 15:54
grmmylbs
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:53
帖 子:1397
专家分:5812
注 册:2016-2-14
  得分:2 
用不到数组吧
2018-06-13 15:57
幻紫灵心
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:山咔咔里面
等 级:版主
威 望:15
帖 子:104
专家分:567
注 册:2018-3-30
  得分:2 
用数组的:
程序代码:
#include"stdio.h"
main()
{
    int i,n,score[100000],max;
    scanf("%d",&n);
    if(n<1 || n>100000)
        return 0;
    for(i=0;i<n;i++)
        scanf("%d",&score[i]);
    max=0;
    for(i=1;i<n;i++)
        if(score[i]>score[max])
            max=i;
    printf("%d",score[max]);
 }


用指针动态数组节约内存  ?
程序代码:
#include"stdio.h"
#include"stdlib.h"
main()
{
    int i,n,*score,max;
    scanf("%d",&n);
    if(n<1 || n>100000)
        exit(0);
    score=(int *)malloc(n*sizeof(int));
    for(i=0;i<n;i++)
        scanf("%d",&score[i]);
    max=0;
    for(i=1;i<n;i++)
        if(score[i]>score[max])
            max=i;
    printf("%d",score[max]);
 }


[此贴子已经被作者于2018-6-13 16:26编辑过]

2018-06-13 16:17
于瞳yi1999
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2018-4-28
  得分:0 
回复 3楼 幻紫灵心
非常感谢~~
2018-06-13 16:25
幻紫灵心
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:山咔咔里面
等 级:版主
威 望:15
帖 子:104
专家分:567
注 册:2018-3-30
  得分:0 
回复 4楼 于瞳yi1999
2018-06-13 16:30
lin5161678
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:10
帖 子:410
专家分:1476
注 册:2011-12-3
  得分:2 
以下是引用幻紫灵心在2018-6-13 16:17:51的发言:

用数组的:#include"stdio.h"
main()
{
    int i,n,score[100000],max;
    scanf("%d",&n);
    if(n<1 || n>100000)
        return 0;
    for(i=0;i<n;i++)
        scanf("%d",&score);
    max=0;
    for(i=1;i<n;i++)
        if(score>score[max])
            max=i;
    printf("%d",score[max]);
 }

用指针动态数组节约内存  ?
#include"stdio.h"
#include"stdlib.h"
main()
{
    int i,n,*score,max;
    scanf("%d",&n);
    if(n<1 || n>100000)
        exit(0);
    score=(int *)malloc(n*sizeof(int));
    for(i=0;i<n;i++)
        scanf("%d",&score);
    max=0;
    for(i=1;i<n;i++)
        if(score>score[max])
            max=i;
    printf("%d",score[max]);
 }

    int i,n,score[100000],max;
搞不好会爆栈
2018-06-18 18:15
书生牛犊
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:星夜征程
等 级:城市猎人
威 望:9
帖 子:1061
专家分:5089
注 册:2015-10-27
  得分:2 
只是要知道最高分的话,可以不用一一记录保存所有学生的成绩。
程序代码:
int main(){
int n=0;
scanf("%d",&n);
int max=0;
scanf("%d",&max);
for(;--n;){
scanf("%d",&temp);
if(temp>max)max=temp;
}
printf("%d",max);
return 0;
}

备:上述代码没有经过实际测试,可能有错误。只是一个思路

φ(゜▽゜*)♪
2018-06-18 18:47
花脸
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:3
帖 子:696
专家分:594
注 册:2017-1-4
  得分:2 
#include <iostream>
#include <algorithm>
using namespace std;

int a[100005];
int main()
{
    int n;
    cin>>n;
    for(int i=0;i<n;++i)
        cin>>a[i];
    cout<<(*max_element(a,a+n))<<endl;
}
2018-06-18 22:19







关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.023916 second(s), 8 queries.
Copyright©2004-2018, BCCN.NET, All Rights Reserved