1、二级 C 语言机试 55 及答案解析(总分:100.00,做题时间:90 分钟)一、B填空题/B(总题数:1,分数:30.00)1.请补充函数 fun(),该函数的功能是:把从主函数中输入的字符串 str2 接在字符串 str1 的后面。 例如:str1“How do”,str2=“you do?”,结果输出:How do you do? 注意:部分源程序给出如下。 请勿改动主函数 main 和其他函数中的任何内容,仅在函数 fun 的横线上填入所编写的若干表达式或语句。试题程序: #includestdioh #includeconioh #define N 40 void fun(char
2、 *str1,char *str2) int i=0; char *p1=str1; char *p2=str2; while(U 【1】 /U) i+; for( ;U 【2】 /U;i+) *(p1+i)=U 【3】 /U; *(p1+i)=/0; main() char str1N,str2N); clrscr(); printf(“*Input the string str1 i=n-1;i+) /*循环右移 n-p 次*/ t=wn-11; for(j=n-2;j=0;j-) /*实现循环右移*/ wj+1=wj; w0=t; 解析 本题采用“循环右移”的算法。和我们在前面分析的稍有不同的是,个是整型数组,个是字符型数组。