您的当前位置:首页正文

程序改错

2022-12-18 来源:钮旅网
 【1】--------------------------------------------------------

题目:函数fun的功能是:用下面的和式求圆周率的近似值。直 到最后一项的绝对值小于等于0.0001。

π 1 1 1 — = 1 - — + — - — + ... 4 3 5 7

答案:1). #include \"math.h\" 或 #include 2). float s=0,t=1,p=1

3). while(fabs(t)>1e-4) 或 while(0.0001【2】-------------------------------------------------------- 题目:以下程序输出前六行杨辉三角形,既 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 ………… …………

答案:1). for(i=0;i<6;i++) 或 for(i=0;i<=5;i++) 2). if(j==0||j==i)

3). a[i][j]=a[i-1][j]+a[i-1][j-1]; 或 a[i][j]=a[i-1][j-1]+a[i-1][j]; 4). print(\"\\n\");

【3】--------------------------------------------------------

题目:函数fun的功能是:根据整型形参m的值,计算如下公式的值。

1 1 1 t = 1- —— - —— - ... - ——

2x2 3x3 mxm

例如,若m=5,则应输出:0.536389

请改正程序中的错误,使它能得出正确的结果。 答案:1). for(i=2;i<=m;i++) 2). y-=1.0/(i*i); 3). return y;

【4】-------------------------------------------------------- 题目:fun函数的功能是:实现两个字符串的连接。

例如:输入dfdfqe和12345时,则输出dfdfqe12345. 请改正程序中的错误,使它能得出正确的结果。 答案:1). while(s1[i]!='\\0')i++; 2). while(s2[j]!='\\0') 3). s1[i]=s2[j]; 4). s1[i]='\\0';

【5】--------------------------------------------------------

题目:将数组元素逆序存放。如数组元素为1,2,3,4,5,则 逆序存放后数组元素的值为5,4,3,2,1。 程序中共有4条错误语句,请改正错误。 答案: 1). for(i=0;i<=m;i=i+1) 2). x[i]=x[j]; 3). inv(a,10);

4). printf(\"%3d\

【7】--------------------------------------------------------

题目:用指针作函数参数,编程序求一维数组中的最大和最小的元素值. 答案:1). void maxmin(int arr[ ],int *pt1,int *pt2,int n) 2). *pt1=*pt2=arr[0];

3). {if(arr[i]>*pt1) *pt1=arr[i]; 4). p1=&a;p2=&b;

【8】--------------------------------------------------------

题目:程序功能是输入一个长整数,求各位数字的平方和。如果输 入的是负数,求其相反数的各位数字的平方和。 例如:输入-123,输出14。

程序中共有3处错误,请改正错误。 答案:1). scanf(\"%ld\ 2). while(in>0) 3). in=in/10;

【9】--------------------------------------------------------

题目:编写函数fun其功能是:根据整型形参m,计算如下 公式的值:y=1+1/3+1/5+1/7+...+1/(2m-3) 答案:1). double y=1; 2). for(i=1; i<=m; i++) 3). {y+=1.0/(2*i-3);}

【10】-------------------------------------------------------- 题目:下列程序中,函数fun的功能是:找出一个大

于给定整数m的最小的素数,并作为函数值返回。 答案: 1). { int i,k; 2). if(i%k==0) 3). if(k==i)

【11】--------------------------------------------------------

题目:给定程序MODI1.C中函数 fun 的功能是:计算正整数num的 各位数字之积。例如,若输入:252,则输出应该是:20。若 输入:202,则输出应该是:0。 答案:1). {long k=1; 2). num/=10;

3). } while(num) ;

【12】--------------------------------------------------------

题目:下列给定程序中,函数fun的功能是:求1到10的阶乘的 和。主函数和fun函数中,各有两个错误,请改正,使其

能得到正确的运行结果。 答案:1). for(i=1;i<=10;i++) 2). s=s+fac(i); 3). float y=1.0; 4). return y;

【13】-------------------------------------------------------- 题目:给定程序MODI1.C中函数 fun 的功能是: 求二分之一的圆面积,函数通过形参得 到圆的半径,函数返回二分之一的圆面 积。

例如输入圆的半径值:19.527 输出为: s = 598.950017。

答案: 1). float fun(float r)

2). s=1.0/2*(3.14159*r*r); 3). return s;

【15】--------------------------------------------------------

题目:从键盘输入一个数,是3位数就加上100,是4位数就除以100, 其它情况不变。

程序中共有4条错误语句,请改正错误。 答案:1). int k=0,d; 2). while(x!=0) 3). x=x/10;

4). if(n==4) m=m/100;

【16】--------------------------------------------------------

题目:函数fun的功能是:计算正整数num的各位上的数字之积。 例如,输入252,则输出应该是20。

请改正程序中的错误,使它能得出正确的结果。 答案:1). long k=1; 2). num/=10;

3). scanf(\"%ld\

4). printf(\"\\n%ld\\n\

【17】--------------------------------------------------------

题目:程序功能是输入一个长整数,求各位数字的平方和。如果输 入的是负数,求其相反数的各位数字的平方和。 例如:输入-123,输出14。

程序中共有3处错误,请改正错误。 答案: 1). scanf(\"%ld\ 2). while(in>0) 3). in=in/10;

【18】--------------------------------------------------------

题目:以下程序的功能是统计 400~499 这些数中“4”这个数字出 现的次数,判断一个数有几位数字4用函数fun实现。程序中 共有4处错误,请改正错误。 答案: 1). while(x!=0)

2). if(y==4) k++; 3). return(k); 4). k=k+fun(i);

【19】--------------------------------------------------------

题目:fun函数的功能是:给定n个实数,输出平均值,并统计 在平均值以下(含平均值)的实数个数。例如,n=6时, 输入23.5, 45.67, 12.1, 6.4,58.9, 98.4所得平均值 为40.828335,在平均值以下的实数个数应为3。 请改正程序中的错误,使它能得出正确的结果。 答案: 1). float xa=0; 2). for(j=0;j【20】-------------------------------------------------------- 题目:将一个字符串中的大写字母转换成小写字母。 例如:输入aSdFG输出为asdfg。 答案: 1). char fun(char *c) 2). return *c;

3). { char s[81],*p=s; 4). putchar(*p);

【21】--------------------------------------------------------

题目:下列给定程序中,函数fun的功能是:判断m是否为素数, 若是返回1,否则返回0。主函数的功能是:按每行5个输 出1-100之间的全部素数。

请改正程序中的4个错误,使它能得出正确的结果。 答案: 1). int fun( int m)

2). for(i=2;i4).printf(“pi=%f\\n\

【22】-------------------------------------------------------- 题目:函数fun的功能是:求1到20的阶乘的和。 请改正程序中的错误,使它能得出正确的结果。 答案:1). t=1; 2). t=t*j; 3). s=s+t;

4). printf(\"jiecheng=%f\\n\

【23】--------------------------------------------------------

题目:下面程序的功能是:从键盘输入十个学生的成绩,统计最 高分,最低分和平均分。max代表最高分,min代表最低分, avg代表平均分。

答案:1). float a[10],min,max,avg; 2). scanf(\"%f\ 3). max=min=avg=a[0]; 4). if (min>a[i])

【25】--------------------------------------------------------

题目:已知一个数列从第0项开始的前三项分别为0、0、1,以 后的各项都是其相邻的前三项的和。下列给定程序中, 函数fun的功能是:求该数列的前n项的平方根

之和sum,n的值通过形参传入。输出由主函数完成。 例如,当n=10时,程序的输出结果应为23.197745。 请改正程序中的错误,使它能得出正确的结果。 答案: 1). double fun (int n) 2). sum=1.0; 3). s2=1.0;

4). for(k=4;k<=n;k++)

【26】--------------------------------------------------------

题目:编写函数fun其功能是:根据整型形参m,计算如下 公式的值:y=1+1/3+1/5+1/7+...+1/(2m-3) 答案:1). double y=1; 2). for(i=1; i<=m; i++) 3). {y+=1.0/(2*i-3);}

【27】--------------------------------------------------------

题目:fun函数的功能是:实现3行3列矩阵的转置,即行列互换。 例如原矩阵为: 1 2 3 4 5 6 7 8 9

则转置后的矩阵为: 1 4 7 2 5 8 3 6 9

请改正程序中的错误,使它能得出正确的结果。 答案:1). scanf(\"%d\ 2). for(j=0;j【28】-------------------------------------------------------- 题目:给定程序MODI1.C中函数 fun 的功能是: 求二分之一的圆面积,函数通过形参得 到圆的半径,函数返回二分之一的圆面 积。

例如输入圆的半径值:19.527 输出为: s = 598.950017。

答案:1). float fun(float r) 2). s=1.0/2*3.14159*r*r; 3). return s;

【30】--------------------------------------------------------

题目:有一数组内放10个整数,要求找出最小数和它的下标,然后

把它和数组中最前面的元素即第一个数对换位置. 答案:1). scanf(\"%d\ 2). for(i=1;i<10;i++) 3). if(a[i]【31】--------------------------------------------------------

题目:用指针作函数参数,编程序求一维数组中的最大和最小的元素值. 答案:1). void maxmin(int arr[ ],int *pt1,int *pt2,int n) 2). *pt1=*pt2=arr[0];

3). {if(arr[i]>*pt1) *pt1=arr[i]; 4). p1=&a;p2=&b;

【32】-------------------------------------------------------- 题目:给定程序MODI1.C中函数fun的功能是: 将长整型数中每一位上为偶数的数依次取出, 构成一个新数放在t中。高位仍在高位,低位 仍在低位。

例如,当s中的数为:87654时,t中的数为: 864。

答案:1). if(d%2==0) 2). { *t=d* sl+ *t; 3). s/=10; 或 s=s/10;

【33】--------------------------------------------------------

题目:给定程序MODI1.C中函数 fun 的功能是:计算正整数num的 各位数字之积。例如,若输入:252,则输出应该是:20。若 输入:202,则输出应该是:0。 答案:1). {long k=1; 2). num/=10;

3). } while(num) ;

【34】--------------------------------------------------------

题目:给定程序MODI1.C中函数 fun 的功能是:求广义 菲玻那契级数的第n项。广义菲玻那契级数的前n 项为: 1,1,1,3,5,9,17,31,„„ 项值通过函数值返回 main ( )函数。

例如,若 n = 15,则应输出:The value is: 2209。 答案: 1). for (k=4; k<=n; k++) 2). a=b; b=c; c=d; 3). return d;

【35】--------------------------------------------------------

题目:将s所指字符串的反序和正序进行连接形成一个新串放在 t所指的数组中。

例如:当s所指的字符串的内容为\"ABCD\"时,t所指数组中 的内容为\"DCBAABCD\"。

请改正程序中的语法错误,使它能运行出正确的结果。 答案: 1). void fun (char s[],char t[])

2). d = strlen(s);

3). for (i = 0; i【36】--------------------------------------------------------

题目:fun函数的功能是:找出大于m的最小素数,并将其作为 函数值返回。

请改正程序中的错误,使它能得出正确的结果。 答案:1). for(k=2;k【38】--------------------------------------------------------

题目:求1!+2!+3!+„„+10!。程序中共有4条错误语句,请改正错误。 答案: 1). float x=1; 2). for(i=2;i<=m;i++) 3). x=x*i; 4). return x;

【39】-------------------------------------------------------- 题目:输入10个数,要求输出这10个数的平均值 答案: 1). for(i=1;i<10;i++) 2). float score[10],aver; 3). scanf(\"%f\ 4). aver=average(score);

【40】--------------------------------------------------------

题目:将数组元素逆序存放。如数组元素为1,2,3,4,5,则 逆序存放后数组元素的值为5,4,3,2,1。 程序中共有4条错误语句,请改正错误。

答案: 1). for(i=0;i<=m;i=i+1) 或 for(i=0;i<=m;i++) 2). x[i]=x[j]; 3). inv(a,10);

4). printf(\"%3d\

【41】-------------------------------------------------------- 题目:用起泡法对10个整数从小到大排序。 程序中共有4条错误语句,请改正错误。 答案: 1). void sort(int*x,int n) 2). for(j=0;jx[j+1]) 4). sort(a,n);

【42】--------------------------------------------------------

题目:在主函数中从键盘输入若干个数放入数组中,用0结束输 入并放在最后一个元素中。下列给定程序中,函数fun的 功能是:计算数组元素中值为正数的平均值(不包括0)。 例如,数组中元素的值依次为39,-47,21,2,-8,15, 0,则程序的运行结果为19.250000。

请改正程序中的错误,使它能得出正确的结果。 答案: 1). double sum=0.0; 2). while(s[i]!=0) 3). sum/=c; 4). return sum;

【43】-------------------------------------------------------- 题目:以下程序的功能是求如下表达式:

1 1 1 S = 1 + —— + ——— + ...... + ———————

1+2 1+2+3 1+2+3+......+n 请改正程序中的错误,使程序能得到正确的运行结果。 答案: 1). scanf(\"%d\ 2). float fun(int n) 3). for(i=1;i<=n;i++) 4). s+=1.0/t

【46】--------------------------------------------------------

题目:函数fun的功能是:实现交换两个整数的值。例如给a和b 分别输入3和6 ,输出为a=6 b=3

请改正程序中的4个错误,使它能得出正确的结果。 答案:1). void fun (int *a,int *b) 2). t=*a; 3). *a=*b; 4). *b=t;

【47】-------------------------------------------------------- 题目:编写一个函数,该函数可以统计一个长度为3 的字符串在另一个字符串中出现的次数。例 如,假定输入的主字符串为: asdasasdfgasdaszx67asdmklo,

子字符串为:asd,则应输出n=4。 答案:1). int i,n=0;

2). for(i=0;i<=strlen(str)-3;i++) 3). n++;

【51】--------------------------------------------------------

题目:下面程序的功能是将十进制数转换成二进制数。程序中共 有4处错误,请改正错误。 答案:1). while (b>0) 2). b=b/2;

3). scanf(\"%d\

4). for(i=strlen(s)-1;i>=0;i--)

【56】--------------------------------------------------------

题目:编写函数fun计算下列分段函数的值,输入x,输出y的值。 x*20 x<0且x≠-3

f(x)= sin(x) 0≤x<10且x≠2及x≠3 x*x+x-1 其它

程序中共有4条错误语句,请改正错误。 答案: 1). scanf(\"%f\ 2). y=sin(3*x); 3). printf(\"%f\\n\

【57】--------------------------------------------------------

题目:通过键盘输入10个整数为一维数组各个元素赋值;将其中 最小的数与第一个数对换,将最大的数与最后一个数对换; 输出调整后的数组元素。

程序中共有4条错误语句,请改正错误。 答案: 1). scanf(\"%d\ 2). if(*p>*max) 3). if(max==arr) 4). for(i=0;i【58】--------------------------------------------------------

题目:函数fun的功能是:求出两个非零正整数的最大公约数, 并作为函数值返回。例如,若给num1和num2分别输入49 和21,则输出的最大公约数为7。

请改正程序中的错误,使它能得出正确的结果。 答案: 1). a=b; 2). b=t; 3). r=a%b;} 4). return b;

【59】--------------------------------------------------------

题目:将一个字符串中第m个字符开始的全部字符复制成为另一 个字符串。

程序中共有4条错误语句,请改正错误。 答案:1). { char *p1,*p2; 2). p1= str1+m-1; 3). while(*p1)

4). strcopy(str1,str2,m);

【62】--------------------------------------------------------

题目:函数fun的功能是:输出Fabonacci数列的前20项,要求变 量类型定义成浮点型,输出时只输出整数部分,输出项 数不得多于或少于20。

请改正程序中的4个错误,使它能得出正确的结果。 答案:1). printf(\"%8.0f\ 2). for(i=1;i<20;i++) 3). f1=f2; 4). f2=f3;

【65】--------------------------------------------------------

题目:给定程序MODI1.C中函数fun的功能是:求两数平 方根之和,作为函数值返回。

例如:输入12和20,输出结果是:y = 7.936238。 答案:1). double fun (double *a, double *b)

2). c = sqrt(*a)+sqrt(*b) ; 3). return c;

【66】--------------------------------------------------------

题目:fun函数的功能是:求一个3行4列矩阵的外框的元素值之 和,注意,矩阵四个角上的元素不能重复加。例如,矩阵 元素为1,2,3,4,5,6,7,8,9,10,11,12时,四 框元素值之和应为65。

请改正程序中的错误,使它能得出正确的结果。 答案 1). int i,j,s,s1=0,s2=0,s3=0,s4=0; 2). s2=s2+a[m-1][j]; 3). for(i=1;i

因篇幅问题不能全部显示,请点此查看更多更全内容