| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1015 人关注过本帖
标题:求助,输入的10个数中的最大两个数?
只看楼主 加入收藏
boy054
Rank: 2
来 自:广东
等 级:论坛游民
帖 子:95
专家分:11
注 册:2009-10-21
结帖率:86.67%
收藏
已结贴  问题点数:5 回复次数:11 
求助,输入的10个数中的最大两个数?
#include <stdio.h>
void main ()
{
    int c, n, l;
    c=1;
    n=0;
    l=0;
    while (c<=10)
    {
        printf ("enter the numbers ");
        scanf ("%d",&n);
        c++;
        if (n>l)
            l=n;
        else l=l;
    }
    printf ("the largest is %d\n", l);
}

怎么用这程序求输入的10个数中的最大两个数?
搜索更多相关主题的帖子: 输入 
2010-02-02 15:03
yh19880108
Rank: 2
来 自:陕西
等 级:论坛游民
帖 子:34
专家分:24
注 册:2010-1-23
收藏
得分:1 
你 用 错了  应该 用数组 就能 解决了!!!
   你 用的n 他 每次 输入 一个上 一个 就被 系统 自动清除!
 不会 保留下来
2010-02-02 15:48
boy054
Rank: 2
来 自:广东
等 级:论坛游民
帖 子:95
专家分:11
注 册:2009-10-21
收藏
得分:0 
就用while if 不行吗?
2010-02-02 15:54
heartnheart
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
帖 子:335
专家分:1096
注 册:2009-7-10
收藏
得分:3 
可以啊,可以不用数组
#include<stdio.h>
#include<stdlib.h>
int main(void) {
    int max1,max2,n;
    int temp;
    max1 = max2 = n = temp = 0;
    printf("一共几个数?");
    scanf("%d",&n);
    if (n > 0) {
          printf("请输入第1个数: ");
          scanf("%d",&max1);
              for (int i = 2; i <= n; i++) {
                  printf("请输入第%d个数: ",i);                  
                  scanf("%d",&temp);
                  if (max1 < temp) {
                           max2 = max1;
                           max1 = temp;
                           
                  }
                  else if (max2 <= temp)
                       max2 = temp;
              }
          }
   

    printf("最大数为%d,次大数为%d",max1,max2);
    system("pause");
}

2010-02-02 16:29
wuqian860519
Rank: 1
等 级:新手上路
帖 子:2
专家分:1
注 册:2010-2-2
收藏
得分:1 
#include <stdio.h>
void main ()
{
    int c, n, l;
    c=1;
    n=0;
    l_1=0;
    l_2=0;
    while (c<=10)
    {
        printf ("enter the numbers ");
        scanf ("%d",&n);
        c++;
        if (n>=l_1)
        {
            l_1=n;
            l_2=l_1;
        }
    }
    printf ("the largest is %d  %d\n", l_1,l_2);
}
2010-02-02 16:43
boy054
Rank: 2
来 自:广东
等 级:论坛游民
帖 子:95
专家分:11
注 册:2009-10-21
收藏
得分:0 
回复 4楼 heartnheart
运行不了啊?
2010-02-02 16:51
boy054
Rank: 2
来 自:广东
等 级:论坛游民
帖 子:95
专家分:11
注 册:2009-10-21
收藏
得分:0 
回复 5楼 wuqian860519
得到的结果是两个相等的数啊?
2010-02-02 16:52
heartnheart
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
帖 子:335
专家分:1096
注 册:2009-7-10
收藏
得分:0 
回复 楼主 boy054
5楼的我还运行不了呢……
我用DevC++运行的啊,一切正常
2010-02-02 17:02
boy054
Rank: 2
来 自:广东
等 级:论坛游民
帖 子:95
专家分:11
注 册:2009-10-21
收藏
得分:0 
回复 8楼 heartnheart

D:\c\C_Source\3.27-1.c(12) : error C2143: syntax error : missing ';' before 'type'
D:\c\C_Source\3.27-1.c(12) : error C2143: syntax error : missing ';' before 'type'
D:\c\C_Source\3.27-1.c(12) : error C2143: syntax error : missing ')' before 'type'
D:\c\C_Source\3.27-1.c(12) : error C2143: syntax error : missing ';' before 'type'
D:\c\C_Source\3.27-1.c(12) : error C2065: 'i' : undeclared identifier
D:\c\C_Source\3.27-1.c(12) : warning C4552: '<=' : operator has no effect; expected operator with side-effect
D:\c\C_Source\3.27-1.c(12) : error C2059: syntax error : ')'
D:\c\C_Source\3.27-1.c(12) : error C2143: syntax error : missing ';' before '{'
Error executing cl.exe.

3.27-1.obj - 7 error(s), 1 warning(s)
出现这些错
2010-02-02 17:07
heartnheart
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
帖 子:335
专家分:1096
注 册:2009-7-10
收藏
得分:0 
你用的什么编译器啊,可能不符合ANSI C标准吧。你把int i放到前面去声明试试吧。
2010-02-02 17:16
快速回复:求助,输入的10个数中的最大两个数?
数据加载中...
 
   



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

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