| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1502 人关注过本帖
标题:在一个整形数组中(元素值都大于0)查找从键盘上输入的一个整数,找到后,求 ...
只看楼主 加入收藏
chaoba
Rank: 1
等 级:新手上路
帖 子:20
专家分:5
注 册:2016-11-20
结帖率:100%
收藏
已结贴  问题点数:1 回复次数:3 
在一个整形数组中(元素值都大于0)查找从键盘上输入的一个整数,找到后,求它前面的所有整数的和
调试后发现最后的i还是等于10.并没有找到要查找的那个数!求帮忙
#include<stdio.h>
int main()
{
    int a[10],i,j,sum=0,x;
    for (i=0;i<10;i++)
    {scanf("%d",&a[i]);
   
    }
    scanf("%d",&x);
    for (i=0;i<10;i++)
    {
        if (i==a[i])
        {
            printf("OK");
        }
    }

   
    for (j=0;j<i;j++)
    {
        sum=sum+a[j];
      


    }
sum=sum-x;
  printf("%d",sum);
}
搜索更多相关主题的帖子: 元素 键盘 
2016-11-22 17:30
chaoba
Rank: 1
等 级:新手上路
帖 子:20
专家分:5
注 册:2016-11-20
收藏
得分:0 
刚刚发现那个循环i<10不行。想知道该咋写

[此贴子已经被作者于2016-11-22 18:01编辑过]

2016-11-22 18:00
九转星河
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:长长久久
等 级:贵宾
威 望:52
帖 子:5023
专家分:14003
注 册:2016-10-22
收藏
得分:1 
诶,我都无语了~建议你还是看看break和continue的用法~

#include<stdio.h>
int main()
{
    int a[10],i,j,sum=0,x;
    for (i=0;i<10;i++)
    {scanf("%d",&a[i]);
   
    }
    scanf("%d",&x);
    for (i=0;i<10;i++)
    {
        if (i==a[i])//这里是x==a[i]
        {
            printf("OK");
            //加个break打破循环;
        }
    }

   
    for (j=0;j<i;j++)//附加一句如果没有找到就不执行循环,此时i=11~for(j=0;j<i&&i>10;j++)
    {
        sum=sum+a[j];   
    }
    sum=sum-x;//这句去掉~改为
  printf("%d",sum);
}
收到的鲜花
  • chaoba2016-11-22 21:54 送鲜花  1朵   附言:我很赞同

[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2016-11-22 18:16
chaoba
Rank: 1
等 级:新手上路
帖 子:20
专家分:5
注 册:2016-11-20
收藏
得分:0 
回复 3楼 九转星河
嗯嗯,
2016-11-22 21:43
快速回复:在一个整形数组中(元素值都大于0)查找从键盘上输入的一个整数,找到 ...
数据加载中...
 
   



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

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