| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 569 人关注过本帖
标题:编程菜鸟,望能指教
只看楼主 加入收藏
哈吉
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2015-3-15
结帖率:0
收藏
已结贴  问题点数:20 回复次数:7 
编程菜鸟,望能指教
写一算法,从键盘输入若干个非0整数(以0作为结束标志),找出其中最大和最小的数,并分析算法的时间复杂度(输入数据不需要保存)
搜索更多相关主题的帖子: 键盘 
2015-03-15 21:36
lxmaint
Rank: 2
等 级:论坛游民
威 望:1
帖 子:20
专家分:74
注 册:2015-3-15
收藏
得分:4 
如果只是找最大值和最小值,普通的比较就行,复杂度O(n)

2015-03-16 00:39
不知道耶
Rank: 1
等 级:新手上路
帖 子:1
专家分:4
注 册:2015-3-16
收藏
得分:4 
2015-03-16 00:44
afanihao
Rank: 2
等 级:论坛游民
威 望:1
帖 子:62
专家分:99
注 册:2015-3-13
收藏
得分:4 
已经收入例题,
参考第7章while语句, 第9章“输入参数与输出参数”

以下是引用哈吉在2015-3-15 21:36:12的发言:

写一算法,从键盘输入若干个非0整数(以0作为结束标志),找出其中最大和最小的数,并分析算法的时间复杂度(输入数据不需要保存)
2015-03-16 11:45
code力力
Rank: 5Rank: 5
来 自:宜昌
等 级:职业侠客
威 望:2
帖 子:215
专家分:338
注 册:2015-1-12
收藏
得分:4 

你醒了?快起来敲代码!!
2015-03-16 12:12
lyd910915
Rank: 2
等 级:论坛游民
帖 子:7
专家分:18
注 册:2015-3-16
收藏
得分:4 
首先,我也是菜鸟,下面的程序是我写在vc里面可以运行,写的不好请包涵。
#include<stdio.h>
void main()
{
    int i=0,j=0,n,min,max,a[50];
    printf("从键盘输入若干个非零整数: \n");
    for(i=0;i<50;i++)
    {
        scanf("%d",&a[i]);
        j++;
        if(a[i]==0)
            break;
    }
    max=a[0];
    min=a[0];
    for(i=1;i<j-1;i++)
    {
        if(a[i]<min)
            min=a[i];
        else
            continue;
    }
    for(i=1;i<j;i++)
    {
        if(a[i]>max)
            max=a[i];
        else
            continue;
    }
    printf("最大值:%d最小值:%d",max,min);
}
2015-03-16 12:45
panfeng415
Rank: 1
等 级:新手上路
帖 子:13
专家分:4
注 册:2015-2-7
收藏
得分:4 
#include <stdio.h>
void minmax(int number[],int *cnt,int *min,int *max);
int main ()
{
    printf("请输入一组数字非零整数(输入0代表结束),我来帮你找最大值和最小值\n");
    int i,j;
    int x;
    int cnt=1;
    int number[cnt];
    scanf("%d",&x);
    for(i=0;i<cnt;i++)
    {
        
        if (x!=0)
        {
            number[i]=x;
            cnt++;
            scanf("%d",&x);
        }
        else
        {
             continue;
        }
    }
    //将输入的数存入合适大小的数组中
    printf("%d\n",cnt);
    for (j=0;j<cnt-1;j++)
    {
        printf("%d\t",number[j]);   
    }
    //检查存入是否正确

    int max=number[0];
    int min=number[0];
    minmax(number,&cnt,&min,&max);
    printf ("max=%d,min=%d",max,min);
   
    return 0;
     
 }
void minmax(int number[],int *cnt,int *min,int *max)
{
    int i;
    //int *pmin;
    //int *pmax;
    //int *pcnt;
     //int n = *cnt;
    for(i=1;i<*cnt-1;i++)
    {
       if(number[i]<*min)
        {
            *min=number[i];
        }
        if(number[i]>*max)
        {
            *max=number[i];
        }
        
    }
}
    //定义找出数组中最大最小值得函数
2015-03-16 17:25
panfeng415
Rank: 1
等 级:新手上路
帖 子:13
专家分:4
注 册:2015-2-7
收藏
得分:0 
六楼的帖子 是有安全隐患的 当输入的数大于50的时候 程序就不能运行了
我也是个初学者,写了个小程序,但是其中有BUG  不知道为什么数组中的第九个数总是1,求大神们给指点,其他运行正常
2015-03-16 17:27
快速回复:编程菜鸟,望能指教
数据加载中...
 
   



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

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