for(i=2;i<=m;i++)
2y+=1/(i*i);改为y+=1.0/(i*i);
程序设计题:
请编写函数fun,函数的功能是:
实现B=A+A’,即把矩阵A加上A的转置,存放在矩阵B中。
计算结果在main函数中输出。
{
intc[3][3];
inti,j;
for(i=0;i<3;i++)
for(j=0;j<3;j++){
c[i][j]=a[j][i];
b[i][j]=a[i][j]+c[i][j];
}
}
第九套
填空:
给定程序中,函数fun的功能是:
统计形参s所指字符串中数字字符出现的次数,并存放在形参t所指的变量中,最后在主函数中输出。
1、s[i]2、'9'3、*t=n
改错:
给定程序MODI1.C中函数fun的功能是:
通过某种方式实现两个变量值的交换,规定不允许增加语句和表达式。
1、t=x;x=y;改为t=*x;*x=y;
2、return(y);改为return(t);
程序设计题:
请编写函数fun,它的功能是:
求出1到1000之间能被7或11整除、但不能同时被7和11整除的所有整数并将它们放在a所指的数组中,通过n返回这些数的个数。
{
inti;
*n=0;
for(i=7;i<1000;i++)
if(((i%7)==0||(i%11)==0)&&(i%77)!
=0)a[(*n)++]=i;
}
第十套
填空:
给定程序中,函数fun的功能是:
把形参s所指字符串中下标为奇数的字符右移到下一个奇数位置,最右边被移出的字符串的字符绕回放到第一个奇数位置,下标为偶数的字符不动(注:
字符串的长度大于等于2)。
1、1;2、s[k]3、c
改错:
给定程序MODI1.C中函数fun的功能是:
求s=aa…aa-…-aaa–aa–a(此处aa…aa表示n个a,a和n的值在1至9之间)a和n是fun函数的形参,表达式的值作为函数值传回main函数。
1、t=1;改为t=0;
2、t=t%10;改为t=t/10;
程序设计题:
请编写一个函数voidfun(char*tt,intpp[]),统计错在tt所指字符串中‘a’到‘z’26个小写字母个字出现的次数,并依次放在pp所指数组中。
{
char*p=tt;
inti;
for(i=0;i<26;i++)pp[i]=0;
while(*p){
if(*p>='a'&&*p<='z')
pp[*p-'a']+=1;
p++;
}
}
第十一套
填空:
给定程序中,函数fun的功能是:
对形参s所指字符串中下标为奇数的字符按ASCII码大小递增排序,并将排序后下表为奇数的字符取出,存入形参p所指字符数组中,形成一个新串。
1、t=i2、i3、0;
改错:
给定程序MODI1.C中函数fun的功能是用下面的公式求π的近似值,直到最后一项的绝对值小于指定的数(参数num)为止:
π/4≈1-1/3/+1/5-1/7+…
1、while(t>=num)改为while((fabs(t))>=num)
2、t=s%n;改为t=s/n;
程序设计题:
请编写一个函数voidfun(chara[],charb[],intn),其功能是:
删除一个字符串中指定下标的字符。
其中,a指向原字符串,删除指定字符后的字符串存放在b所指的数组中,n中存放指定的下标。
{
strncpy(b,a,n);
b[n]=0;
strcat(b,a+n+1);
}
第十二套
填空:
给定程序中,函数fun的功能是:
在形参s所指字符串中寻找与参数c相同的字符,并在其后插入一个与之相同的字符,若找不到相同的字符则函数不做任何处理。
1、02、03、c
改错:
在主函数中从键盘输入若干个数放入数组中,用0结束输入并放在最后一个元素中。
给定程序MODI1.C中函数fun的功能是:
计算数组元素中值为正数的平均值(不包括0)。
1、intsum=0.0;改为doublesum=0.0;
2、sum\=c;改为sum/=c;
程序设计题:
编写函数fun,函数的功能是:
根据以下公式计算s,计算结果作为函数值返回;n通过形参传入。
S=1+1/(1+2)+1/(1+2+3)+……+1/(1+2+3+…+n)。
{
return2.0*n/(n+1);
}
第十三套
填空:
给定程序中,函数fun的功能是:
有N×N矩阵,根据给定的m(m<=N)值,将每行元素中的值均右移m个位置,左边置为0。
1、i++2、m3、m
改错:
给定程序MODI1.C中函数fun的功能是:
计算并输出high以内最大的10个素数之和。
high的值由主函数传给fun函数。
1、while((high>=2)&&(n<10)改为while((high>=2)&&(n<10))
2、yes=0;break改为yes=0;break;
程序设计题:
编写函数fun,它的功能是:
利用以下所示的简单迭代方法求方程:
cos(x)-x=0的一个实根。
Xn+1=cos(Xn)。
{
floatx0,x1=0.0;
do{
x0=x1;
x1=cos(x0);
}while(fabs(x0-x1)>0.000001);
returnx1;
}
第十四套
填空:
给定程序中,函数fun的功能是:
将N×N矩阵中元素的值按列右移1个位置,右边被移出矩阵的元素绕回左边。
1、N2、N-13、0
改错:
给定程序MODI1.C中函数fun的功能是:
计算并输出下列级数的前N项之和Sn,直到Sn+1大于q为止,q的值通过形参传入。
Sn=2/1+3/2+4/3+…+(n+1)/n
1、s=s+(n+1)/n;改为s=s+(n+1.0)/n;
2、returns;改为returnt;
程序设计题:
编写函数fun,它的功能是:
求Fibonacci数列中大于t的最小的一个数,结果由函数返回。
其中Fibonacci数列F(n)的定义为:
F(0)=0,F
(1)=1,F(n)=F(n-1)+F(n-2)。
{
intf0=0,f1=1,f;
do{
f=f0+f1;
f0=f1;
f1=f;
}while(freturnf;
}
第十五套
填空:
给定程序中,函数fun的功能是:
有N×N矩阵,将矩阵的外围元素顺时针旋转。
操作顺序是:
首先将第一行元素的值存入临时数组r,然后使第一列成为第一行,最后一行成为第一列,最后一列成为最后一行,临时数组中的元素成为最后一列。
1、02、j--3、j
改错:
给定程序MODI1.C中函数fun的功能是:
计算S=f(-n)+f(-n+1)+…+f(0)+f
(1)+f
(2)+…+f(n)的值。
f(x)函数定义略。
1、f(doublex)改为doublef(doublex)
2、returns改为returns;
程序设计题:
编写函数fun,它的功能是计算:
s=根号ln
(1)+ln
(2)+ln(3)+…+ln(m),s作为函数值返回。
在C语言中可调用log(n)函数求ln(n)。
log函数的引用说明是:
doublelog(doublex)。
{
doubles=0.0;
inti;
for(i=1;i<=m;i++)s+=log(1.0*i);
s=sqrt(s);
returns;
}
第十六套
填空:
给定程序中,函数fun的功能是:
有N×N矩阵,以主对角线为对称线,对称元素相加并将结果存放在左下三角元素中,右下三角元素置为0。
1、[N]2、t[i][j]3、t[j][i]
改错:
给定程序MODI1.C中函数fun的功能是:
计算函数F(x,y,z)=(x+y)/(x-y)+(z+y)/(z-y)的值。
其中x和y的值不等,z和y的值不等。
1、#defineFU(m,n)(m/n)改为
#defineFU(m,n)((m)/(n))
2、Return(Value);改为return(value);
程序设计题:
规定输入的字符串中只包含字母和*号。
请编写函数fun,它的功能是:
将字符串中的前导*号全部删除,中间和尾部的*号不删除。
{
intj=0;
char*p=a;
while(*p=='*')p++;
while(*p){
a[j++]=*p;
p++;
}
a[j]=0;
}
第十七套
填空:
给定程序中,函数fun的功能是:
将N×N矩阵中主对角线元素中的值与反向对角线对应位置上元素中的值进行交换。
1、t[][N]2、i=0;i改错:
由N个有序整数组成的数列已放在一维数组中,给定程序MODI1.C中函数fun的功能是:
利用折半查找算法查找整数m在数组中的位置。
若若找到,返回其下标值;反之,返回-1。
折半查找的基本算法略。
1、voidfun(inta[],intm)改为
fun(inta[],intm)
2、elseIf(m>a[mid])改为elseif(m>a[mid])
程序设计题:
假定输入的字符串中只包含字母和*号。
请编写函数fun,它的功能是:
除了尾部的*号之外,将字符串中其他*号全部删除。
形参p已指向字符串中最后的一个字母。
在编写函数时,不得使用C语言提供的字符串函数。
{
char*q=a;
intj=0;
while(*q&&q
if(*q!
='*')a[j++]=*q;
q++;
}
while(*p)a[j++]=*p++;
a[j]=0;
}
第十八套
填空:
给定程序中,函数fun的功能是:
计算N×N矩阵的主对角线元素和反向对角线元素之和,并作为函数值返回。
注意,要求先累加主对角线元素中的值,然后累加反向对角线元素中的值。
1、sum=02、t[i][i]3、1
改错:
给定程序MODI1.C中函数fun和funx的功能是:
用二分法求方程2x3-4x2+3x-6=0的一个根,并要求绝对误差不超过0.001。
1、intr;改为doubler;
2、while(fabs(n-m)<0.001)改为
while(fabs(n-m)>0.001)
程序设计题:
假定输入的字符串中只包含字母和*号。
请编写函数fun,它的功能是:
除了字符串前导和尾部的*号之外,将串中其他*号全部删除。
形参h已指向字符串中第一个字母,形参p已指向字符串中最后一个字母。
在编写函数时,不得使用C语言提供的字符串函数。
{
intj=0;
char*q=a;
while(*q&&qwhile(*h&&*p&&h
if(*h!
='*')a[j++]=*h;
h++;
}
while(*p)a[j++]=*p++;
a[j]=0;
}
第十九套
填空:
函数fun的功能是:
把形参a所指数组中的奇数按原顺序依次存放在a[0]、a[1]、a[2]、……中,把偶数从数组中删除,奇数个数通过函数值返回。
1、12、j++3、j
改错:
给定程序MODI1.C中函数fun的功能是:
求出两个非零正整数的最大公约数,并作为函数值返回。
1、t=a;b=a;a=t;改为t=b;b=a;a=t;
2、return(a);改为return(b);
程序设计题:
假定输入的字符串中只包含字母和*号。
请编写函数fun,它的功能是:
删除字符串中所有的*号。
在编写函数时,不得使用C语言提供的字符串函数。
{
intj=0;
char*p=a;
while(*p){
if(*p!
='*')a[j++]=*p;
p++;
}
a[j]=0;
}
第二十套
填空:
函数fun的功能是:
把形参a所指数组中的偶数按原顺序依次存放在a[0]、a[1]、a[2]、……中,把奇数从数组中删除,偶数个数通过函数值返回。
1、a[i]%22、a[j]3、j
改错:
给定程序MODI1.C中函数fun的功能是:
按以下递归公式求函数值。
fun(n)=10(n=1),fun(n)=fun(n-1)+2(n>1)。
1、fun(n)改为fun(intn)
2、if(n=1)改为if(n==1)
程序设计题:
假定输入的字符串中只包含字母和*号。
请编写函数fun,它的功能是:
使字符串中尾部的*号不得多于n个;若多余n个,则删除多余的*号;若少于或等于n个,则什么也不做,字符串中间和前面的*号不删除。
n的值在主函数中输入。
在编写函数时,不得使用C语言提供的字符串函数。
{
char*p=a;
intj=0;
while(*p)p++;p--;
while(*p=='*')p--;
p++;
while(jp++;
j++;
}
*p=0;
}
第二十一套
填空:
函数fun的功能是:
把形参a所指数组中的最小值放在元素a[0]中,接着把形参a所指数组中的最大值放在a[1]元素中;再把a所指数组元素中的次最小值放在a[2]中,把a所指数组元素中的次最大值放在a[3]中;其余以此类推。
形参n中存放a所指数组中数据的个数。
1、a[i]2、a[j]3、a[j]
改错:
用递归算法计算斐波拉数列中第n项的值。
从第1项起,斐波拉契数列为:
1、1、2、3、5、8、13、21、……
1、switch(g);改为switch(g)
2、case1;case2:
return1;改为
case1:
return1;case2:
return1;
程序设计题:
某学生的记录由学号、8门课程成绩和平均分组成,学号和8门课程的成绩已在主函数中给出。
请编