① c语言中怎样从一串数字中提取一个数
可以先把这个数字改成一个字符串, 然后再把你要的第几个数字提出来即可, 如:
int i = 12345;
char ch[10];
sprintf(ch, "%d", i); //把i输出到字符串(和printf用法一样)
printf("%c\n", ch[2]); //输出这个字符串的第3个字符(下标是2)
就会输出3
② C语言抽取随机数怎么编写
源程序代码以及算法解释如下:
产生1-10随机数程序:
#include <iostream>
#include <time.h>
using namespace std;
int main()
{
const int n = 10;//定义随机数个数
int number[n] = { NULL };//定义随机数存储的数组
srand((unsigned)time(NULL));//初始化随机函数
number[0] = rand() % n;//第一个随机数无需比较
cout << number[0] << " ";
for (int i = 1; i < n; i++)//其余随机数循环产生
{
int j = 0;
number[i] = rand() % n;//产生随机数
while (1)
{
if (number[i] == number[j])//若有相同则继续循环重新安排随机数
{
number[i] = rand() % n;//产生随机数
j = 0;//若遇到相同的就从头遍历
continue;
}
if (j == (i - 1))//若遍历完就跳出
break;
j++;
}
cout << number[i] << " ";
}
cout << endl;
return 0;
}
程序运行结果如下:
(2)c语言从指定数抽取数扩展阅读:
利用vector进行随机数输出:
#include <iostream>
#include <vector>
#include <time.h>
using namespace std;
int main()
{
const int n = 10;
int randnum;
vector<int> number;
for (int i = 0; i < n; i++)
{
number.push_back(i + 1);//从尾部添加元素
cout << number[i] << " ";
}
cout << endl;
srand((unsigned)time(NULL));
for (int j = 0; j < n; j++)//其余随机数循环产生
{
randnum = rand() % (n - j);//rand函数生成的随机数是0-(n-1)
cout << number.at(randnum) << " ";
number.erase(number.begin() + randnum);
}
cout << endl;
return 0;
}
③ C语言编程:从字符串中提取数字
1、首先打开visual studio软件,新建一个C语言文件,如下图所示。
④ C语言中如何将一个数字的各个位上的数分别提取
#include<stdio.h>
int main()
{
int a;
int b[111]={0};//这里数组必须赋于初值,不然系统会随机赋值,将输出错误!赋值任何数
scanf("%d",&a);//都行!
int i=0;
while(a!=0)
{
b[i]=a%10;//将各个位的数赋值于数组b[i] ;
a/=10; //现在数组b[i]记录的是各个位上的数的反序;
i++;//i记录这个数是几位数 ;
}
for(int j=i-1;j>=0;j--)
{
printf("%d ",b[j]);//最后反序输出数组b[j];
}
return 0;
}
有不理解的地方,欢迎追问。望采纳!
⑤ c语言中在给出的数据中随机取数
#include
#include
#include
int
main(
)
{
int
i;
double
num
[10]=
{
1.2,
1.5,
3.5,
4.7,
2,
3,
4,
5,
6,
7
};
//
……
srand(
(unsigned)time(
NULL
)
);
//
先产生一个0
到
num-1
的随机数,从你的数据数组中取那个就行了。
//
产生方法rand()
%
10,产生10以内随机数。
//
比如下面产生10个随机数,及其对应的你
的数据
for(
i
=
0;
i
<
10;i++
)
printf(
"i
=
%d,
num[i]
=
%lf\n",
rand()%10,
num[i]
);
return
0;
}
⑥ 怎么让c语言在规定的数据中抽取其中任意一个
#include<stdio.h>
#include<time.h>//当前时间做种子需要用
#include<stdlib.h>//随机数需要用
intmain()
{
intnum={13,15,28,76,501};
srand(time(0));//随机数种子
intrand=rand()%5;//生成0~4之间的随机数
inta=num[rand];//随机赋值
return0;
}
⑦ 如何用C语言实现 从指定的几个数中随机抽出一个数。这几个数不是连续的,而是零散的。
M是指定的数的个数,nums[]存放需要的数
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
#define M 10
int main()
{
int nums[M] = {1, 3, 5, 7, 9, 11, 13, 15, 17, 19};
srand((unsigned)time(0));
printf("%d\n", nums[rand()%M]);
}
⑧ 如何用c语言实现抽取随机数
用标准c就可以实现
需要用到的两个函数在包含在stdlib.h头文件里,分别是
void rand ( unsigned int seed ); //设置随机化种子
int rand ( void ); //产生0到RAND_MAX之间的随机数,RAND_MAX是stdlib.h里定义的数字。
其实这两个函数实现产生的是假随机数,所以真正实现随机还要借助time.h里面的函数time()。
具体可以参考下面的方法:
//产生0-9只间的随机数
#include<stdlib.h>
#include<stdio.h>
#include<time.h>
int Random()
{
srand(time(NULL));
return rand()%9;
}