C语言----选择结构(基础篇三)
大家好,忙里抽空更新一下自己的博客,算是自己的一个进步,C语言视频启蒙我早就看完啦,只是觉得这个视频真不错,所以给大家分享一下,同时自己还有很多没有理解透彻,写写博客算是一个笔记更是对自己所学的知识的吸收,废话不多直接开始今天的主题,"C语言的选择结构"
关系运算符
小于:<
大于:>
等于:= =
小于等于:<=
大于等于:>=
不等于:!=
逻辑运算符
非:!
与:&&
或:||
假设x=1,y=2,x1=3,y1=4,那么x>y||x1<y1的结果是真还是假?!(x>y)&&x1<y1呢? 参考答案:真、真
x>y(false) 或 x1<y1(true) 结果为 true
!(x>y)(假取反为真) 并且 x1<y1(true) 结果为 true
简单运算符
=号是最常用的运算符,在数学表达式中a=a+1是错误的,而在计算机中,这表示将a的值加上1再赋给a,如果a原来是5,经过这种运算后,a会变成6。也是就是说=号在计算机中表示“赋值”,它会将右边的“计算结果”装进左边的“变量”。
a=a+1也是经常用的运算符,C语言为了方便,便使用a++这种运算符来计算a=a+1,a--来计算a=a-1。也就是说,++代表变量自身加1,--代表变量自身减1。
运算符优先级
|
括号 !(非) 算术运算符 关系运算符 &&和|| 赋值运算符(=) |
高 | | | ∨ 低 |
算术运算:*、/ 高于 +、-
关系运算:>、>=、<、<= 高于 = =、!=
逻辑运算:!高于&&高于||
一首记忆诗:
1、括号成员第一
2、全体单目第二
3、乘除余三,加减四
4、移位五,关系六
5、等于(与)不等排第七
6、位与异或和位或
7、"三分天下"八九十
8、逻辑或跟与
9、十二和十一
10、条件高于赋值
11、逗号运算级最低
解释:
1、括号运算符[]() 成员运算符. ->
2、所有的单目运算符比如++、 --、 +(正)、 -(负) 、~(位反)、指针运算*、&、!
3、这个"余"是指取余运算即%
4、移位运算符:<< >> ,关系:> < >= <= 等
5、即= = 和!=
6、这几个都是位运算: 位与&异或^位或|
7、接上一句:它们分别排 7 8 9
8、逻辑运算符:|| 和 &&
9、注意顺序:优先级(||) 底于 优先级(&&)
10、三目运算符(:?)优先级排到13 位只比赋值运算符和","高
11、逗号运算符优先级最低
脱括号:
(a>b) && (x>y) 可化简为:a>b && x>y
(a= =b) || (x= =y) 可化简为a= =b || x= =y
(!a) || (a>b) 可化简为 !a || a>b
if语句
if(表达式)
{
若干语句
…
}
程序1
用户输入2个数,按从大到小的顺序将它输出
/*3_1 if 语句:用户输入两个数字,按从大小的顺序将他们输出在屏幕上*/
#include <stdio.h>
main()
{
int a, b, c; //a b 为比较的数,c为临时交换变量
scanf_s("%d%d", &a, &b); //输入两个数 //下面的作用就是:如果第一个数大于第二个数就交换他们的值
if (a<b) {
c = a;
a = b;
b = c;
};
printf("%d%d\n",a,b); //输出交换后的值 system("pause");
}
变化一:
格式:
if(表达式)一条语句;
注意:
if(a>b)a++;b++;
相当于
if(a>b)
{
a++;
}
b++;
而不是
if(a>b)
{
a++;
b++;
}
变化二(二选一):
格式:
if(表达式)
{
若干语句
…
}
else
{
若干语句
…
}
变化三:
格式:
if(表达式)一条语句; else 一条语句;
程序2
用户输入2个数,按从大到小的顺序将它输出的第二种解法
/* 3_2_ if 用户输入两个数,数字按从大到小的顺序将他们输出屏幕上面*/
#include <stdio.h>
main()
{
int a, b; //定义两个变量从键盘上面接收
scanf_s("%d%d", &a, &b); //输入两个数值
if (a>b) {
printf("%d%d\n", a, b); //按顺序输出
}
else
{
printf("%d%d", b, a); //倒序输出
}; system("pause");
}
单目运算符和双目运算符
当前上面的运算符中,++、--、!都为单目运算符。其实减号运算符也可作单目运算符,它加在表达式(表达式可包括常量、变量)左边,表示取它的相反数。
双目运算符的两边必须都要有表达式
程序3
输入一个整数,打印出它是奇数还是偶数(学习%的使用)
/* 3_3_输入一个数,打印在屏幕上是奇数还是偶数*/
#include <stdio.h>
main()
{
int a;
scanf_s("%d", &a); // " % " :在scanf函数中表示格式控制
if (a% == ) { // " % ":在if语句中表示余数计算
printf("%d是偶数\n", a);
}
else
{
printf("%d是奇数\n", a);
};
system("pause");
}
程序调试技巧
程序调试: VS2015 调试的方式自己百度一下,我对这个工具也是刚刚入门,所以没什么分享给大家,但是总体使用感觉不用不是很舒服,网上那些快捷方式在我的电脑上都没作用,也有可能之前自己用VScode习惯的原因吧。
如果是用的VC6++,可以用下面的方式:
F9:设置断点
F5:运行至断点
F10:单步执行
F11:单步执行至函数内部
在VC中书写程序时如果不小心拼错了某个关键字或漏了什么标点标号等等,这叫语法错误。这时按感叹号时在编辑器的下面会报错,查找错误的方式就是在报错栏中找到带error的行,再双击它,代码栏就会出现一个蓝色箭头指向错误行,再在错误行的附近查找语法错误并修正它。
作业
上机改错题:输入两个数,求出它们之中最小的数输出
#include “stdio.h”
main()
{
int a,b;
/**************found***************/
scanf(“%d%d”,&a,&b);
if(a>b)
{
/**************found***************/
printf(最小的数为%d,a); // 里面没加 " ", 逻辑错误
}
else
{
printf(“最小的数为%d”,b);
}
}
以上红色的部分是错误的!
C语言----选择结构(基础篇三)的更多相关文章
- NIO相关基础篇三
转载请注明原创出处,谢谢! 说在前面 上篇NIO相关基础篇二,主要介绍了文件锁.以及比较关键的Selector,本篇继续NIO相关话题内容,主要谈谈一些Linux 网络 I/O模型.零拷贝等一些内容, ...
- C语言---选择结构和循环结构
C语言的两种选择语句,1) if语句; 2) switch语句; 在if判断语句中,一般使用关系表达式. 关系运算符: <.<=.>.>=.==.!= 关系表达式:用关系运算符 ...
- day 20 C语言顺序结构基础3
(1).若有定义:int a=100:则语句printf("%d%d%d\n",sizeof("a"),sizeof(a),sizeof(3.14)); 则输出 ...
- docker+k8s基础篇三
Docker+K8s基础篇(三) kubernetes上的资源 A:k8s上的常用资源 Pod的配置清单 A:Pod上的清单定义 B:Pod创建资源的方法 C:spec下其它字段的介绍 Pod的生命周 ...
- C语言------选择结构
仅供借鉴.仅供借鉴.仅供借鉴(整理了一下大一C语言每个章节的练习题.没得题目.只有程序了) 文章目录 1 .实训名称 2 .实训目的及要求 3 .源代码及运行截图 4.小结 1 .实训名称 实训4:选 ...
- Hybrid APP基础篇(三)->Hybrid APP之Native和H5页面交互原理
本文已经不维护,新地址: http://www.cnblogs.com/dailc/p/8097598.html 说明 Hybrid模式原生和H5交互原理 目录 前言 参考来源 前置技术要求 楔子 A ...
- C语言----流程图(基础篇四)
大家晚上好,最近忙每天忙于项目没有时间更新自己的博客,时间就是海绵嘛硬挤挤就是有的,咂看标题" 流程图 ",编程界的一个不可或缺的技能,特别是在做复杂的逻辑的时候要处理好每一步的关 ...
- Python基础篇(三)_函数及代码复用
Python基础篇_函数及代码复用 函数的定义.使用: 函数的定义:通过保留字def实现. 定义形式:def <函数名>(<参数列表>): <函数体> return ...
- C语言----数据类型(基础篇一)
C语言的入门程序模板 #include <stdio.h> /*使用或者包含系统里面的程序*/ main() /*程序入口点*/ { /*起点*/ +; /*叫计算机执行的指令*/ } / ...
随机推荐
- Eric6安装问题解决
按照http://eric-ide.python-projects.org/eric-download.html中的说明,执行命令:python install.py 却遇到下面的问题: Compil ...
- 【JavaScript】内部与外部引入方式
1.内部引入方式: script的type属性默认为"text/javascript",可以不写 <script type="text/javascript&quo ...
- django 修改 request 对象中的请求参数, 并重新赋值给 request 对象
直接上代码, 实现流程看代码及注释 def your_view(self, request): method = request.method if method == "GET" ...
- woocommerce直接调取产品描述内容
最近一位客户想让woocommerce产品页直接调取描述内容,不想太多的tab切换,太复杂,这个蛮简单的,woocommerce是在wordpress基础开发的,产品也是post的一种类型,直接调用c ...
- 使用Git管理品优购项目 开始部分
- Linux-grep,awk,sed
grep 参考1:https://www.cnblogs.com/ITtangtang/p/3950497.html sed 参考:https://www.cnblogs.com/wangqiguo/ ...
- LeetCode 896. Monotonic Array
原题链接在这里:https://leetcode.com/problems/monotonic-array/ 题目: An array is monotonic if it is either mon ...
- django中models字段的联合限制
一.字段联合使用的限制设置: 有这么个需求,现有两个字段,A字段是选择用户是不是vip, B字段是统计用户的vip等级; 要求: 用户不是vip时,A选择false,B字段为空; 是vip时,A字段选 ...
- 洛谷P2504 [HAOI2006]聪明的猴子题解
题目 记录悲伤 已知猴子的数量以及猴子跳的最大距离 已知数的数量以及树的坐标 最小生成树 每两棵树之间的距离需要枚举来计算 算出最大值之后再与n只猴子进行比较记录答案 需要注意 在使用最小生成树的时候 ...
- sort函数实现多条件排序
js的sort方法,我们一般传入一个回调用于单排序,也就根据某一个条件排序,那么一个场景需要多条件排序(多重排序),我们怎么处理呢? 如下例子,我们按学生的总分排序,如果总分相等,我们再按照语文成绩排 ...