C语言谭浩强编程错误归纳
C语言谭浩强第三版第四章例题及课后题错误归纳:顺序程序设计
C语言谭浩强第三版第五章例题及课后题错误归纳:选择结构程序设计
1.double类型的数据用scanf输入时要用%lf的形式输入
|
2.double型的数据不能用%d的形式输出 |
3.
条件运算符 https://blog.csdn.net/weixin_42072280/article/details/85006449 |
4. 闰年
if(year % 400 ==0 || (year % 4 ==0 && year % 100 != 0)) |
5. double a; //a为一个实数 if(a == 0)... if(fabs(a) <= 1e-6)... //对于判断a是否等于0时,要注意:由于a是实数,而实数在计算和存储时会有一些微小的误差,因此不能直接进行如下判断:if(a == 0)...,因为这样可能会出现本来是零的量,由于上述误差而被判别为不等于0而导致结果错误。所以,采取的方法就是判别a的绝对值(fabs(a))是否小于一个很小的数(例如10^(-6)),如果小于此数,就认为a等于0. |
6. (1)在case子句后如果没有break;会一直往后执行一直到遇到break;才会跳出switch语句。 运行结果: 学英语学C语言好好休息 (2)多个case可以共用一组执行语句 switch(c){ //记得一定要加break,否则就会一直运行直到遇到break,才会跳出switch语句 |
7. https://blog.csdn.net/YHxiaohao/article/details/79861154 |
C语言谭浩强第三版第六章例题及课后题错误归纳:
eg6.10译密码 1)如何输入一行字符 不知道个数呀 haha 用getcahr() 学到了 https://mp.csdn.net/postedit/82781637
2)比较字符时,可以不用写具体的ASCII码值,直接用单引号括起来写字符就可以了
|
6.1输入两个正整数m和n,求其最大公约数和最小公倍数 求最大公约数的代码 int gcd(int a, int b){ //他们怎么这么聪明呢,真是太厉害了! |
6.4求1!+2!+3!+...+20! int型为4个字节,32位,取值范围为:-2^31 ~(2^31-1),即-2147483648 ~ 2147483647 float为4个字节,32位,但其表示的范围为:-3.4*10^(-38) ~ 3.4*10^38 |
6.14输出星星图案 //如何按照用户输入的数字输入星星的个数 void star(int n){ void space(int n){ |
6.15比赛赛手名单匹配 //思路:需要每次的X Y Z各出现且仅出现一次 ,如何实现呢? 见下面,神奇! void main(void){ |
一个数如果恰好等于除它以外的因子之和,这个数就称为“完数” |
C语言谭浩强第三版第七章例题及课后题:数组
eg7.3用起泡法对10个数排序(由小到大)
|
|
eg7.4将一个二维数组a的行和列的元素互换,存到另一个二维数组b中 int row = 3; |
|
eg7.5有一个3x4的矩阵,编程求出其中值最大的那个元素的值,以及其所在的行号和列号 小技巧:a[3][4]找最大值时,先将max=a[0][0]; |
|
eg7.9有3个字符串,要求找出其中最大者 1.字符串比较函数strcmp |
|
7.1用筛选法求100之内的素数
|
|
7.10有一篇文章,共有3行文字,每行有80个字符要求分别统计出其中英文大学字母、小写字母、数字、空格以及其他字符的个数
|
|
7.14比较两个字符串 printf("*%d*", 'Z'-'A'); |
|
7.15字符串拷贝,不要用strcpy函数 小技巧:寻找字符串结束标志 方法1:自己 for(i = 0; i < 80; i++){ index = strlen(str2); |
C语言谭浩强第三版第八章例题及课后题:函数
eg8.7递归求年龄 一个递归问题可以分为“回推”好“地推”两个阶段,要经历若干步才能求出最后的值。显而易见,如果要求递归过程不是无限制进行下去,必须具有一个结束递归过程的条件。 总结:递归其实也不难,首先分析题意,写出递归表达式,根据表达式进行程序编写。 |
||||||
eg8.11有一个一维数组score,内放10个学生成绩,求平均成绩
|
||||||
eg8.14求二维数组元素中的最大值
|
||||||
局部变量: (1)形参也是局部变量 (2)在一个函数内部,可以在复合语句中定义变量,这些变量只在本复合语句中有效,这种复合语句称为“分程序”或“程序块”。 全局变量: 程序的编译单位是源程序文件,一个源文件可以包含一个或若干个函数。在函数内定义的变量是局部变量,在函数之外定义的变量称为外部变量,外部变量是全局变量(也称为全程变量)。全局变量可以为本文件其他函数所共用。它的有效范围为从定义变量的位置开始到本源文件结束。 由于函数的调用只能带回一个返回值,因此有时可以利用全局变量增加函数间的联系渠道,通过函数调用能得到一个以上的值。 |
||||||
8.4转置二维数组的行列 小技巧:之前的那个题要求存到另一个数组中,所以需要另外开辟一个数组 ;现在这个题只要求转置行列,书中给了一个比较好的方法,只开辟一个变量,就像交换两个数一样,这样就可以节省很多存储空间 错误:如果遍历数组的所有元素,则会转置两次,相当于没有转置;所以课本中从i+1遍历,这样只遍历上三角的元素,对角线也不用转置,所以省了很多操作。
|
||||||
8.5写一个函数,使输入的字符串按反序存放,在主函数中输入和输出字符串 小技巧:数组元素反序存放
//若index=10,即零字符结束标志在下标为10的地方 i ---- index-i-1 0 ----- 9 1 ----- 8 2 ----- 7 3 ----- 6 4 ----- 5 |
||||||
8.8输入一个4位数字,要求输出这4个数字字符,但每两个数字间空一个空格 小技巧:中间加空间输出
思考:为什么要用--的形式? 因为用++的形式会覆盖原值,用--的话先从数组的后面开始,这样就不会影响原来数组中的值;这也给了我们一种新的输出数值的方法。 |
||||||
8.10(50)输入一行字符,将此字符串中最长的单词输出 由于函数只能向外传递一个值,故自己的做法是传入一个字符数组用来存放最长的单词,而课本是在函数中找到最长单词的起始位置,通过return传出来。 |
||||||
8.12(20)用牛顿迭代法求根
|
||||||
8.14输入10个学生5门课的成绩,分别求平均数最高分方差等 要求:输入10个学生5门课的成绩 思考:该如何定义变量,用什么结构? |
||||||
8.15(100)输入10个职工的姓名和职工号,进行排序查找
|
||||||
8.17(35)用递归法将一个整数n转换成字符串
|
||||||
8.18(60)给出年月日,计算该日是该年的第n天 //自己
//课本
|
C语言谭浩强第三版第九章例题及课后题:预处理命令
9.2输入两个整数,求它们相除的余数 //#define remainder(a,b) a%b //自己 |
||
9.3求三角形面积 #define S(a,b,c) (((a)+(b)+(c))/2.0 ) 要把参数带上,否则是错误的 一般宏定义用大写 |
||
9.5分析下面的宏所定义的输出格式 对程序中用双撇号括起来的字符串内的字符,即使与宏名相同,也不进行置换。 |
||
9.9试述“文件包含”和程序文件的连接的概念,二者有何不同?
|
||
eg9.7输入一行字母字符,根据需要设置条件编译,使之能将字母全改为大写输出,或全改为小写字母输出
|
||
9.10用条件编译输入一行电报文字选择输出形式
|
C语言谭浩强第三版第十章例题及课后题:指针
eg10.3输入a和b两个整数,按先大后小的顺序输出a和b
|
|||||||||||||||
eg10.5输出数组中的全部元素 用for循环输出
用while循环输出
|
|||||||||||||||
eg10.7将数组a中n个整数按相反顺序存放
有一个实参数组,要想在函数中改变此数组中的元素的值,实参与形参的对应关系有以下4种情况:
|
|||||||||||||||
eg10.11用指针变量输出二维数组元素的值
|
|||||||||||||||
eg10.12输出二维数组任一行任一列元素的值
|
|||||||||||||||
eg10.13有3个学生各学4门课,计算总平均分数以及第n个学生的成绩 多维数组名做函数参数
|
|||||||||||||||
eg10.15定义一个字符数组,对它初始化,然后输出该字符串 eg10.16定义字符指针 C语言中,可以用两种方法访问一个字符串
|
|||||||||||||||
eg10.17将字符串a复制为字符串b eg10.18用指针变量处理eg10.17问题 对字符串中字符的存取,可以用下标方法,也可以用指针方法。
|
|||||||||||||||
eg10.19用函数调用实现字符串的复制
|
|||||||||||||||
10.2(45)输入3个字符串,按由小到大的顺序输出
|
|||||||||||||||
10.12用指针数组处理上一题目,字符串不等长 优先级:()>[]>*
|
|||||||||||||||
eg10.22求a和b中的最大值(指向函数的指针) 函数的调用
|
|||||||||||||||
eg10.23有一个函数process,在调用它的时候,每次实现不同的功能(用指向函数的指针作函数参数)
|
|||||||||||||||
eg10.25对上例中的学生,找出其中不及格课程的学生及其学生号 //思考;返回的指针只能返回一个不及格的学生,万一有多个学生该怎么办? |
|||||||||||||||
10.20用指向指针的指针的方法对5个字符串排序并输出
|
|||||||||||||||
10.21用指向指针的指针的方法对n个整数排序并输出
|
|||||||||||||||
C语言谭浩强编程错误归纳相关推荐
- c语言教材课后题答案6,C语言谭浩强版6章课后练习题答案.doc
C语言谭浩强版6章课后练习题答案 第6章课后练习题 单项选择题 以下程序执行后,a是: int a =0,i,j; for (i=5;i>0;i--) for(j=0;j<4;j++) a ...
- 谭浩强c语言第7章,清华大学C语言谭浩强第7章.ppt
清华大学C语言谭浩强第7章.ppt 第7章复合结构类型,第7章 复合结构类型,7.1 结构体类型的概述 7.2 结构体类型的定义 7.3 结构体变量的定义及内存分配 7.4 结构体变量的初始化和引用 ...
- c语言谭浩强ppt课件,编程_C语言学习课件_谭浩强_PPT~1216F.ppt
编程_C语言学习课件_谭浩强_PPT~1216F.ppt ,第一章,C语言概述本章要点,C语言的特点 C程序的结构 在计算机上运行C程序的方法主要内容,1.1 语言出现的历史背景 1.2 程序的特点 ...
- C语言谭浩强第5版章节编程题
本文用来练习谭浩强章节练习题,慢慢更新.有需要解答的在下边留言第一时间回复. 第一章 1-6 编写一个程序,输入3个数a,b,c,输出最大值. #define _CRT_SECURE_NO_WARNI ...
- C语言不挂科之我爱谭浩强——编程题拿高分(附例题答案和知识点详解)
期末考试要考C语言,边复习边写博客,总结了一些自己不太明白或者可能出错的知识点.现自己已经弄明白,写的你们肯定也能明白,希望期末备考的同学们不挂科,也适合自学C语言的小白哦 这篇博客主要写指针,由易到 ...
- c语言谭浩强第六章答案,C语言谭浩强版本第6章课后练习题答案..doc
第6章课后练习题 单项选择题 以下程序执行后,a是: int a =0,i,j; for (i=5;i>0;i--) for(j=0;j<4;j++) a++; 20 25 24 30 执 ...
- C语言 谭浩强 题目 -第八章
文章目录 笔记 通过指针引用数组 用数组名作函数参数 以变量名和数组名作为函数参数的比较 例题 [例8.2] [例8.6] [例8.3] [例 8.4] [例 8.5] [例 8.6] [例8.7] ...
- C语言 谭浩强 题目 -第六章
文章目录 笔记 字符数组 字符数组输出 字符串处理函数 输入字符串的函数 gets() 字符串连接函数--strcat 字符串赋值函数--strcpy 字符串比较函数---strcmp 测字符串长度的 ...
- C语言谭浩强(第五版)答案6、8章
第六章 利用数组处理批量数据 1.用筛选法求100之内的素数. int main() {int a[100],i,j;for(i=0;i<100;i++)a[i]=i+1;a[0]=0;//因为 ...
- c语言 谭浩强第五版第五章习题第17题 乒乓球比赛
两个乒乓球队进行比赛,各出三人.甲队为A,B,C3人,乙队为X,Y,Z3人.已抽签决定比赛名单.有人向队员打听比赛的名单,A说他不和X比,C说他不和X,Z比,请编程序找出3对赛车的名单. #inclu ...
最新文章
- Internet Explorer 8 Beta 2十大看点
- 阿里内核月报2014年4月
- CodeGlance
- 初中计算机学情分析,初中信息技术教学计划
- Ubuntu 18.04 LTS环境下 MNN 的编译与使用
- Linq连接查询之左连接、右连接、内连接、全连接、交叉连接、Union合并、Concat连接、Intersect相交、Except与非查询...
- Sharepoint学习笔记---Linq to Sharepoint--增,删,改操作
- 【区间dp】【Gym 100712L】01串切割问题 + 线段树优化
- linux虚拟主机的三种方法
- C++ 矩阵求a*b-1及行列式、伴随矩阵和逆矩阵思想及源代码
- 编译原理预测分析程序的实现
- JAXB控制CDATA节点转义
- DragonBones+Unity 实现换装
- 华中师范大学 -技术类-- 导师信息
- Incorrect string value '\xF0\xA0\x9D\xB9\xE5\x82...' for column 'CONTENT' at row 1
- 净化自己的内心,扫除内心的尘埃
- 【web前端开发 | CSS】页面布局之盒子模型
- 软件自动化测试实验室,实验室自动化
- QT6.3离线安装包下载
- matlab编程直流电动机,直流电动机的MATLAB仿真.doc