请补充主函数main(),该函数的功能是:把从键盘输人的3个整数按从小到大输出。 例如,输入“506040”,结果输出“405060”。 注意:部分源程序给出如下。 请勿改动main()函数和其他函数中的任何内容,仅在横线上填人所编写的若干表达式或语句。 试题程序:
第1题:
请补充函数proc(),该函数的功能是把数组num中的数按从小到大的顺序排列(数组元素个数及值从主函数中输入)。
例如,输入n=5,num[0]~num[4]依次为5 7 2 8 0,结果为0 2 5 7 8。
注意:部分源程序给出如下。
请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的横线上填入所编写的若干表达式或语句。
试题程序:
【l】i<n【2】j%n-1
【解析】由函数proc()可知,该程序选用的是冒泡法来进行排序,变量i为循环次数,因此,【1】处填“i<n”;变量J用来判断第j个元素和第j+1个元素顺序是否正确,因此,【2】处填“j<n-1”。
第2题:
请补充main()函数,该函数的功能是:从键盘输人一个字符串及一个指定字符,然后把这个字符及其后面的所有字符全部删除。结果仍然保存在原串中。 例如,输人“abcdefg”,指定字符为“d”,则输出“abe”。 注意:部分源程序给出如下。 请勿改动main()函数和其他函数中的任何内容,仅在main()函数的横线上填入所编写的若干表达式或语句。 试题程序:
第3题:
请补充函数proc(),该函数的功能是:把从主函数中输入的字符串str2接在字符串str1的后面。
例如,str1=”I am a”,str2=”student”,结果输出:I am a student。
注意:部分源程序给出如下。
请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的横线上填入所编写的若干表达式或语句。
试题程序:
【1】*(pl+i)【2】+p2【3】*p2++
【解析】要将字符串str2接在字符串str后面,首先要得到字符串str1的长度,因此【1】填“*(p1+i)”。然后将字符串str2中的每一个字符接在字符串str1所有字符的后面,因此【2】填“*p2”;【3】填“*p2++”。
第4题:
请补充函数proc(),该函数的功能是:删除字符数组中小于指定字符的字符,指定字符从键盘输入,结果仍保存在原数组中。 例如,输人“abcdefghij”,指定字符为“f”,则结果输出“fghij”。 注意:部分源程序给出如下。 请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的横线上填入所编写的若干表达式或语句。 试题程序:
第5题:
请补充fun()函数,该函数的功能是:把字符的ASCII码中为奇数的字符从字符串str中删除,结果仍然保存在字符串str中,字符串str从键盘输人,其长度作为参数传人fun()函数。
例如,输入“abcdef”,则输出“bdf”。
注意:部分源程序给出如下。
请勿改动main()函数和其他函数中的任何内容,仅在mare()函数的横线上填入所编写的若干表达式或语句。
试题程序:
【解析】先判断ASCⅡ码的奇偶。
第一空:根据主函数“fun(str,len);”调用语句,其中len为字符串str的长度,用来控制循环。根据主函数中对应的调用语句,补全fun()函数定义,第一空填“fun(chars[],intn)”。
第二空:“s[j++]=s[i];”语句中j的变量在使用前要对其取值进行初始化,因为数组下标是由0开始的,初始化值为0,所以第二空填“j-0”。
第三空:新生成的字符串要加尾符标志,所以第三空填“s[j]=ˊ\0ˊ”。