以下是一道C语言题目,题中a[j]=a[7]不是等于a[1]='\0'吗?为什么还会输出mo而不是m呢

[复制链接]
查看11 | 回复3 | 2013-7-13 10:03:09 | 显示全部楼层 |阅读模式
morning中最大的字符是r。程序将r与字符串结束符交换了。自然就是输出mo...
回复

使用道具 举报

千问 | 2013-7-13 10:03:09 | 显示全部楼层
for(i=1;i<7;i++)if(a[j]<a) j=i;//for循环,j是最大字母的下标,本例中即为r的下标。a[2]和a[7]交换,所以a[2]='\0',输出mo不出知道楼主为什么说a[j]=a[7]不是等于a[1]='\0'吗 ?r的ascii码比o大啊。...
回复

使用道具 举报

千问 | 2013-7-13 10:03:09 | 显示全部楼层
循环后j=2,自己再慢慢推吧...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行