c(分支结构、if语句、关系运算符)

//

// c语言基础,分支结构

//BOOL,布尔类型,是一个非真即假的数据类型,只有两个值YES和NO

//YES = 1,NO = 0;

//在C语言中,非0即为真;(-1、3都是真)

int a = 0;

BOOL b= NO;

//关系运算符

int m = 5, n = 10;

BOOL result = NO;

//大于

result = m > n;

printf("result = %d\n", result);//BOOL类型用%d打印 no

//大于等于

result = m >= n;

printf("result = %d\n", result); // no

//小于 <

result = m < n;

printf("result = %d\n", result); //yes

//小于等于 <=

result = m <= n;

printf("result = %d\n", result); //yes

//等于 ==

result = m == n;

printf("result = %d\n", result); //no

//不等于 !=

result = m != n;

printf("result = %d\n", result); //yes

//关系运算符左右都是表达式

result = (m + n) > 10;

//逻辑运算符

int i = 3, j = 5, k = 7;

//逻辑与 &&

//&&左右两侧 同时为真才为真,有一个为假即为假

//相当于并且

result = i >= j && k != j; //no

//逻辑或 ||

//||左右两侧,同时为假才为假,有一个为真即为真

//相当于“或者”

result = j == i || j < k; //yes

//逻辑非 !

//颠倒黑白

result = !(i != k); //no

//逻辑短路

//1.逻辑与得短路状态

//当&&左侧的结果为假时,右侧就不参与判断

int c = 0;

result = i > k && c++;

printf("i = %d, k = %d, c = %d\n", i, k, c);

//2.逻辑获得短路状态

//当||左侧的结果为真时,右侧就不参与判断

result = (i + j) >= k || c++;

printf("i = %d, k = %d, c = %d\n", i, j, k);

//github   程序员要求的或者博客

//cocoaChina

//if语句

//第一种形式

/*

if (条件语句) {

语句1;

…;

}

int count = 10;

int flag = 0;

printf("是否看到西瓜(1、是;2、否):");

scanf("%d", &flag);

if (flag == 1) {

count = 1;

}

printf("买了%d个包子\n",count);

int grade;

printf("请输入考试分数:");

scanf("%d", &grade);

if (grade == 100) {

printf("么么哒!亲一个。\n");

}

else if (60 <= grade) {

printf("怎么回事,下次加油\n");

}

else {

printf("跪下!!!\n");

}

char gender;

printf("请输入一个字符:");

scanf("%c", &gender);

if (gender == ‘m‘ ) {

printf("男性\n");

}

if(gender != ‘m‘ ){

printf("女性\n");

}

*/

//if的第二种形式

/*

if ( 条件表达式){

语句1;

}else{

语句2;

}

char gender;

printf("请输入一个字符:");

scanf("%c", &gender);

if (gender == ‘m‘ ) {

printf("男性\n");

}

else{

printf("女性\n");

}

int a = 0, b = 0, max = 0;

printf("请输入两个整数:");

scanf("%d %d", &a, &b);

if ( a > b ) {

printf("max = %d\n", a);

} else

{

printf("max = %d\n", b);

}

int age = 0;

printf("美女你年龄是多少?");

scanf("%d", &age);

if (20 <= age && age <= 30 ) {

printf("咱们交往吧!\n");

} else {

int height = 0;

printf("输入身高:");

scanf("%d" , &height);

if (height >= 165) {

printf("身高还是可以的\n");

}

else {

printf("我去接孩子放学\n");

}

}

int year;

printf("请输入年份:");

scanf("%d", & year);

if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0)) {

printf("是闰年\n");

} else {

printf("是平年\n");

}

//3.if的第三种形式

if (条件语句1) {

语句1;

} else if (条件语句2){

语句2;

} else {

语句3;

}

float grade = 0.0;

printf("请输入你的成绩:");

scanf("%f", &grade);

if (grade >90 && grade <= 100) {  //已经说明它小于90,就是已经排除了上面的条件

printf("你获得“优”\n");

} else if (grade >= 80) {

printf("你获得“良”\n");

} else if (grade >= 70) {

printf("你获得“中”\n");

} else if (grade >= 60) {

printf("你获得“差”\n");

} else {

printf("你不及格\n");

}

char string;

printf("请输入一个字符:");

scanf("%c", &string);

if (string >=‘0‘ && string <= ‘9‘ ) {  //还可以通过ASCII表查询其范围进行断

printf("this is digital\n");

} else if (string >= ‘A‘ && string <= ‘Z‘ ) {

printf("this is capital letter\n");

} else if (string >=‘a‘ && string <= ‘z‘ ) {

printf("this is letter\n");

} else {

printf("other\n");

}

// getchar(); 获取缓冲区的一个字符

// rewind(stdin)  清空缓冲区

char c = 0;

printf("请输入一个字符:");

scanf("%c", &c);

char c1 = getchar();

rewind(stdin);

char d = 0;

printf("请输入一个字符:");

scanf("%c", &d);

printf("c = %c, c1 = %c, d = %c\n", c, c1, d );

//条件运算符(三目运算)

// 条件表达式 ? 表达式1 : 表达式2;

int num1 = 20, num2 = 10;

int max = 0;

//max = num1 > num2 ? num1 : num2;

//相当于

if (num1 > num2 ) {

max = num1;

} else {

max = num2;

}

printf("max = %d\n", max);

int num1 = 0, num2 = 0, max = 0;

printf("请输入两个整数:");

scanf("%d %d", &num1, &num2);

max = num1 >= num2 ? num1++ : ++num2;

printf("max = %d, num1 = %d, num2 = %d\n", max, num1, num2);

//switch

switch (整型表达式) {

case 值1 :

语句1;

break;

case 值2;

语句2;

break;

case…;

default:

break;

}

int count = 0;

int price = 0;

printf("输入买酸奶瓶数:");

scanf("%d", &count);

switch (count) {

case 1 :

price = 3;

break;

case 3 :

price = 10;

break;

default:

price = 3 * count;

break;

}

printf("price = %d\n", price);

//switch的执行顺序;

//根据整型表达式的返回值,去找对应的case

//如果找到,就执行case中的语句,直到遇到break才跳出switch语句

//如果找不到,就执行default中的语句

//switch需要注意

//1.case中加break;

//2.不要忘了写default;

int mouth = 0, day = 0;

printf("请输入月份:");

scanf("%d", &mouth);

switch (mouth) {

case 1 : case 3 : case 5 : case 7 : case 8 : case 10 : case 12 :

day = 31;

break;

case 2 :

day = 28;

break;

case 4 : case 6 : case 9 : case 11 :

day = 30;

break;

default:

printf("输入月份不对\n");

break;

}

printf("该月的天数为:%d\n", day);

return 0;

}

时间: 2024-10-08 10:44:44

c(分支结构、if语句、关系运算符)的相关文章

1.Java分支结构-if语句

在Java程序设计中,分支结构由条件语句(if语句)来完成.if语句既可以单独使用,也可以与else一起使用.以下是使用方法: if语句单独使用 if(条件表达式){     目的;    //这里是一段代码 } 与else一起使用 if(条件表达式){     目的一;   //这里是一段代码 } else{     目的二;    这里是一段代码 } 注意:条件表达式是一个关系表达式,其结果是布尔型数据.请看如下代码: public class control1{     public st

分支结构if 语句举例

原文地址:https://www.cnblogs.com/fanweisheng/p/11306298.html

分支结构case 语句举例

原文地址:https://www.cnblogs.com/fanweisheng/p/11306302.html

Day 3 : 运算符和表达式-2、分支结构

1. 运算符和表达式-2 1.1. 赋值运算 1.1.1. 使用“=”进行赋值运算 “=”称为赋值运算符,用于对变量赋值.关于赋值运算符,除了将右边的表达式计算出来赋给左边以外还具备如下特点:赋值表达式本身也有值,其本身之值即为所赋之值.示例代码如下所示: int num = 18, index; System.out.println(index = num % 5); // 结果为:3,赋值表达式本身也有值 System.out.println(index); // 结果为:3 int a,

java基础知识-----运算符表达式和分支结构

一.运算符1.算术运算符:+,-,,/,%,++,--2.关系运算符:>,<,>=,<=,==,!=,3.逻辑运算符:&&,||,!,4.赋值运算符:=,+=,-=,=,/=,%=5.字符串连接符:+6.三目/条件运算符:boolean?数1:数2注意点:1自增运算符单独使用,表示结果加或者减一自增运算符运算时使用分为2种情况,如果符号在前则先自增或自减再进行外部运算,如果符号在后则先进行外部运算再进行自增自减运算.2.&&(且),当两边同真的时候才

C语言程序结构之分支结构if switch

一,程序的结构:顺序结构 :程序运行时按正常的流程运行   (程序内部运行实现线性结构:栈,队 列,链表,数组个人感觉) 分支结构 : 条件语句 if switch 循环结构 : while    do while    for 二,if语句 1,分类1)第一种形式: 构成:if(表达式){ 语句块; } 2)if....else的形式 用法:如果表达式的值为真(1) 执行语句块1 如果表达式的值为假(0) 执行语句块2 格式:if(表达式) { //如果表达式的值为真(1),会这行此代码块 语

条件测试和结构化语句

条件测试 if语句 for循环语句 调试: echo bash -x set -x set +x set -e 命令行报错就退出shell 条件测试操作 test命令 测试特定的表达式是否成立,当条件成立时,测试语句的返回值为0,否则为其他数值 格式1:test 条件表达式 格式2:[ 条件表达式 ] 至少应有一个空格 常见的测试类型 测试文件状态 整数值比较 字符串比较 逻辑测试 文件测试 格式:[ 操作符 文件或目录 ] 常用的测试操作符 -d:测试是否为目录(Directory) -e:测

c语言基础表达式, 关系运算符, 逻辑运算符, 位运算符, 数据的取值范围, 分支结构(if...else, switch...case)

1.表达式: 表达式的判断是有无结果(值), 最简单的表达式是一个常量或变量, 如:12, a, 3 + 1, a + b, a + 5 都是表达式 2.BOOL(布尔)数据类型: c语言中除了基本数据类型, 还有BOO数据类型, 以及一些其它的数据类型, 如自定义的结构体数据类型 BOOL数据类型是一种表示非真即假的数据类型, 布尔类型的变量只有YES和NO两个值. YES表示表达式结构为真, 反之, NO表示表达式结果为假(在c语言中, 认为非0即为真), BOOL类型主要用与分支结构或循环

十一、 BOOL类型、分支结构和关系运算符

BOOL类型:表示非真即假.只有两个值:YES和NO,而二进制只识别二进制数,所以,将YES替换为“1”,NO替换为“0” BOOL数据类型占一字节的空间内存 BOOL数据类型输出为:%lu:输入为:%s 关系运算符:“<,<=,>,>=,==,!=”判断两个值是否相等,一定要用“==”,结果值用BOOL存储. 优先级:[<,<=,>,>=(属同级运算符)] > [==,!=(属同级)] 运算符优先级:算术运算符>关系运算符>逻辑运算符&g