rand()函数产生的是一个伪随机数,重复调用该函数所产生的随机数字是相同的。要想每次执行产生不同的随机数,就需要用srand()函数进行随机初始化。
随机初始化函数srand()可以设置随机数生成器的种子,不同的种子将产生不同的随机数。在程序运行过程中时间是一直变化的,所以我们可以借助 time.h 库中的 time(NULL) 函数返回计算机当前的时间数,把它作为随机数生成器的种子,从而在每次执行 rand( ) 函数时产生一个不同的随机数。
将当前时间设置为随机数生成器种子的代码如下:
srand(time(NULL));
2.拆分这个四位整数,获得其各位上的数字。
拆分一个数可以利用%和/运算符实现。假设 a、b、c、d 分别表示四位整数 number 的个、十、百、千位上的数,则它们的值可以分别表示为:
a = number % 10; //个位数
b = bumber / 10 % 10 //十位数
c = number / 100 % 10 //百位数
d = number / 1000 //千位数
好了齐活。
选择结构
选择结构也称分支结构,是一种根据判断条件的成立与否来确定程序执行方向的一种程序设计结构。if 和 else 是两个新的关键字,if 意为如果,else 意为否则,用来对条件进行判断,并根据判断结果执行不同的语句。
C 语言把任何非零和非空的值假定为 true,把零或 null 假定为 false。
最简单的if语句
if(判断条件)
{
语句块
}
前置条件:表达式必须要有,表达式外面的()也是必须的。
功能:如果表达式为真就执行语句块,否则就向下执行。
if实例
#include <stdio.h>
int main( )
{
if (9>5)
{
printf(“公众号:帅次”);
}
return 0;
}
运行结果
公众号:帅次
9>5,表达式为真,所以执行语句块。
语句块
所谓语句块(Statement Block),就是由{ }包围的一个或多个语句的集合。如果语句块中只有一个语句,也可以省略{}
if else语句
if (判断条件)
{
语句块1
} else {
语句块2
}
功能:如果表达式为真就执行语句块1,否则执行语句块2 。
if else实例
#include <stdio.h>
int main( )
{
int number=63;
if(number>=60)
printf(“及格啦!\n”);
else
printf(“不及格!\n”);
return 0;
}
运行结果
及格啦!
多个if else语句
#include <stdio.h>
int main( )
{
if (判断条件1){
语句块1
} else if (判断条件2){
语句块2
}else if (判断条件3){
语句块3
}else if (判断条件m){
语句块4
}else{
语句块5
}
}
if else语句的嵌套
#include <stdio.h>
int main( )
{
if (判断条件1){
if (判断条件2){
语句块1
}else{
语句块2
}
} else{
if (判断条件3){
语句块3
}else{
语句块4
}
}
}
switch case语句
在C语言中,应用条件语句 if-else 可以很方便地使程序实现两个分支,但是如果出现多个分支的情况,虽然可以使用 if-else 语句的嵌套,但是程序会显得比较复杂,不易阅读。
switch 是另外一种选择结构的语句,用来代替简单的、拥有多个分枝的 if else 语句。 基本格式如下:
switch(判断条件) //表达式的值只能在下面的 case 值表中出现一次
{
case 值 1:
语句块1
break; //break 语句的功能是跳出 switch 语句,执行其后面的语句
case 值 2:
语句块2
break;
case 值 3:
语句块3 //如果没有 break 语句,则会自动继续执行后续 case 的语句序列
case 值 n:
语句块 n;
break;
default:
语句块n+1; //default 部分是可选项
}<