c程序设计第四版(谭浩强)第八章答案_第1页
c程序设计第四版(谭浩强)第八章答案_第2页
c程序设计第四版(谭浩强)第八章答案_第3页
c程序设计第四版(谭浩强)第八章答案_第4页
c程序设计第四版(谭浩强)第八章答案_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

include include include include int main int p1 p2 p3 t a b c printf enter three number scanf d d d p1 p2 p3 if a b t p1 p1 p2 p2 t if a c t p1 p1 p3 p3 t if b c t p2 p2 p3 p3 t printf sort number d d d n p1 p2 p3 define N 20 int main char p1 p2 p3 t a N b N c N printf enter three strings scanf s s s a b c p1 a p2 b p3 c if strcmp a b 0 t p1 p1 p2 p2 t if strcmp a c 0 t p1 p1 p3 p3 t if strcmp b c 0 t p2 p2 p3 p3 t printf sort string s s s n p1 p2 p3 void input int p int i printf enter 10 number for i 0 i 10 i scanf d p i void output int p int i printf new 10 number for i 0 i 10 i printf 2d p i void sort int p int n int i t for i 0 i p i 1 t p i p i p i 1 p i 1 t for i n 2 i 0 i if p i 1 p i t p i p i p i 1 p i 1 t int main int a 10 p a input p sort p 10 output p putchar n define N 10 void houyi int p int m int i b N 0 for i 0 i N m i b i m p i for i N i b i N m p i for i 0 i N i printf 3d b i int main int a N i m p a printf enter number for i 0 i N i scanf d printf enter m scanf d printf new number houyi p m putchar n int main int count int p int n int n p i printf enter number scanf d p int calloc n sizeof int for i 0 i n i p i 0 printf the last number is d n count p n 1 free p int count int p int n int i j 1 k 0 for i 0 i n i if p i 3 p i j if p i 3 j 1 数到 3 时将下一个重置为 1 else j 1 if i n 1 i 1 轮到到最后一个人报数时 将 i 重置为 1 执行完 for 语句后自动加一变为 0 从头开始 k 1 报完一个数后加一 else if i n 1 i 1 检查到最后一个人是 3 时 将 i 重置为 1 执行完 for 语句后自动加一变为 0 从头开始 continue 检查到这个人是 3 时 跳过报数 if k 3 n 1 报数的总个数达到 3 n 1 时 就只剩一个人了 break else continue for i 0 i a else if p k 1 else o 1 p printf 大写字母 d n 小写字母 d n 空格 d n 数字 d n 其他 d n d x k s o int main char a N p a printf enter string gets a count p void zhuangzhi int p 3 int i j t for i 0 i 3 i for j 0 j 3 j if i j t p i j p i j 代表 a i j p i j p j i p j i t int main int p 3 a 3 3 i j p a printf enter array n for i 0 i 3 i for j 0 j 3 j scanf d zhuangzhi p printf new array n for i 0 i 3 i for j 0 j 3 j printf 2d a i j if j 2 putchar n void central int p 5 int i j l 0 r 0 t r 代表行 l 代表列 for i 0 i 5 i for j 0 j p r l r i l j t p 2 2 p 2 2 p r l p r l t 最大元素放在中心 l 0 r 0 for i 0 i 5 i 四个角放最小元素 每次从第二个元素开始对比 for j 1 j 5 j if p i j p r l r i l j 找出最小元素 t p p p r l p r l t 将最小元素与左上角元素交换 下同 l 4 r 0 换完重置 r 和 l 下同 for i 0 i 5 i for j 1 j p i j r i l j t p 4 p 4 p r l p r l t r 4 l 0 for i 0 i 5 i for j 1 j p i j r i l j t p 4 p 4 p r l p r l t r 4 l 4 for i 0 i 5 i for j 1 j p i j r i l j t p 4 4 p 4 4 p r l p r l t int main int a 5 5 p 5 a i j printf enter array n for i 0 i 5 i for j 0 j 5 j scanf d p i j central p printf new array n for i 0 i 5 i for j 0 j 5 j printf 3d p i j putchar n void sort char p int n 指针数组处理 int i j char k for i 1 i n i for j i j0 k p i 1 p i 1 p j p j k int main char p 10 gutsy glory gonad girth gaudy gypsy gusto guppy group grope 测试数据 gutsy glory gonad girth gaudy gypsy gusto guppy group grope int i printf enter strings for i 0 i 10 i printf s p i sort p 10 printf nnew strings for i 0 i 10 i printf s p i putchar n define N 20 void sort char p int n 指针处理 int i j char k N for i 1 i n i for j i j0 不能写为 p i 1 否则出错 strcpy k p 20 i 1 strcpy p 20 i 1 p 20 j strcpy p 20 j k int main char a 10 N char p a 0 不能写为 p a 这等价于是把行向量赋值给列向量 int i printf enter strings n for i 0 i 10 i scanf s 可写为 gets a i 这样写的话 每次输入字符串后按 enter 或 写为 scanf s sort p 10 printf new strings n for i 0 i 10 i printf s a i putchar n define n 1000 矩形法求定积分 n 为区间分割数 目 double ding double a double b double fun double double s 0 int i for i 1 i n i s fun i b a n return s b a n int main double a b s1 s2 s3 定义积分下限 上限 用 double 精度 较高 printf 输入积分下限 上限 分割区间数目 scanf lf lf s1 ding a b sin s2 ding a b cos s3 ding a b exp printf sin x 从 f 到 f 的积分为 f n a b s1 printf cos x 从 f 到 f 的积分为 f n a b s2 printf exp x 从 f 到 f 的积分为 f n a b s3 define N 10 void nixu int p int i m N 2 t for i 0 i m i t p i p i p N 1 i p N 1 i t int main int a N p a i printf enter d numbers n N for i 0 i N i scanf d nixu p printf new numbers n for i 0 i N i printf d a i putchar n void average1 float p 6 int n int i float ave 0 for i 0 i n i ave p i 1 4 printf 第一门课程的平均分为 4 2f n ave float average float p 6 int i float ave 0 for i 1 i 6 i ave p i 5 return ave void out float p 6 int n int i j k l s 0 printf 两门课以上不及格的学生 n for i 0 i n i k 0 for j 1 j 6 j if p i j 2 s 1 printf 4 0f p i for l 1 l 6 l printf 4 0f p i l printf 平均分为 4 2f n average p i if s 0 没有符合条件的学生时输出 无 printf 无 n void in float p 6 int n int i j l for i 0 i n i for j 0 j 90 printf 平均分在 90 分以上的学生 4 0f p i for l 1 l 85 continue else break if j 6 printf 全部课程成绩在 85 分以上的学生 4 0f p i for l 1 l 6 l printf 4 0f p i l putchar n int main int i j float a 4 6 1001 65 67 55 60 45 1002 80 87 90 81 85 1003 90 99 100 98 95 1004 86 89 90 91 85 float p 6 a for i 0 i 4 i for j 0 j 6 j printf 4 0f a i j putchar n average1 p 4 out p 4 in p 4 define N 10 方法一 int num1 char p 将数字字符串转为整形数字的函数 int n strlen p i a 0 for i 0 i n i a int p i 48 pow 10 n 1 i return a void number char p int i num 0 j 1 k 1 n strlen p j 用于计算数字长度 k 用于计算数字个数 int a N 最多容纳 N 个整数 for i 0 i n i if p 9 if num 1 p 0 a k num1 p j num 0 else if num 0 num 1 j 1 找到新数字时重置 j k 1 else j 1 p for i 0 i k 1 i printf d a i putchar n define N 10 void number char p 方法二 int i num 0 j 1 k 1 n strlen p j 用于计算数字长度 k 用于计算数字个数 char a N 10 最多容纳 N 个整数 每个整数最多 十位数 for i 0 i n i if p 9 if num 1 p 0 strcpy a k p j num 0 else if num 0 num 1 j 1 找到新数字时重置 j k 1 else j 1 p for i 0 i k 1 i printf s a i putchar n int main char a 100 p a 最多可输入 100 个字符 printf enter strings n gets p number p define N 20 字符串比较函数 int str cmp char p1 char p2 int i n strlen p1 for i 0 i p2 i return p1 i p2 i break else return p1 i p2 i break if i n 1 return 0 int main char a N b N p1 a p2 b printf enter string1 gets p1 printf enter string2 gets p2 printf d n str cmp p1 p2 void month int p char a 12 January February March April May June July August September Octob er Novenber December int i for i 0 i 12 i if p i 1 printf 英文 s n a i else continue int main int a p printf enter month scanf d p month p define SIZE 1000 char newbuf SIZE 定义字符数组 newbuf char newp newbuf 定义指针变量 newp 指向可存区的始端 char mynew int n 定义开辟存区的函数 new 开辟存储区后返 回指针 if newp n newbuf newp 指向存储区的开始位置 int main char p mynew 6 strcpy p hello

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论