- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
c语⾔程序设计第五版课后答案谭浩强第⼋章课后答案
c语⾔程序设计第五版课后答案谭浩强习题答案
第⼋章善于利⽤指针
本章习题均要求使⽤指针⽅法处理。
1.输⼊3个整数,要求按由⼩到⼤的顺序输出。
解题思路:先获取到三个变量的地址,然后获取三个数据,通过指针进⾏⽐较转换即可
答案:
#includestdio.h
voidswap(int*p_a,int*p_b)
{
inttemp=*p_a;
*p_a=*p_b;
*p_b=temp;
}
intmain()
{
inta,b,c,*p_a=a,*p_b=b,*p_c=c;//获取每个变量空间的地址
if(*p_a*p_b){
swap(p_a,p_b);//通过指针进⾏指向空间内的数据交换
}
if(*p_a*p_c){
swap(p_a,p_c);
}
if(*p_b*p_c){
swap(p_b,p_c);
}}}
return0;
}
2.输⼊3个字符串,要求按由⼩到⼤的顺序输出。
解题思路:字符串的⽐较可以使⽤strcmp函数,返回值0表⽰⼤于,返回值⼩于0表⽰⼩于,返回追等于0表⽰相同。其他的⽐较排序思路
与数字的排序交换没有区别,逐个进⾏⽐较先找出最⼤的,然后找出第⼆⼤的。
答案:
#includestdio.h
intmain()
{
charstr[3][32];
char*p[3];char*p[3];
for(inti=0;i3;i++){
p[i]=str[i];p[i]=str[i];
后边的数字限制缓冲区边界,防⽌缓冲区溢出访问越界
}
让//p[0]和p[1]/p[2]分别进⾏⽐较,找出最⼤的字符串,i+1之后,则让p[1]和p[2]进⾏⽐较,找出第⼆⼤
//i循环总个数-1次,最后⼀个是不需要⽐较的
for(inti=0;i2;i++){
for(intj=i+1;j3;j++){
if(strcmp(p[i],p[j])0){
char*tmp=p[i];p[i]=p[j];p[j]=tmp;
}
}
}}}
return0;
}
3.输⼊10个整数,将其中最⼩的数与第⼀个数对换,把最⼤的数与最后⼀个数对换。
写3个函数:
①输⼈10个数;
②进⾏处理;
③输出10个数。
解题思路:在进⾏数值逐个⽐较的同时找到最⼩值的空间地址以及最⼤值的空间地址,使⽤这两个空间中的数据最终与第⼀和最后数据进⾏
对换即可。
答案:
#includestdio.h
voidinput(int*arry,intlen)
{
for(inti=0;ilen;i++){for(inti=0;ilen;i++){
}
}
voidprint(int*arry,intlen)
{
for(inti=0;ilen;i++){for(inti=0;ilen;i++){
}}
}
voidhandle(int*arry,intlen)
{
intmax_num=arry[0],min_num=arry[0];
int*p_max=NULL,*p_min=NULL;
for(inti=1;ilen;i++){
if(min_numarry[i]){//逐个⽐对后找出最⼩值
min_num=arry[i];
p_min=arry[i];//逐个⽐对后找到最⼩值的空间地址
}
if(max_numarry[i]){//逐个⽐对后找出最⼤值
max_num=arry[i];
p_max=arry[i];//逐个⽐对后找到最⼤值的空间地址
}
}
inttmp;
tmp=*p_min;*p_min=arry[0];arry[0]=tmp;//最⼩值与第⼀个数据交换
tmp=*p_max;*p_max
您可能关注的文档
- 江苏省太仓、昆山市2022-2023八年级数学上学期期中教学质量调研测试卷.pdf
- 2022年安全工程师资格证《安全生产管理知识》考前练习试卷A卷 附答案.pdf
- 医疗废弃物考试及答案.pdf
- 2023年度军队文职人员招聘《管理学》真题精选卷(含答案).pdf
- 医疗废物管理问答题合集.pdf
- 城市生活垃圾分类工作评估细则(2022年版).pdf
- 最新沪科版八年级上册第二章机械运动单元测试试题以及答案(2套题).pdf
- 2023年公共营养师之三级营养师真题精选附答案.pdf
- 【7A文】高校岗前培训教师资格证2017最新现代教育技术轮(单选).pdf
- 2022年山东公务员考试申论真题及答案解析A卷完整版.pdf
文档评论(0)