for(i=0;i<___3___;i++)s[k+i]=t2[i];
}
14、给定程序中,函数fun的功能是计算下式
例如:
若形参e的值为1e-3,函数的返回值为0.551690。
(1)3.
(2)>(3)(2*i+1)
/**********found**********/
x=__1__/4;
/**********found**********/
while(x__2__e)
{s=s+k*x;
k=k*(-1);
t=2*i;
/**********found**********/
x=__3__/(t*t);
15、给定程序中,函数fun的功能是将带头节点的单向链表结点数据域中的数据从小到大排序。
即若原链表结点数据域从头至尾的数据为:
10、4、2、8、6,排序后链表结点数据域从头至尾的
数据为:
2、4、6、8、10。
第5页共16页
填空题
(1)h->next
(2)p->next(3)>=
/**********found**********/
p=__1__;
while(p){
/**********found**********/
q=__2__;
while(q){
/**********found**********/
if(p->data__3__q->data)16、给定程序中,函数fun的功能是:
将形参s所指字符串中的数字字符转换成对应的数值,计算出这些数值的累加和作为函数值返回。
例如,形参s所指的字符串为:
abs5def126jkm8,程序执行后的输出结果为:
22。
(1)48
(2)s++(3)sum
/**********found**********/
if(isdigit(*s))sum+=*s-__1__;/**********found**********/
__2__;
}
/**********found**********/
return__3__;
17、函数fun的功能是:
把形参a所指数组中的奇数按原顺序依次存放到a[0]、a[1]、a[2]、……中,把偶数从数组中删除,奇数个数通过函数值返回。
例如:
若a所指数组中的数据最初排列为:
9、1、4、2、3、6、5、8、7,删除偶数后a所指数组中的数据为:
9、1、3、5、7,返回值为5。
2)j++(3)j
(1)1(
/**********found**********/
if(a[i]%2==___1___)
{
/**********found**********/
a[j]=a[i];___2___;
}
/**********found**********/
return___3___;
18、给定程序中,函数fun的功能是:
计算下式前n项的和作为函数值返回。
例如,当形参n的值为10时,函数返回:
9.612558。
(1)0
(2)n(3)(t*t)
/**********found**********/
s=__1__;
/**********found**********/
for(i=1;i<=__2__;i++)
{t=2.0*i;
/**********found**********/
s=s+(2.0*i-1)*(2.0*i+1)/__3__;19、给定程序中,函数fun的功能是:
将a所指4×3矩阵中第k行的元素与第0行元素交换。
例如,有下列矩阵:
第6页共16页
填空题
123
456
789
101112
若k为2,程序执行结果为:
789
456
123
101112
(1)k
(2)N(3)a[k][i]
/**********found**********/voidfun(int(*a)[N],int__1__){inti,temp;
/**********found**********/
for(i=0;i<__2__;i++)
{temp=a[0][i];
/**********found**********/
a[0][i]=__3__;
20、函数fun的功能是:
将形参a所指数组中的前半部分元素中的值和后半部分元素中的值对换。
形参n中存放数组中数据的个数,若n为奇数,则中间的元素不动。
例如:
若a所指数组中的数
据依次为:
1、2、3、4、5、6、7、8、9,则调换后为:
6、7、8、9、5、1、2、3、4。
(1)1
(2)i(3)a[p+i]
/**********found**********/
p=(n%2==0)?
n/2:
n/2+___1___;
for(i=0;i{
t=a[i];
/**********found**********/
a[i]=a[p+___2___];/**********found**********/
___3___=t;
21、给定程序中,函数fun的功能是:
将形参n所指变量中,各位上为偶数的数去除,剩余的数
按原来从高位到低位的顺序组成一个新的数,并通过形参指针n传回所指变量。
例如,输入一个数:
27638496,新的数:
为739。
(1)10
(2)0(3)x
/**********found**********/
{t=*n%__1__;
/**********found**********/
if(t%2!
=__2__)
{x=x+t*i;i=i*10;}
*n=*n/10;
}
/**********found**********/
*n=__3__;
22、给定程序中,函数fun的功能是:
利用指针数组对形参ss所指字符串数组中的字符串按由
第7页共16页
填空题
长到短的顺序排序,并输出排序结果。
ss所指字符串数组中共有N个字符串,且串长小于M。
(1)i
(2)ps[j](3)tp
/**********found**********/
k=__1__;
for(j=i+1;j/**********found**********/
if(strlen(ps[k])tp=ps[i];ps[i]=ps[k];ps[k]=__3__;23、给定程序中,函数fun的功能是:
计算出形参s所指字符串中包含的单词个数,作为函数值返回。
为便于统计,规定各单词之间用空格隔开。
例如,形参s所指的字符串为:
ThisisaClanguageprogram.,函数的返回值为6。
(1)n++
(2)0(3)s++
/**********found**********/
__1__;flag=1;}
/**********found**********/
if(*s=='')flag=__2__;
/**********found**********/
__3__;
24、函数fun的功能是:
把形参a所指数组中的偶数按原顺序依次存放到a[0]、a[1]、a[2]、……中,把奇数从数组中删除,偶数个数通过函数值返回。
例如:
若a所指数组中的数据最初排列为:
9、1、4、2、3、6、5、8、7,删除奇数后a所指数组中的数据为:
4、2、6、8,返回值为4。
(1)a[i]%2
(2)a[j](3)j
/**********found**********/
if(___1___==0){
/**********found**********/
___2___=a[i];j++;
}
/**********found**********/
return___3___;
}
25、给定程序中,函数fun的功能是:
将N×N矩阵中元素的值按列右移1个位置,右边被移出矩阵的元素绕回左边。
例如,N=3,有下列矩阵
123
456
789计算结果为
312
645
978
(1)N
(2)N-1(3)0
/**********found**********/
for(i=0;i<___1___;i++)
{
/**********found**********/
x=t[i][___2___];
第8页共16页
填空题
for(j=N-1;j>=1;j--)
t[i][j]=t[i][j-1];
/**********found**********/
t[i][___3___]=x;
}
26、函数fun的功能是:
逆置数组元素中的值。
例如:
若a所指数组中的数据依次为:
1、2、3、4、5、6、7、8、9,则逆置后依次为:
9、8、7、6、5、4、3、2、1。
形参n给出数组中数据的个数。
(1)n/2
(2)i(3)a[n-i-1]
/**********found**********/
for(i=0;i<___1___;i++)
{
t=a[i];
/**********found**********/
a[i]=a[n-1-___2___];
/**********found**********/
___3___=t;
27、给定程序中,函数fun的功能是用函数指针指向要调用的函数,并进行调用。
规定在__2__处使f指向函数f1,在__3__处使f指向函数f2。
当调用正确时,程序输出:
x1=5.000000,x2=3.000000,x1*x1+x1*x2=40.000000
(1)double
(2)f1(3)f2
__1__(*f)();
doubler1,r2;
/**********found**********/
f=__2__;/*pointfountionf1*/
r1=f(a);
/**********found**********/
f=__3__;/*pointfountionf2*/28、给定程序中,函数fun的功能是:
在任意给定的9个正整数中找出按升序排列时处于中间的数,将原数据序列中比该中间数小的数用该中间数替换,位置不变,在主函数中输出处理后的数据序列,并将中间数作为函数值返回。
例如,有9个正整数:
1572387582145
按升序排列时的中间数为:
8
处理后主函数中输出的数列为:
8882387882145
(1)b[k]
(2)N/2(3)<
/**********found**********/
t=b[i];b[i]=___1___;b[k]=t;
}
}
/**********found**********/
mid=b[___2___];
for(i=0;i/**********found**********/
if(x[i]___3___mid)x[i]=mid;29、给定程