关注公众号 程序员成长指南
在里面回复 谭浩强答案
获取完整版答案
有问题也可以公众号后台私信我.

随笔分类 -  c语言程序设计第五版谭浩强课后答案

摘要:写一个函数,输人一个4位数字,要求输出这4个数字字符,但每两个数字间空一个空格。如输人1990,应输出“1 9 9 0” 题目解析: 对字符串进行遍历输出,没输出一个字符,后面就跟着输出一个空格,关键点在于如果输出的是最后一个字符,则不能在输出字符,所以要对是否是最后一个字符的输出进行判断。 代码示 阅读全文
posted @ 2020-08-10 17:11 赵一凡177 阅读(1409) 评论(0) 推荐(0)
摘要:写一个函数,将一个字符串中的元音字母复制到另一字符串,然后输出 题目解析: 该题的重点在于元音字母的判断,通过或条件,凡是元音字母都进行拷贝 代码示例: #include<stdio.h> void cpy(char s[], char c[]) { int i, j; for (i = 0, j 阅读全文
posted @ 2020-08-10 17:10 赵一凡177 阅读(1128) 评论(0) 推荐(0)
摘要:写一个函数,将两个字符串连接 题目解析: 利用一个临时数组,空间要保证能够容纳两个字符串,先把第一个字符串进行拷贝到临时数组,第二个字符串在临时数组的尾部接着链接,最后记得加上字符串的结束标记\0即可 代码示例: #include<stdio.h> void ConcatStr(char strin 阅读全文
posted @ 2020-08-10 17:09 赵一凡177 阅读(2570) 评论(0) 推荐(0)
摘要:写一个函数,使输人的一个字符串按反序存放,在主函数中输入和输出字符串 题目解析: 要把一个字符串反序存放,其实就是对字符串做一个逆序操作,操作过程为收尾字符交换,直到把所有字符全部交换完毕。 示例代码 #include<stdio.h> void ReverseString(char str[]) 阅读全文
posted @ 2020-08-10 17:00 赵一凡177 阅读(1668) 评论(0) 推荐(0)
摘要:求方程 $ 题目解析 根据disc = \(b^2-4ac\) 的值来决定如何求根,题目本身编程不难,不过需要同学们复习一下高中的数学知识哦。 代码示例 #include<stdio.h> #include<math.h> //x1为第一个根,x2为第二个根 float x1, x2, disc, 阅读全文
posted @ 2020-08-10 16:57 赵一凡177 阅读(8097) 评论(0) 推荐(0)
摘要:写两个函数,分别求两个整数的最大公约数和最小公倍数,用主函数调用这两个函数,并输出结果。两个整数由键盘输人 题目解析: 该题直接使用“辗转相除法”来求解最大公约数和最小公倍数 最大公约数找出两数中的最小值,然后直接相模,当能够同时被两数整除时,则为最大公约数。 最小公倍数找出两数中的最大值,然后直接 阅读全文
posted @ 2020-08-10 16:55 赵一凡177 阅读(3914) 评论(0) 推荐(0)
摘要:编写一个程序,将字符数组s2中的全部字符复制到字符数组s1中,不用strcpy函数。复制时,‘\0’也要赋值过去。'\0'之后的字符不复制 【答案解析】 首先必须保证s1能否放的下s2中的字符,然后将s2中的每个字符逐个搬移到s1中即可。 【代码实现】 #include<stdio.h> int m 阅读全文
posted @ 2020-08-03 10:51 赵一凡177 阅读(1472) 评论(0) 推荐(0)
摘要:编写一个程序,将连个字符串s1和s2比较,如果s1 > s2,输出一个整数;若s1 = s2,输出0;若s1 < s2,输出一个负数。不要用strcpy函数。两个字符串用gets函数读入。输出的正数或负数的绝对值应是相比较的两个字符串相对应字符的ASCII码的差值。例如,"A"和“C”相比,由于"A 阅读全文
posted @ 2020-08-03 10:49 赵一凡177 阅读(360) 评论(0) 推荐(0)
摘要:有一行电文,以按下面规律译成密码: A >Z a >z B >Y b >Y C >X c >x …… 即第1个字母编程第26个字母,第i个字母编程第(26-i+1)个字母,非字母字符不变,要求编程序将密码译回原文,并输出密码和原文。 【答案解析】 从题目给的实例中可以看到,编码规则非常简单,就是将从 阅读全文
posted @ 2020-08-03 10:47 赵一凡177 阅读(1033) 评论(0) 推荐(0)
摘要:输出一下图案: * * * * * * * * * * * * * * * * * * * * 【答案解析】 该题非常简单,观察图形可以看出: 每行中*的个数相等,都是4个 每行中空格的个数在递增2个 每行先输出空格,然后输出* 按照以上方式通过循环来控制每行的输出内容即可 【代码实现】 #incl 阅读全文
posted @ 2020-08-03 10:44 赵一凡177 阅读(464) 评论(0) 推荐(0)
摘要:有一篇文章,共有3行文字,每行有80个字符。要求分别统计出其中英文大写字母、小写字母、数字、空格以及其他字符的个数 【答案解析】 获取文章中的3行文本,并对每行文本进行以下操作 定义保存结果变量:upp、low、digit、space、other 遍历每行文本中的字符 如果该字符ch:ch >= ' 阅读全文
posted @ 2020-08-03 10:39 赵一凡177 阅读(3416) 评论(0) 推荐(0)
摘要:有15个数按由大到小顺序存放在一个数组中,输入一个数,要求用折半查找法找出该数是数组中第几个元素的值。如果该数不在数组中,则输出"无此数" 【答案解析】 二分查找是一个非常高效简单的查找算法,笔试和面试中非常喜欢考察。 折半查找又叫二分查找,查找的前提是序列中元素必须有序,假设区间使用[left, 阅读全文
posted @ 2020-08-03 10:38 赵一凡177 阅读(1528) 评论(0) 推荐(0)
摘要:用选择法对10个整数排序 【答案解析】 选择排序原理: 总共两个循环,外循环控制选择的趟数,内循环控制具体选择的方式。 用maxPos标记区间中首元素位置,然后用后序元素依次与maxPos标记的元素进行比较,如果有元素大于maxPos位置的元素,用maxPos标记该元素的位置,直到区间的末尾。 该趟 阅读全文
posted @ 2020-08-03 10:36 赵一凡177 阅读(1143) 评论(0) 推荐(0)
摘要:用筛选法求100之内的素数 【答案解析】 素数:约数为1和该数本身的数字称为素数,即质数 筛选法:又称为筛法。先把N个自然数按次序排列起来。1不是质数,也不是合数,要划去。第二个数2是质数留下来,而把2后面所有能被2整除的数都划去。2后面第一个没划去的数是3,把3留下,再把3后面所有能被3整除的数都 阅读全文
posted @ 2020-08-03 10:34 赵一凡177 阅读(297) 评论(0) 推荐(0)
摘要:找出一个二维数组中的鞍点,即该位置上的元素在该行上最大,在该列上最小,也可能没有鞍点 【答案解析】 鞍点是行上最大,列上最小的元素,因此对数组的第i元素进行如下操作: 找到该行上最大元素,用max标记,并标记该元素所在列colindex 找colindex列上最小的元素,用min标记,并标记该元素所 阅读全文
posted @ 2020-07-27 16:19 赵一凡177 阅读(4606) 评论(0) 推荐(0)
摘要:输出"魔方阵"。所谓魔方阵是指这样的方阵,它的每一行、每一列和对角线之和均相等。例如: 8 1 6 3 5 7 4 9 2 要求输出1~$n^2$的自然数构成的魔方阵。 【答案解析】 | 17 | 24 | 1 | 8 | 15 | | 23 | 5 | 7 | 14 | 16 | | 4 | 6 阅读全文
posted @ 2020-07-27 16:18 赵一凡177 阅读(836) 评论(0) 推荐(0)
摘要:输出一下杨慧三角(要求输出10行) 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 …… 【答案解析】 仔细观察杨慧三角可以看到: 第0列和对角线上的数据全部为1,其余位置上的数据为上一行正对数据与上一行正对前一个数据之和。 比如:a[4][2] = a[3] 阅读全文
posted @ 2020-07-27 15:24 赵一凡177 阅读(280) 评论(0) 推荐(0)
摘要:将一个数组中的值按逆序重新存放。例如:原来顺序为8,6,5,4,1。要求改为1,4,5,6,8 【答案解析】 该题为数组的逆置,具体处理方式如下: 如果begin < end时,则循环进行一下操作 给定两个下标begin和end,begin放在数组起始的位置,end放在数组最后一个元素的位置 交换b 阅读全文
posted @ 2020-07-27 15:22 赵一凡177 阅读(2824) 评论(0) 推荐(0)
摘要:有一个已经排好序的数组,要求输入一个数后,按原来顺序的规律将它插入数组中 【答案解析】 将数据插入到已排序的序列中,只需两步即可: 找待插入元素在数组中的插入位置 插入元素 具体如下: 注意:极端情况下,end可能会被减为-1,比如在上述序列中插入0 【代码实现】 #include<stdio.h> 阅读全文
posted @ 2020-07-27 15:04 赵一凡177 阅读(2168) 评论(0) 推荐(0)
摘要:求一个3 X 3的整形矩阵对角线元素之和 【答案解析】 矩阵:即二维数组,矩阵行和列相等的二维数组称为方阵。 1 2 3 4 5 6 7 8 9 左上角到右下角对角线上数字:行下标和列下标相等 右上角到左下角对角线上数字:列下标减1 行下标加一 通过两个循环来取到对角线上的元素,并对其求和即可。 【 阅读全文
posted @ 2020-07-27 15:03 赵一凡177 阅读(1531) 评论(0) 推荐(0)