C/C++/C#从数组中随机抽取一个数(要源码/重奖)

供稿:hz-xin.com     日期:2025-01-15
C/C++问题,请问如果我要在1,2,3,4这四个已知数中随机抽取一个数,需要用到哪些函数?

#include"stdio.h"
#include"stdlib.h"
int main(){
while(1){
printf("%d
",rand()%3+1);
system("pause");
}
return 0;
}

#include#include#includeint main(void){int a[3],i,j,temp,flag;/*flag用来标记取到的随机数和之前的有没有重复,1代表有重复,0代表没有重复 */srand(time(0));for(i=0;i<3;i++){flag=0;temp=rand()%10+1;for(j=0;j<i;j++){if(temp==a[j])//如果有重复 {flag=1;break;}}if(flag==1)//i--为了抵消for循环括号里的i++ {i--;continue;//重新取数 }else{a[i]=temp;}}for(i=0;i<3;i++)printf("%d
",a[i]);return 0;}

本人在Borland C++平台已经成功运行该代码,没问题的。
#include<iostream>
#include<iomanip>
#include<cstdlib>
#include<ctime>
using namespace std;
int main()
{
int a[10][6]={1,2,3,4,5,6,7,8,9,0,
11,12,13,14,15,16,17,18,19,20,
21,22,23,24,25,26,27,28,29,30,
31,32,33,34,35,36,37,38,39,40,
41,42,43,44,45,46,47,48,49,50,
51,52,53,54,55,56,57,58,59,60};
srand(time(0));
cout<<a[rand()%10][rand()%6]<<endl;
cin.get();
return 0;
}

//从数组中提取一组(六个)随机数,
//一共循环抽取5次并且将抽取的结果
//保存在一个一个RADOM.TXT文件里
//(分行保存).
#include<iostream>
#include<iomanip>
#include<cstdlib>
#include<ctime>
#include<fstream>

using namespace std;

int main()
{
ofstream outClientFile("c:\\RADOM.TXT", ios::out);
if(!outClientFile)
{
cerr<<"File can not open"<<endl;
exit(1);
}
int a[10][6]={1,2,3,4,5,6,7,8,9,0,
11,12,13,14,15,16,17,18,19,20,
21,22,23,24,25,26,27,28,29,30,
31,32,33,34,35,36,37,38,39,40,
41,42,43,44,45,46,47,48,49,50,
51,52,53,54,55,56,57,58,59,60};
srand(time(0));
for(int j=0;j<5;j++)
{
for(int i=0;i<6;i++)
outClientFile<<setw(5)<<a[rand()%10][rand()%6];
outClientFile<<endl;
}
cin.get();
return 0;
}
/*保存后的格式为:右对齐5个字符位置
因为网页上不能显示空格,在此我举例说明
其中@表示空格,而非程序中显示
@@@@5@@@43@@@33@@@44@@@45@@@39
@@@@5@@@19@@@@4@@@21@@@51@@@@9
@@@13@@@28@@@18@@@51@@@49@@@49
@@@38@@@34@@@@6@@@32@@@15@@@@4
@@@31@@@17@@@39@@@16@@@@5@@@30
*/

//将给定数组从一个叫做SOURCE.TXT文件里
//读取10行6列的数组(文件里每行只有6个数)
#include<iostream>
#include<iomanip>
#include<cstdlib>
#include<ctime>
#include<fstream>

using namespace std;

void outputLine(int num1,int num2,int num3,int num4,int num5,int num6 )
{
cout<<setw(5)<<num1<<setw(5)<<num2<<setw(5)<<num3<<setw(5)<<num4<<setw(5)<<num5<<setw(5)<<num6<<endl;
}

int main()
{
ifstream inClientFile("c:\\SOURCE.TXT", ios::in);
if(!inClientFile)
{
cerr<<"File can not open"<<endl;
exit(1);
}
int num1,num2,num3,num4,num5,num6;
while(inClientFile>>num1>>num2>>num3>>num4>>num5>>num6)
outputLine(num1,num2,num3,num4,num5,num6);
cin.get();
return 0;
}
/*source文件格式和上面保存的格式是一样的
43 7 38 42 27 42
19 9 48 58 48 55
49 59 53 60 20 73
35 87 45 83 96 92
35 43 51 52 1 22
43 7 38 42 27 42
12 8 60 55 35 56
51 3 82 58 68 55
99 93 29 60 20 24
63 87 45 83 26 92
*/

假设数组名字为iDat[10][6];

初始化函数中:

srand(time(NULL));

随即抽取数据:

int x = rand()%10;
int y = rand()%6;

theData = iDat[x][y];

theData里面的值就是随即抽取的值了。

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

void main()
{
//二维数组的初始化
int b[10][6]=
{
{2,3,76,12,56,2},
{43,5,12,6,23,65},
{87,62,36,74,8,34},
{27,34,13,45,29,54},
{45,3,6,89,54,72},
{52,38,43,57,21,9},
{76,33,21,76,34,2},
{34,76,3,5,85,456},
{234,456,76,345,234,123},
{342,65,435,789,345,234}

};

printf("随即抽取的数为:%d\n",b[rand()%10][rand()%6]);
}

以下代码为VC++6.0上编译运行通过.
如果要抽的是一组数可再联系.

#include"cstdlib"
#include"iostream"
#include"ctime"
using namespace std;

int a[10][6];

class chanshengshuzu //初始化10X6的数组
{
public:chanshengshuzu();
~chanshengshuzu();
};

class xuanze//显示随机取的数
{public:void xianshi();
};

int main()
{
srand((unsigned)time(NULL));
chanshengshuzu cssz();
xuanze pt;
pt.xianshi() ;
return 0;
}

chanshengshuzu::chanshengshuzu() {
extern a[10][6]={1,2,3,4,5,6,1,2,3,4,5,6,1,2,3,4,5,6,1,2,3,4,5,6,1,2,3,4,5,6,1,2,3,4,5,6,1,2,3,4,5,6,1,2,3,4,5,6,1,2,3,4,5,6,1,2,3,4,5,6};//此处可修改数组的值!
}

void xuanze :: xianshi ()
{ int x,y=0;
x=rand()%10;
y=rand()%6;
cout<<"这次随机抽取的是第"<<x<<"行,第"<<y<<"列的数: "<<a[x][y];
}

rand只是伪随机。

C#与C数据类型是如何对应的
一般而言,C\/C++与C#之间的数据类型对应如下:C\/C++ C int int unsigned int uint short short unsigned short ushort char sbyte或者char bool(属于C++) bool long long unsigned long ulong string(属于C++) string ———(WIndows API类型对应)DWORD、HANDLE、HDC...

计算机语言排行是怎样的?什么是最好的语言?
计算机语言排行是Python、C语言、Java、C++、C#。1、Python Python的历史可以追溯到1989年,因其高度可读的代码而深受其粉丝的喜爱。许多程序员认为这是最简单的语言开始。Python是一种面向对象的解释型计算机程序设计语言,由荷兰人1989年发明,第一个公开发行版发行于1991年。Python语法简洁清晰,特色之一是...

大学里面的计算机编程的课 是从入门开始教的吗?意思就是说即使你没有...
亲,大学里面也分计算机系和非计算机系的课程。计算机编程主流的是教C、C++、C#、JAVA这类编程语言,逐层渐进。1、是从入门开始交,从算法,语句,判断等再到实例。2、意思是没有基础也可以学。但是!!!3、是否跟的上教学进度,非常需要课后的练习!不然,只能达到不挂科的程度。编程是一门非常严谨...

C#和C++的区别?
C#和C++的区别为:性质不同、来源不同、内存释放不同。一、性质不同 1、C#:C#是微软公司发布的一种面向对象的、运行于.NET Framework和.NET Core(完全开源,跨平台)之上的高级程序设计语言。2、C++:C++既可以进行过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计,还可以进行以...

路径\/\/什么意思
C程序文件路径用双斜杠\/\/ 因为反单斜杠\\在C\/C++\/C# 中是转义前导字符,例如 \\n 代表换行。为了避免歧义,路径中的\\必须用\/\/。1、C程序释义 (C程序相关书籍)C语言是目前世界上最流行、使用最广泛的面向过程的高级程序设计语言。 C语言对操作系统和系统使用程序以及需要对硬件进行操作的场合,用C...

学c语言不学c++
C++就是将一个任务划分成一个个不同功能的模块,各模块实现了,你将他们合理组合就形成了你想要的程序。C++中也是需要面向过程的,你不可能实现每个模块进也始终面向对象来实现,当模块划分到极小时就是面向过程了。C\/C++\/C#\/JAVA等等,都只是一门语言,你只掌握语言是完全不够的,想要深入,你还要...

clC,C#和C++是不一样的啊?
http:\/\/www.bc-cn.net\/Article\/kfyy\/cyy\/jc\/ C++ 是在C的基础上改进后的一种编程语言,主要是增添了许多新的功能,难度也比C大,和C一样侧重于计算机底层操作,也就是系统软件的开发。 C#是在C++的基础上再一次改进后的编程语言,相比C++而言难度有所减小(微软是这么说的),侧重于网络和数据...

c语言和c#和c++有什么差别?
C#的运行原理也与Java类似,都是通过运行时库来支持运行。然而,C#的应用平台相对有限,它目前主要支持Windows和Linux。在Windows上,C#的支持由微软提供;而在Linux上,MONO提供了支持,实际上是将C#应用转化为Java应用。因此,C#本质上仍然只被微软的操作系统所支持。C\/C++的优点在于与底层硬件的接近程度...

C和C++还有C#有什么区别吗?
C和C++还有C#的区别:一:C语言。C语言诞生得非常早,当时人们普遍还习惯用汇编语言编写软件,并且没有什么统一,通用的操作系统,基本上软件都是从0开始写的。C语言的方针便是比汇编方便易用,一起不要损失汇编的表达能力。所以C语言可以看成是“高级的汇编”语言。C语言的源代码基本上可以非常容易地...

C++怎么调用C#函数
;c->Name = "zzj";printf("%s\\n", c->Name);return 0;} 3 几点要记住:1 使用#using引用C# DLL,而不是#include。我就是想当然的使用了后者,所以浪费了一上午的时间;2 别忘了using namespace CSLib;3 使用C++\/clr语法,采用正确的访问托管对象,即:使用帽子'^',而不是星星'*'。