标题:帮忙看一下简单的for嵌套if问题,谢谢
只看楼主
qhxxbc
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:163
专家分:174
注 册:2010-9-14
结帖率:95%
已结贴  问题点数:20 回复次数:7 
帮忙看一下简单的for嵌套if问题,谢谢
void main()
{
    int a[9], i;
    printf ("9 number: \n");
    for(i=0; i<9; i++)
        scanf ("%d", &a[i]);
    for(i=0; i<9; i++)
    printf ("n=%d\n", a[i]);
    printf("\n");
    for(i=0; i<=6; i++)
    {   
        if (a[i]<a[i+1]&&a[i+1]>a[i+2])        
        break;
        printf("%d %f\n", i, a[i]);
    }            
}
程序说明:想求某一周期函数的最大值,如1 2 3 4 5 4 3 2 1,最大值应该为5,但红色部分不能运行,加不加break都一样。
搞了一上午没结果,希望得到您的帮助!谢谢!
搜索更多相关主题的帖子: 嵌套 
2010-11-26 11:38
cnfarer
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:179
帖 子:3330
专家分:21157
注 册:2010-1-19
得分:7 
将break;去掉!
程序代码:
int main(int argc, char *argv[])
{
    int a[9], i;
    printf ("9 number: \n");
    for(i=0; i<9; i++)
        scanf ("%d", &a[i]);
    for(i=0; i<9; i++)
    printf ("n=%d\n", a[i]);
    printf("\n");
    for(i=0; i<=6; i++)
    {   
        if (a[i]<a[i+1]&&a[i+1]>a[i+2])       
            printf("%d %d\n", i+1, a[i+1]);
    }           
}
收到的鲜花
  • qhxxbc2010-11-26 13:07 送鲜花  2朵  

★★★★★为人民服务★★★★★
2010-11-26 12:00
爱得心好累
Rank: 2
等 级:论坛游民
帖 子:60
专家分:24
注 册:2009-11-22
得分:0 
很久没研究C语言了

[url]http://shishangxiaowu277.[/url]出售时尚女装,话费、QQ、以及游戏充值。价格实惠
2010-11-26 12:10
五当家
Rank: 12Rank: 12Rank: 12
等 级:火箭侠
威 望:2
帖 子:1112
专家分:3674
注 册:2010-10-20
得分:7 
void main()
{
    int a[9], i,max=0,n;
    printf ("9 number: \n");
    for(i=0; i<9; i++)
        scanf ("%d", &a[i]);
    for(i=0; i<9; i++)
    printf ("n=%d\n",a[i]);
    for(i=0; i<=6; i++)
    {   
        if (max<a[i])
        {
            max=a[i];
            n=i;
        }
    }  
  printf("%d %d\n",n,max);
}
这样能符合你的要求么?
收到的鲜花
  • qhxxbc2010-11-26 13:07 送鲜花  2朵  

经验积累中............
2010-11-26 12:20
xiaomarn
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:5
帖 子:348
专家分:2026
注 册:2009-3-18
得分:6 
程序代码:
#include<stdio.h>

int
main()
{
      int a[9], i;

      printf ("9 number: \n");
      for(i=0; i<9; i++)
            scanf ("%d", &a[i]);
      for(i=0; i<9; i++)
            printf ("n=%d\n", a[i]);
      printf("\n");
      getch();
      for(i=0; i<=6; i++)
      {  

            if (a[i]<a[i+1]&&a[i+1]>a[i+2])
            {
                  printf("%d %d\n", i+2, a[i+1]);
                  break;
            }
      }
      getch();
      return 0;
}
PS:五当家换头像了啊!
收到的鲜花
  • qhxxbc2010-11-26 13:08 送鲜花  1朵  
2010-11-26 12:20
qhxxbc
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:163
专家分:174
注 册:2010-9-14
得分:0 
以上3位提供的程序均可运行,太感谢了!

蝙蝠侠应该是在此处粗心了 printf("%d %d\n", i+2, a[i+1]);
嘿嘿,再次感谢3位各显神通!!!

非计算机专业自学新手向大家请教
2010-11-26 13:10
qhxxbc
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:163
专家分:174
注 册:2010-9-14
得分:0 
补充说明一下,我的主要问题是 printf("%d %f\n", i, a[i])中%f打错了,粗心原因

非计算机专业自学新手向大家请教
2010-11-26 13:23
五当家
Rank: 12Rank: 12Rank: 12
等 级:火箭侠
威 望:2
帖 子:1112
专家分:3674
注 册:2010-10-20
得分:0 
回复 5楼 xiaomarn
嗯...

经验积累中............
2010-11-26 16:20



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-326951-1-1.html




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

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