C-class Week1.Day2
作业小结
ABC比大小
C语言中 算法比较快,但是调用内存会很慢,所以比较较多的时候,不见得会比交换值的快
判断闰年
if( !(year%4) && (year%100) || !(year%400) )
判断月份几天
可以这样!
int is_leap = if( !(year%4) && (year%100) || !(year%400) );
is_leap 代替是否加二月的那一天
出现游离的错误 会出现2-3个错误,因为中文符号一般对应2-3个字符;
水仙花数
ge = num%10; s =num/10%10; b=num/100;
man查找函数所在头文件
如果运用math.h---->gcc task.c -lm
判断成绩
考虑欠缺了成绩有可能是小数的情况,应该用float
查漏补缺
ls cd touch rm mv chmod catore clear sudo11
mkdir rmdir pwd whoami
find grep ifconfig ping
//ssh telent ftp tar
三大模式
gg G ngg nG vim filename.c +100
替换代码:r cw R
进入模式 I o O a A
插入模式 jj Ctrl+x Ctrl+z Ctrl+p
行底模式:set nu set nonu %s/old/new /key !cmd w q x X
C语言发展 unix Linux gcc
汇编的部分相当薄弱
c代码变成可执行过程
预处理,查看宏定义的替换结果,gcc -E 生成.i文件
编译,理解c戴梦得的底层工作原理 i++的工作原理 gcc -S 生成.s文件
汇编,生成目标文件.o结尾,生成代码库,静态库,共享库。 gcc -c 生成 .o 文件
链接 ,多文件编程的基础 gcc a.o
-wall 尽可能多的产生警告
-Werror 警告编程错误
gcc常用参数
-E -S -c -o -I -l -D(命令行定义宏)-DDBUG
.h .h.gsh .c .o .a .so
数据类型
bool <bool true
分支语句补充(开关语句)
switch(n)//可以是一个数值,表达式,运算结果一定是一个整数否则报错
{
case val: //val 必须是常量 否则就报应该是一个整常量
printf(“123”);
break;
//如果所有的case 后面都有break,就形成了多分支结构
default:
//如果前面的都不满足就执行edefault、功能类似else
都记得加break; 因为可能default不一定在行尾,会导致通铺
}
switch 不能于continue 配合使用
练习1:输入一个月份,判断季节
可以写成
case 1:case 2:case 3: // 让1-3开关打通~
case 1 … 3: // 只能在vim上用 表示一段范围
练习2:输入一个月份,忽略闰月,判断改月多少天
return 0; 结束 不是exit()
for循环语句体
循环是一种让一段代码反复执行,从而达到你想要的结果
for是一种比较灵活而且危险(相比较其他语句循环来说)
一般使用一个变量来引导这个循环的运行,这个变量叫做循环标量。
index 索引 i
for([1];[2];[3])
{
[4];
}
1、可以给循环变量赋值,C99也可以在此定义循环变量!!!C89不行会报错
所以在配置文件vimrc中添加 gcc -std=gnu99 (gnu99包括了gnu98)
2、判断循环是否到达边界 边界值如果给个负数就会死循环
4、当 2 满足后 先去执行 4 ,也叫做循环体
3、当完成循环体后再做3,改变循环变量,防止出现死循环,一般对循环体变量进行自加减
顺序是 1----2----4----3 第二轮-----2----4----3。。。。。。
大括号的问题:
1、没有加大括号,只会默认把下面一行代码作为循环体,如果循环语句只有一句,大括号可以不加
一般商业代码都要求加上大括号,都不会省略
2、建议上下对齐(方便查看是否缺少大括号)
for循环的多种写法:
for(;;)== while(true)==while(1)
for(int i=0;i<10li++)
{
}
while语句:
while(条件)//当条件为真,执行循环体,为假时结束
{
//循环体
}
while是for循环的精简版本,for循环负责明确循环次数的问题
而while循环只知道结束条件,而不限定循环次数的问题。也就是pat的多测试例!!
do while语句
do
{
//循环体
}while(循环条件); //分号不能少
先执行循环语句,在判断循环条件,该循环语句至少执行一次
适合先干活,在检查的问题 特殊的情况
例如:输入密码 先输入再检查、文件读写
循环嵌套:
循环语句中有包含了循环语句,在二维数组中嵌套很多!
外层循环执行一次,内层循环执行全部。
练习三:找出所有三位水仙花数
练习四:输入一个正整数判断是否是素数
练习五:输入一个整数,分解显示 例如-1234 —>- 1 2 3 4
练习六:输入一个正整数,判断是否是回文数12321 123321 1234321
int num = 0; new =0;int old = num;while(old){new = new*10 + old%10;old /= 10;}if(old == new){yes }
这题就是自己想太复杂了,不用判断第一个和n个,2和n-1个。。反过来输出判断是否一样就可以了!
跳转语句
goto
它可能会破坏已经设计好的分支语句循环语句,因此绝大多数公司都是禁止使用的。
在特定的场景下很有用:适用于硬件编程的异常处理!
不使用循环语句解决一些问题~~~,只能用goto
标签名 temp1:
goto 标签名;
在函数内,不能再函数外调用;
练习7:不适用循环语句计算n的阶乘
先用for循环写一遍
再次用goto实现 循环体内容 和 for语句的自加减内容
Break
1、在switch语句中,用于关闭执行开光
2、在循环语句中,用于跳出一层循环
Continue
结束本次循环,进入下一次循环
Return
1、返回一个数据给函数的调用者
2、结束函数的执行
练习8:不使用循环语句来计算出前n项的斐波那契数列
C-class Week1.Day2相关推荐
- Day2 - Python基础2作业【文件操作--购物车程序(用户操作及商户操作)】
1 # ----user.txt---- 2 3 {'已购商品': '', '消费记录': '', '余额': 0} 4 5 6 # ----commodity.txt---- 7 8 iPhone, ...
- 【JAVA零基础入门系列】Day2 Java集成开发环境IDEA
[JAVA零基础入门系列](已完结)导航目录 Day1 开发环境搭建 Day2 Java集成开发环境IDEA Day3 Java基本数据类型 Day4 变量与常量 Day5 Java中的运算符 Day ...
- Alpha冲刺Day2
冲刺Day2 一.站立式会议计划 分组讨论研究:较好的掌握MYSQL的使用,以及Android Studio图形化界面设计的学习同步进行. 完成设计数据库架构,进阶版. 登录.注册界面的设计. 能从同 ...
- ZJOI2019 Day2 游记
emmm,一直没有更新不是因为退役了自闭什么的,只是单纯比较懒.写游记很累的. 这次余姚之旅中我似乎并没有怎样焦急和兴奋,回想起来,我甚至比一试时要平静得多. 是因为挫折让人有些长大了吗? 二试讲课时 ...
- 【从零开始学BPM,Day2】默认表单开发
[课程主题] 主题:5天,一起从零开始学习BPM [课程形式] 1.为期5天的短任务学习 2.每天观看一个视频,视频学习时间自由安排. [第二天课程] Step 1 软件下载:H3 BPM10.0全开 ...
- 斯坦福-随机图模型-week1.0_
title: 斯坦福-随机图模型-week1.0 tags: note notebook: 6- 英文课程-9-Probabilistic Graphical Models 1: Representa ...
- MyBatis-Plus Day2 Wapper 核心功能 条件构造器 测试
MyBatis-Plus Day2 核心功能 条件构造器 之前搭建的在上一篇博客中已经写好了. 链接:https://blog.csdn.net/weixin_45821811/article/det ...
- Java基础day2
Java基础day2 java基础语法 1. 运算符 1.1.1 运算符和表达式 1.1.2 算术运算符 1.1.3字符的"+"操作 1.1.4 字符串的"+" ...
- Java-GUI编程实战之管理系统 Day2【Swing(组件介绍、布局管理器、事件类及监听器类)、基础组件按钮和输入框的用法】
视频.课件.源码[链接:https://pan.baidu.com/s/13ffqGDzH-DZib6-MFViW3Q 提取码:zjxs] Java-GUI编程实战之管理系统 Day1[项目开发流程. ...
最新文章
- 从0到1,网上搜不到的企业信息安全搭建全过程,这本书讲透了!
- C语言 IP地址合法性判断 去除字符串首尾空格
- @Scheduled
- iOS UITableView 移除单元格选中时的高亮状态
- jQuery异步加载数据并添加事件示例
- 直接在线查看github里的jupyter notebook
- 设置组策略的应用条件-----Windows 管理规范 (WMI)过虑器
- [FROM VIJOS]安装服务器
- 面试资料-计算机网络
- 信息安全实训——神奇的木马
- DA-4-FixBi: Bridging Domain Spaces for Unsupervised Domain Adaptation
- 职场Word使用技巧大全,太实用了
- Python度分秒与度的互转
- 阿里云ECS服务器使用教程
- excel报错无法粘贴信息,原因复制区域跟粘贴区域形状不同
- Win10无法识别移动硬盘的解决方案
- 可裂解组织蛋白酶的ADC偶联物-靶向抗体偶联技术
- 解决找不到roslyn\csc.exe文件问题
- 计算机教室课外活动简报,广州图书馆·活动报道·电子阅览室“自助学习月”活动简讯...
- Spring Cloud Config教程(四)快速开始