[*]①定义循环变量i、j、k和整型变量len、p。 ②第一层for循环中,循环变量i从0开始,依次递增直到其值等于20,实现对20行数据的逐行处理。在循环体中,对于i行首先调用函数strlen(xx[i])求得第i行字符串的长度,并把其值赋给变量

admin2010-04-05  27

问题

选项

答案[*]

解析 ①定义循环变量i、j、k和整型变量len、p。
    ②第一层for循环中,循环变量i从0开始,依次递增直到其值等于20,实现对20行数据的逐行处理。在循环体中,对于i行首先调用函数strlen(xx)求得第i行字符串的长度,并把其值赋给变量len,再用len除以2,得到第i行字符串长度的一半,赋给变量p。在第二层for循环中,循环变量j从0开始,依次递过来增直到其值等于(p-1),在第三层for循环中,循环变量k从j+1开始,依次递过来增直到其值等于p,比较字符xx[j]ASCII码值与xx[k]ASCII码值的大小,如果字符xx[j]的ASCII码值小于xx[k]的ASCII码值,则两者进行互换实现对第i行字符串左半部分的字符串按降序排列。
    ③用变量len的值对2求余数,如果余数为1,则调用函数字符串拷贝函数strcpy(),把从字符串xx+p+1开始直到字符串xx的结尾的子字符拷贝到字符串变量str中,再调用字符串连接函数stmcat(()把字符串xx的中间字符连接到字符串变量str的后面,再调用字符串连接函数stmcat()把字符串xx的左半部分的子字符串连接到变量str的后面;如果余数不等于1,则调用字符串拷贝函数strcpyl(),把从字符串xx+p开始直到字符串xx的结尾的子字符拷贝到字符串变量str中,再调用字符串连接函数stmcat()把字符串xx的左半部分的子字符串连接到变量str的后面,实现字符串xx左右部分子字符串的交换。
    ④调用字符串拷贝函数strcpy(),把字符串变量str的值拷贝到字符串xx,实现把排序后的结果仍按行重新存入字符串数组xx中。
转载请注明原文地址:https://jikaoti.com/ti/XVj7FFFM
0

相关试题推荐
最新回复(0)