| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1039 人关注过本帖
标题:求老哥们帮帮我看哈这程序,运行不出我要的结果,谢了!!!
只看楼主 加入收藏
忘了叫啥
Rank: 1
来 自:安顺
等 级:新手上路
帖 子:5
专家分:0
注 册:2010-4-3
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:10 
求老哥们帮帮我看哈这程序,运行不出我要的结果,谢了!!!
#include<stdio.h>
main()
 {
 int a,b,i,j=0,s[10];          /*a,b为输入的任意数,j计数*/
  printf("the areas:\n");
  scanf("%d%d",&a,&b);
 printf("------------\n");
 printf("input ten numbers:\n");
  for(i=0;i<10;i++)
    scanf("%d",s[i]);          /*输入任意10个数*/
  printf("-----------\n");
  for(i=0;i<10;i++)
   if(s[i]>=a&&s[i]<=b)        /*将输入的数与a,b比较*/
   j++;
   printf("%d",j);             /*输出满足[a,b]的总个数*/
   getch();
 }   
 
图片附件: 游客没有浏览图片的权限,请 登录注册

帮我看哈、应该是输出8,
谢了!!
搜索更多相关主题的帖子: 哥们 结果 运行 
2010-04-21 18:56
jack2106
Rank: 2
等 级:论坛游民
帖 子:89
专家分:19
注 册:2009-3-7
收藏
得分:0 
scanf("%d",s[i]);      ===>    scanf("%d",&s[i]);     少个&符号;
再一个,    if(s[i]>=a&&s[i]<=b)  a和b的大小并没规定,你要是输入的a比b大,那就。。。

比梦想更伟大的是实现梦想的行动力!
2010-04-21 19:32
ljcbc
Rank: 1
来 自:重庆
等 级:新手上路
帖 子:15
专家分:9
注 册:2010-4-21
收藏
得分:0 
getch();  是不是要加头文件:conio.h 哦
2010-04-21 20:00
南国利剑
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:29
帖 子:1165
专家分:3536
注 册:2010-4-12
收藏
得分:0 
回复 楼主 忘了叫啥
输入语句应该更正为 scanf("%d",&s[i]);
这样就可以了。其他的应该都正确,
少了&输入的数字就不能够正确的被传递给数组,
所以什么情况都有可能发生。

我以前也经常犯这种错误,一起进步。

南国利剑
2010-04-21 20:07
心雨123aa
Rank: 2
来 自:湛江
等 级:论坛游民
帖 子:55
专家分:38
注 册:2010-3-28
收藏
得分:8 
#include<stdio.h>
int main()
{
    int a,b,t,i,j=0,s[10];          /*a,b为输入的任意数,j计数*/
      printf("the areas:\n");
      scanf("%d%d",&a,&b);
    printf("------------\n");
    printf("input ten numbers:\n");
      for(i=0;i<10;i++)
        scanf("%d",&s[i]);          /*输入任意10个数*/
      printf("-----------\n");
      for(i=0;i<10;i++)
       {
          if(a>b)
             {
                t=a;
                a=b;
                b=t;           /*小数赋给a,大数赋给b*/
             }   
          if(s[i]>=a&&s[i]<=b)        /*将输入的数与a,b比较*/
           j++;
       }
           printf("%d\n",j);  /*输出满足[a,b]的总个数*/
}   
自己好好分析一下吧!!(红色部分的)

[ 本帖最后由 心雨123aa 于 2010-4-21 23:58 编辑 ]
2010-04-21 20:33
NOMIPS
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:86
专家分:537
注 册:2010-3-31
收藏
得分:0 
楼上正解 呵呵,楼主好好体会了。
2010-04-21 20:37
hughlee82
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2010-4-21
收藏
得分:0 
有高手呀
2010-04-21 21:49
zjhwade
Rank: 1
等 级:新手上路
帖 子:14
专家分:7
注 册:2010-4-21
收藏
得分:0 
顶起5楼…
很对很对!
2010-04-23 12:14
b001lcp
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:45
专家分:157
注 册:2010-3-17
收藏
得分:12 
程序代码:
#include<stdio.h>
int main()
{
    int a,b,t,i,j=0,s[10]; /*a,b为输入的任意数,j计数*/

    printf("the areas:\n");
    scanf("%d%d",&a,&b);
    if (a>b)            //不要放到for循环,a和b刚输入时作一次交换即可
    {
        t=a;
        a=b;
        b=t; /*小数赋给a,大数赋给b*/
    }  

    printf("------------\n");
    printf("input ten numbers:\n");
    for(i=0;i<10;i++)
        scanf("%d",&s[i]);          /*输入任意10个数*/

 
    printf("-----------\n");
    for(i=0;i<10;i++)
    {
         
        if (s[i]>=a&&s[i]<=b)        /*将输入的数与a,b比较*/
            j++;
     }
     printf("%d\n",j);  /*输出满足[a,b]的总个数*/
}   
5楼很正确,不过有个小效率问题
2010-04-23 12:24
南国利剑
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:29
帖 子:1165
专家分:3536
注 册:2010-4-12
收藏
得分:0 
顶楼上
写代码时要注意讲究效率。

南国利剑
2010-04-23 12:45
快速回复:求老哥们帮帮我看哈这程序,运行不出我要的结果,谢了!!!
数据加载中...
 
   



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

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