C控制语句:循环
#include<stdio.h>
int main(void)
{
long num;
long sum = 0L;
int status;
printf("Please enter an integer to be summed: ");
printf("(q to quit)");
while((status = scanf("%ld",&num)) == 1) //==运算符的优先级比=要高
{
sum = sum +num;
printf("Please enter next integer(q to quit):");
}
printf("Those integer sum to %ld.\n",sum);
return 0;
}
--浮点数的比较
/*
浮点数比较中只能使用大于和小于号。原因在于舍入误差可能造成两个逻辑上应该相等的数不相等了。
例如:3和1/3的乘积应该是1.0,但是您用6位小数表示1/3,乘积就是.999999而不是1
*/
#include<math.h>
#include<stdio.h>
int main(void)
{
const double ANSWER = 3.14159;
double response;
printf("What is the value of PI?\n");
scanf("%lf",&response);
while(fabs(response - ANSWER) > 0.0001)
{
printf("Try again!\n");
scanf("%lf",&response);
}
printf("Close enough!\n");
return 0;
}
//真表达式的值为1,而假表达式的值为0
#include<stdio.h>
int main(void)
{
int n = 3;
while(n)
printf("%2d is true\n",n--);
printf("%2d is false\n",n);
n = -3;
while(n)
printf("%d is true\n",n++);
printf("%2d is false\n",n);
return 0;
}
/*
C中_Bool类型在C99中提供了一个stdbool.h的头文件,可以使用bool来代替_Bool,并把true和false定义为1和0的符号常量,
包含这个头文件可以写出与c++兼容的代码,因为c++把bool、true、false定义为关键字
*/
//字符代替数字来计数
#include<stdio.h>
int main(void)
{
char ch;
for(ch = 'a'; ch <= 'z';ch++)
printf("The ASCII value for %c is %d.\n",ch,ch);
return 0;
}
逗号运算符:
/*
1.逗号是个顺序点,逗号左边产生的所有副作用都在程序运行到逗号右边之前生效
2.整个逗号表达式的值是右边成员的值
x = (y=3,(z = ++y +2)+5); x = 11
houseprice = 249,500;
houseprice = 249 是左表达式,而500是有表达式
houseprice =(249,500);
把houseprice赋值为500,因为该值是右表达式的值
*/
//使内部循环依赖于外部循环的嵌套循环
#include<stdio.h>
int main(void)
{
const int ROWS = 6;
const int CHARS = 6;
int row;
char ch;
for(row = 0;row < ROWS;row++)
{
for(ch = ('A'+row); ch < ('A' +CHARS);ch++)
printf("%c",ch);
printf("\n");
}
return 0;
}
数组--线性存储的一系列相同类型的值
小技巧:可以用#define指令创建一个指定数组大小的明显常量,方便以后改动。
//以下是一个计算数值的整数次幂的程序
#include<stdio.h>
double power (double n,int p);
int main(void)
{
double x,xpow;
int exp;
printf("Enter a number and the position integer power");
printf(" to which\nthe number will be raised. Enter q to quit.\n");
while(scanf("%lf%d",&x,&exp)==2)
{
xpow = power(x,exp);
printf("%.3g to the power %d is %.5g\n",x,exp,xpow);
printf("Enter next pair of numbers or q to quit.\n");
}
printf("Hope you enjoyed this power trip -- bye!\n");
return 0;
}
double power(double n,int p)
{
double pow = 1;
int i;
for(i = 1; i <= p; i++)
pow *=n;
return pow;
}
C控制语句:循环的更多相关文章
- JS 引入方式 基本数据类型 运算符 控制语句 循环 异常
一.JS引入方式 什么是JavaScript? JavaScript是运行在浏览器端的脚步语言,JavaScript主要解决的是前端与用户交互的问题,包括使用交互与数据交互,JavaScript是浏览 ...
- python控制语句---循环结构语句
这次主要把循环结构的控制语句补上,主要包含while.for.continue.break.循环嵌套.主要写一些基本的认识以及包含的一些实例.当只有唯一路径且只跑一次的时候选择上一节中的选择结构语句就 ...
- IT兄弟连 Java语法教程 流程控制语句 循环结构语句4
do-while循环 Java还有一种循环是do-while.与for.while这些在循环顶部判断条件表达式的语句不同,do-while是在循环底部进行条件表达式的检查.这意味着do-while循环 ...
- IT兄弟连 Java语法教程 流程控制语句 循环结构语句3
while循环 Java中的另外一种循环是while循环.while循环的语法格式如下: while(条件表达式){ 循环体; } 其中条件表达式定义了控制循环的条件,可以使任何有效的boolean表 ...
- IT兄弟连 Java语法教程 流程控制语句 循环结构语句2
双重for循环 如果把一个循环放在另一个循环体中,那么就可以形成嵌套循环,也就是双重for循环,当然嵌套循环也可以是for循环嵌套while循环,也可以是while循环嵌套while循环……,即各种类 ...
- IT兄弟连 Java语法教程 流程控制语句 循环结构语句1
循环语句可以在满足循环条件的情况下,反复执行某一点代码,这段被重复执行的代码被称为循环体,当反复执行这个循环体时,需要在合适的时候把循环条件该为假,从而结束循环,否则循环将一直执行下去,形成死循环.循 ...
- javascript的程序控制结构及语句------(2)循环控制语句、跳转语句、对话框
一.循环控制语句 循环语句主要就是在满足条件的情况下反复执行某一个操作,循环控制语句主要包括while语句.do...while语句 和for语句. 1.While语句 语法: While(条件表达式 ...
- (7)javascript的程序控制结构及语句------(2)循环控制语句、跳转语句、对话框
一.循环控制语句 循环语句主要就是在满足条件的情况下反复执行某一个操作,循环控制语句主要包括while语句.do...while语句 和for语句. 1.While语句 语法: While(条件表达式 ...
- Java | 循环的控制语句
循环的控制语句 循环的控制语句有两种:break.continue 两种. braak可以用于强制限出循环. continue可以用于强制结束本次循环. break braak可以用于强制限出循环. ...
随机推荐
- sqlite数据库的char,varchar,text,nchar,nvarchar,ntext的区别
1.CHAR.CHAR存储定长数据很方便,CHAR字段上的索引效率级高,比如定义char(10),那么不论你存储的数据是否达到了10个字节,都要占去10个字节的空间,不足的自动用空格填充. 2.VAR ...
- Thrift之TProtocol系列TCompactProtocol解析
TCompactProtocol协议作为TBinaryProtocol协议的升级强化版,都作为二进制编码传输方式,采用了一种乐器MIDI文件的编码方法(wiki,百度下),简单介绍下两种思想: 1: ...
- Oracle临时表空间组
Oracle 10g之前,同一用户的多个会话只可以使用同一个临时表空间,因为在给定的时间只有一个临时表空间默认给用户,为了解决这个潜在的瓶颈,Oracle支持临时表空间组即包含多个临时表空间的集合.临 ...
- 推荐一款强大的3D家装开源软件
2015年家装o2o着实火了一把.家装涉及到上门量尺,再设计,这个过程是免不了的. 目前基于bs架构的酷家乐,爱福窝等,流行起来就是着力于这点,通过一个点寻找突破口,进入深度挖掘,带动其他家具等产品来 ...
- python判断两个list包含关系
a = [1,2] b = [1,2,3] c = [0, 1] set(b) > set(a) set(b) > set(c)
- DataTable转泛型List
在.net项目研发过程中,有时候需要将从数据库中获取的DataTable数据类型,转换为泛型集合,然后运用LINQ对集合进行操作,我将此总结一下,方便你我他. 核心类: public class Da ...
- 简单谈谈python的反射机制
转:http://www.jb51.net/article/87479.htm 本文主要介绍python中的反射,以及该机制的简单应用,熟悉JAVA的程序员,一定经常和Class.forName打交道 ...
- HTML学习(二)
表格和列表 <!-- /* @dl→definition list(定义列表),ul→unordered list(无序列表),ol→ordered list * @一个完整的表格.table. ...
- 反编译class文件并重新编译的方法
在没有.java源码的情况下,如果想修改一个.class文件.可以通过以下步骤实现: 修改前的class文件: 一.反编译.class文件成.java文件. 1.可以使用Java Decompiler ...
- C# 类型基础(上)
C#类型都派生自System.Object 祖先的优良传统:Object的公共方法 Equals: 对象的同一性而非相等性 GetHashCode:返回对象的值的哈希码 ToString:默认返回类型 ...