第8章 字符串.pptVIP

  • 9
  • 0
  • 约1.44万字
  • 约 44页
  • 2017-09-11 发布于江苏
  • 举报
注意,引用scanf函数时,sName[i]是与第i个同学的姓名对应的行地址,不需要取地址运算符“”,而iScore[i]是该同学的成绩,用一个整数表示,需要使用取地址运算符“” * C语言中有许多难于理解的地方,程序中的puts、printf语句就是例子,有兴趣的读者可以研究一下 * * 方法二比方法一简单,效率高。但方法一很容易扩充到对任意(从键盘输入)的两个字符串的处理,而方法二就不得不再定义其他字符数组了。 * 字符数组str1和str2的内容在交换前后并没有改变! * * * * * * * 方法2中,第2个while语句的循环体可合并为“s1[i++]=s2[j++];”,进而,可以while语句简化为“while( (s1[i++]=s1[j++]) != \0);”,甚至进一步缩写为“while(s1[i++]=s1[j++]);” * * * * 程序中采用选择法,而不是起泡法,减少了交换的次数。但由于字符串是相对复杂的数据结构,使用strcpy函数复制字符串比较费时,造成程序的效率比较低。 * 程序将输入的字符串的地址(二维数组sData的行地址)存放在一维数组pStr中,从而为这些字符串建立了索引结构。排序是对索引进行的,排序的依据是字符串的大小,但交换操作是针对索引值进行的。 * 方法二中没有字符串的交换,因而具有较高的执行效率。但方法二的算法比较复杂,使用

文档评论(0)

1亿VIP精品文档

相关文档