C语言基础03
1.随机数 :一个范围内随机数字的返回值. 格式为: arc4random() % ( num大值 -num小值 + 1 ) + num小值.
int n,i= 0; //控制随机数的个数
int a=30,b=125; //设置区域范围
printf("Please Enter two different nums : ");
scanf("%d",&n);
while( i < n ){
int rand =arc4random() % ( b - a + 1) +a; //输出n个范围内的 随机数.
printf("%d\n",rand);
i++;
}
能输出多个随机数,需要求其最小的那个随机数? 怎么办,我们可以考虑新添加新变量min,同时 结合if判断 和循环赋值.
在上一个的 while循环里面进行一次判断就可以;
int min = 0 ; //假设min的值为0
...
while(..){
int rand =arc4random() % ( b - a + 1) +a;
if(rand < min ) {
min=rand; //第一次循环 min的值发生改变为rand. 循环还没结果,第二次循环在进行判断,第二次判断的min就是前面的第一个随机数....
}
}
printf(" %d",min);
}
2.continue和break的区别
continue和break都是应用在if或者循环里面,break是终止所有的循环次数,即使后面的循环还在.
而continue则只是针对这次循环,并且后面的代码不执行(忽略), 但是下一次循环依旧执行.
int sum = 0;
for( int i = 0; i <10 ;i++){
if( i % 2 == 0 ){
continue; // 在10以内的偶数,则停止该循环,后面代码不会执行.
printf("%d\n",i); // 不会有输出i .
}
sum+= i; //10以内的奇数和
}
while( i< 10){
if( i % 2 !==0){
break; //结束所有的循环,只要整除2 就直接输出while循环外面的输出语句了.
i++; //根本没执行++
}
printf("%d\n",i); // 只输出0和1 ,后面的循环结束了.
}
printf("break之后就来到了这里 嘿嘿!");
输入的字符比较是否有相同字符,最后输出完全不包含相同字符的字符串?
char a,b=0;
printf("Please enter char :");
a = getchar(); //或者文本流的第一个字符,相当于scanf,不过每次只获取一个字符.
while(a=getchar() !=EOF ){ //a获取下一个字符,并且循环继续获取 EOF就是最后一个字符的表示,
if( a = b ) {
//去除a 不知道怎么搞
printf("find an same ");
break;
}
b=a; //讲a的旧值赋值给b ,a的新值一直在循环. 这样就可以保证一直可以比较是否相同.
}
面试遇到一个数学问题,感觉有点贱,求2个数的最大公约数和最小公倍数?
很简单:2个数的最大的公约数一般是小于给定的2个数值,所以我们尽量求较小的值 符合该条件.a% i ==0 && b % i==0
int a,b;
int c =a<b?a:b;
for(int i=c;i<c;i--){
if( a % i ==0 && b %i==0 ){
c=i //i就是公约数最大的
break;
}
}
C语言基础03的更多相关文章
- PHP语言基础03 By ACReaper
03.01逻辑运算符 &&,and ||,or xor 这里只强调一点用and或者or的话,记得加上括号,不然可能出错,至于原因我也不是很清楚,反正尽量直接用&&,|| ...
- Java入门 - 语言基础 - 03.基础语法
原文地址:http://www.work100.net/training/java-basic-syntax.html 更多教程:光束云 - 免费课程 基础语法 序号 文内章节 视频 1 第一个Jav ...
- 03 java语言基础逻辑运算符
03.01_Java语言基础(逻辑运算符的基本用法) A:逻辑运算符有哪些 &,|,^,! &&,|| B:案例演示 逻辑运算符的基本用法 注意事项: a:逻辑运算符一般用于连 ...
- 【GoLang】GO语言系列--002.GO语言基础
002.GO语言基础 1 参考资料 1.1 http://www.cnblogs.com/vimsk/archive/2012/11/03/2736179.html 1.2 https://githu ...
- R语言基础:数组&列表&向量&矩阵&因子&数据框
R语言基础:数组和列表 数组(array) 一维数据是向量,二维数据是矩阵,数组是向量和矩阵的直接推广,是由三维或三维以上的数据构成的. 数组函数是array(),语法是:array(dadta, d ...
- C语言基础(转载自大海笔记)
# C语言基础2015年03月26日10:04:411. 语言排行榜C——java——objective-C2. 进制:进制:进位机制.用普通的话讲,应该为人为的定义一种度量来标识一样东西 ...
- 01_C语言基础
内容提要: 1. C语言概述2. 数据类型.运算符与表达式3. C语言程序结构 4. VC6.0使用练习 知识详解01:C语言的历史 1. C语言与其它语言比较 汇编语言: (1).可直接对硬件进行操 ...
- Go语言基础之time包
Go语言基础之time包 时间和日期是我们编程中经常会用到的,本文主要介绍了Go语言内置的time包的基本用法. Go语言中导入包 Go语言中使用import关键字导入包,包的名字使用双引号(”)包裹 ...
- JavaScript 引入方式 语言规范 语言基础 数据类型 常用方法 数组 if_else 比较运算符 for while 函数 函数的全局变量和局部变量 {Javascript学习}
Javascript学习 JavaScript概述 ECMAScript和JavaScript的关系 1996年11月,JavaScript的创造者--Netscape公司,决定将JavaScript ...
随机推荐
- IRP 与 派遣函数
什么是派遣函数: 派遣函数是 WIndows 驱动程序中的重要概念.驱动程序的主要功能是负责处理I/O请求,其中大部分I/O请求是在派遣函数中处理的.也就是说,派遣函数是用来处理驱动程序提交过来的 I ...
- relativelayout常用属性
===================================================================================== 整理于http://naot ...
- DECLARE CONTINUE HANDLER FOR NOT FOUND
1.解释: 在mysql的存储过程中经常会看到这句话:DECLARE CONTINUE HANDLER FOR NOT FOUND. 它的含义是:若没有数据返回,程序继续,并将变量IS_FOUND设为 ...
- oracle中闪回错误的dml操作原理
原理: Oracle根据还原表空间信息,利用还原表空间中的数据,类似一致性读取方法,可以把表置于一个删除前的时间点(或SCN),从而将数据找回. 删除删除错误的dml操作的oracle的前提准备: 一 ...
- PHP多种序列化/反序列化的方法 (转载)
1. serialize和unserialize函数 这两个是序列化和反序列化PHP中数据的常用函数. <?php $a = array('a' => 'Apple' ,'b' => ...
- Linux下MySQL安装及命令使用
先rpm -qa mysql 查看是否安装 yum list |grep mysql 查看MySQL的一些包 yum install -y mysql-server mysql mysql-devel ...
- android 代码布局 记录
1.概述 android 中大部分ui 布局是用xml 进行的,但是用代码布局调整是不可避免的.自己比较喜欢写模版,有些时候子类再继承模版时,往往有一些ui上的调整,又懒得去重写一个xml,就偷懒用代 ...
- C# 弗洛伊德(Floyd)算法
弗洛伊德(Floyd)算法 主要是用于计算图中所有顶点对之间的最短距离长度的算法,如果是要求某一个特定点到图中所有顶点之间的最短距离可以用; ; ; ; ...
- android开发的问题集(二)
(1)子线程对UI线程操作的简便方法 子线程方法用 Looper.prepare(); 结束时候用 Looper.loop();
- poj3624 简单的01背包问题
问题描述: 总共有N种宝石供挑选,宝石i的重量为Wi,吸引力为Di,只可以用一次.Bessie最多可负担的宝石手镯总重量为M.给出N,M,Wi,Di,求M. 非常标准的01背包问题.使用了优化的一维数 ...