1、二级 C语言机试-72 及答案解析(总分:100.00,做题时间:90 分钟)一、填空题(总题数:1,分数:33.00)1.请补充函数 fun(),该函数的功能是:把从主函数中输入的字符串 str2倒置后接在字符串 str1后面。例如:str1=“How do”,str2=“?od uoy”,结果输出:“How do you do?”。注意:部分源程序给出如下。请勿改动主函数 main和其他函数中的任何内容,仅在函数 fun()的横线上填入所编写的若干表达式或语句。试题程序:#includestdio.h#includeconio.h#define N 40void fun(char *str
2、1,char *str2)int i=0,j=0,k=0,n;char ch;char *p1=str1;char *p2=str2;while(*(p1+i)i+;while(*(p2+j)j+;n= 【1】 ;for(;k=j/2;k+,j-)ch=*(p2+k);*(p2+k)=*(p2+j);*(p2+j)=ch;【2】 ;for(; 【3】 ;i+)*(p1+i)=*p2+;*(p1+i)=/0;main()char str1N,str2N;int m,n,k;clrscr();printf(“*Input the string str1 k=j/2;k+,j-)ch=*(p2+k)
3、;*(p2+k)=*(p2+j);*(p2+j)=ch;【2】 ;for(; 【3】 ;i+)*(p1+i)=*p2+;*(p1+i)=/0;main()char str1N,str2N;int m,n,k;clrscr();printf(“*Input the string str1 for(i=0; iN; i+)for(j=0; ji; j+)aij=aij+n /*使数组左下半三角元素中的值加上 n*/ )解析:解析 首先从数组中找出要被加上 n的那部分元素,找的过程其实就是找出将被挑出的那部分元素在原数组中的分布规律的过程。通过观察得出,要被处理的那部分元素的下标值的范围是每行中从第一个元素开始,直到列数等于该行行数时为止。找到这个规律后,依次从数组中取得合乎要求的元素,然后再加上 n。