| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 422 人关注过本帖
标题:大家来看看这个程序啊`为什么我运行的结果总是不对呢??
只看楼主 加入收藏
war3wudi
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2006-12-17
收藏
 问题点数:0 回复次数:6 
大家来看看这个程序啊`为什么我运行的结果总是不对呢??

这是20个随机数字里面 选择一个数字看它出现了多少次
#include <stdio.h>
#include <stdlib.h>
aa (int a);
void main()
{
int k,num[20],search,r;
for (k=0;k<20;k++)
{
num[k]=rand()%10;
printf("%d ",num[k]);
}
printf("输入要检索的数字:");
scanf("%d",&search);
r=aa (search);
printf("出现了%d次",r);
}

aa (int a)
{
int i,r=0,b[20],k;
for (k=0;k<20;k++)
{
b[k]=rand()%10;
if(a==b[k])
r++;

}
return r;

}

搜索更多相关主题的帖子: 结果 运行 
2006-12-17 23:57
tianguisu
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2006-12-1
收藏
得分:0 
以下是引用war3wudi在2006-12-17 23:57:51的发言:

这是20个随机数字里面 选择一个数字看它出现了多少次
#include <stdio.h>
#include <stdlib.h>
aa (int a);
void main()
{
int k,num[20],search,r;
for (k=0;k<20;k++)
{
num[k]=rand()%10;
printf("%d ",num[k]);
}
printf("输入要检索的数字:");
scanf("%d",&search);
r=aa (search);
printf("出现了%d次",r);
}

aa (int a)
{
int i,r=0,b[20],k;
for (k=0;k<20;k++)
{
b[k]=rand()%10;
if(a==b[k])
r++;

}
return r;

}

这要对就奇怪了!你aa(int a)根你主函数完全没任何关系,也就是你第一次输出的NUM和你的搜索没关系!!!

2006-12-18 00:09
war3wudi
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2006-12-17
收藏
得分:0 
那要怎么改呢``
2006-12-18 00:12
song4
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:38
帖 子:1533
专家分:4
注 册:2006-3-25
收藏
得分:0 
C++里有人回答

嵌入式 ARM 单片机 驱动 RT操作系统 J2ME LINUX  Symbian C C++ 数据结构 JAVA Oracle 设计模式 软件工程 JSP
2006-12-18 09:36
wordess
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2006-10-27
收藏
得分:0 
你是在什么环境下运行啊,,我在VC里运行正常,,没问题~!
2006-12-18 13:28
wordess
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2006-10-27
收藏
得分:0 

只不过你的随机数是固定的,,是因为你没有定义种子的事吧,给你一个例子~!(VC上的帮助)
Example
/* RAND.C: This program seeds the random-number generator
* with the time, then displays 10 random integers.
*/

#include <stdlib.h>
#include <stdio.h>
#include <time.h>

void main( void )
{
int i;

/* Seed the random-number generator with current time so that
* the numbers will be different every time we run.
*/
srand( (unsigned)time( NULL ) );

/* Display 10 numbers. */
for( i = 0; i < 10;i++ )
printf( " %6d\n", rand() );
}

Output
6929
8026
21987
30734
20587
6699
22034
25051
7988
10104

2006-12-18 13:31
senyee
Rank: 1
等 级:新手上路
帖 子:422
专家分:0
注 册:2006-11-28
收藏
得分:0 

r=aa (search,a);

aa(int a,int b[])


菜鸟~~请多指教~~
2006-12-18 14:55
快速回复:大家来看看这个程序啊`为什么我运行的结果总是不对呢??
数据加载中...
 
   



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

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