2022年改错题库 .pdf
《2022年改错题库 .pdf》由会员分享,可在线阅读,更多相关《2022年改错题库 .pdf(39页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、改错题1 考点一:基础、函数部分100以下给定程序的功能是:读入一个整数k(2 k10000),打印它的所有质因子( 即所有为素数的因子) 。例如,假设输入整数2310,则应输出: 2、3、5、7、11。#include #include /*found*/ IsPrime( int n ); int i,m; m=1; /*found*/ for(i=2;in;i+) if !( n%i ) m=0; break; return(m); main( ) int j, k; printf(nPlease enter an integer number between 2 and 10000:)
2、; scanf(%d,&k); printf(nnThe prime factor(s) of %d is( are ):n,k); for(j=2;j=k;j+) if(!(k%j)&(IsPrime(j) printf(%4d,j); printf(n); 101以下给定程序中,函数 fun 的功能是: 根据整型形参m的值 , 计算如下公式的值。mmt*1.3*312*211例如,假设m中的值为 5,则应输出: 0.536389 。#include #include double fun( int m) double y=1.0; int i; /*found*/ for(i=2;im;i
3、+) /*found*/ y-=1/(i*i); return (y); main() int n=5; printf(n the result is %lfn,fun(n); 102以下给定程序中,fun 函数的功能是:根据形参m ,计算如下公式的值。mt1.4131211例如,假设输入5,则应输出2.283333 。#include #include double fun( int m ) double t = 1.0; int i; for( i = 2; i = m; i+ ) /*found*/ t+=1/k; /*found*/ _ main() int m; printf(nPl
4、ease enter a integer number:); scanf(%d,&m); printf(nThe result is %fn,fun(m); 103以下给定程序中,函数fun 和 funx 的功能是:用二分法求方程 2x3-4X2+3X-6=O的一个根,并要求绝对误差不超过0.001 。例如,假设给m输入 -100 ,给 n 输入 90,则函数求得的一个根值为2.000 。#include #include double funx(double x) return (2*x*x*x-4*x*x+3*x-6); double fun(double m,double n) /*fo
5、und*/ int r; r=(m+n)/2; /*found*/ while(fabs(n-m)0.001) if(funx(r)*funx(n)0) m=r; else n=r; r=(m+n)/2; return r; main() 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 1 页,共 39 页改错题2 double m,n, root; printf(enter m n:n); scanf(%lf%lf,&m,&n); root=fun(m,n); printf(root=%6.3fn,root); 104. 以下给定程序中, 函数
6、fun 的功能是: 计算并输出k 以内最大的 10 个能被 13 或 17 整除的自然数之和。 k 的值由主函数传入,假设k 的值为 500,则函数值为4622。#include #include int fun( int k ) int m=0,mc=0,j,n; while(k =2) & (mc10) /*found*/ if(k%13=0) | (k%17 =0) m = m+ k; mc+; k-; return m; /*found*/ _ main ( ) printf(%dn,fun (500); 105. 以下给定程序中, 函数 fun 的功能是: 根据整型形参m ,计算如下
7、公式的值。mmy*1.4*413*312*211例如,假设m中的值为 5,则应输出: 1.46361l 。#include #include double fun(int m) double y=1.0 ; int i; /*found*/ for(i=2;im;i+) /*found*/ y+=1/(i*i) ; return(y) ; main( ) int n = 5 ; printf(nThe result is %lfn fun(n) ; 106. 以下给定程序中函数fun 的功能是:计算n! 。例如,给 n 输入 5,则输出120.000000。#include #include
8、double fun( int n ) double result = 1.0 ; /*found*/ if n = = 0 return 1.0 ; while( n 1 & n 170 ) /*found*/ result *= n- return result ; main ( ) int n ; printf(Input N:) ; scanf(%d, &n) ; printf(nn%d! =%lfnn, n,fun(n) ; 107以下给定程序中,函数fun 的功能是:根据以下公式求值,并作为函数值返回。例如,给指定精度的变量eps 输入 0.0005 时,应当输出 Pi=3.140
9、578 。.9473523173523152313112#include #include #include double fun(double eps) double s,t; int n=1; s=0.0; /*found*/ t=0; /*found*/ while(teps) s+=t; t=t*n/(2*n+1); n+; /*found*/ return(s); main() 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 2 页,共 39 页改错题3 double x; printf(nplease enter a precision
10、:); scanf(%lf,&x); printf(neps=%lf, Pi=%lfnn,x,fun(x); 108. 以下给定程序中函数fun 的功能是: 计算正整数 num的各位上的数字之积。例如,假设输入252,则输出应该是20。假设输入 202,则输出应该是0。#include #include long fun (long num) /*found*/ long k; do k*=num%10; /*found*/ num=10; while(num); return (k); main( ) long n ; printf(Please enter a number:); scan
11、f(%ld,&n) ; printf(n%ldn,fun(n) ; 109. 以下给定程序中, 函数 fun 的功能是: 求三个数的最小公倍数。例如,给变量xl 、x2、x3 分别输入 15 11 2,则输出结果应当是330。#include fun(int x,int y,int z) int j,t,n,m; /*found*/ j=0; t=j%x; /*found*/ m=t%y; n=j%z; while(t!=0 | m!=0 | n!=0) j=j+1; t=j%x; /*found*/ m=t%y; n=j%z; return j; main() int x1,x2,x3,j;
12、 printf(input x1 x2 x3:); scanf(%d%d%d,&x1,&x2,&x3); printf(x1=%d, x2=%d, x3=%d n,x1,x2,x3); j=fun(x1,x2,x3); printf(the minimal common multiple is :%dn,j); 110. 已知一个数列从第0 项开始的前三项分别为0、0、1,以后的各项都是其相邻的前三项之和。以下给定程序中,函数 fun的功能是:计算并输出该数列前n 项的平方根之和sum。n 的值通过形参传入。例如,当n=10 时,程序的输出结果应为 23.197745 。#include #i
13、nclude #include /*found*/ fun(int n) double sum,s0,s1,s2,s; int k; sum = 1.0; if(n=2) sum = 0.0; s0 = 0.0; s1 = 0.0; s2 = 1.0; for(k=4;k=n;k+) s=s0+s1+s2; sum+=sqrt(s); s0=s1; s1=s2; s2=s; /*found*/ return sum main ( ) int n; printf(Input N=); scanf(%d, &n); printf(%fn,fun(n); 111. 以下给定程序中, 函数 fun 的
14、功能是: 找出一个大于给定整数 m且紧随 m的素数,并作为函数值返回。#include #include int fun(int m) int i, k ; 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 3 页,共 39 页改错题4 for(i = m + 1; ;i+) for(k=2;ki;k+) /*found*/ if(i%k!=0) break ; /*found*/ if(ki) return(i); main( ) int n ; printf(nPlease enter n: ) ; scanf(%d,&n ) ; printf(
15、%dn, fun(n) ; 112. 以下给定程序中, 函数 fun 的功能是: 根据整型形参m ,计算如下公式的值。 例如,假设 m=2000 , 则应输出:O.000160。mmy1.300300120020011001001#include #include /*found*/ fun(int m) double y = 0,d ; int i ; /*found*/ for(i=100,i= m,i+=100) d=(double)i *(double)i ; y+=1.0/d ; return(y) ; main( ) int n=2000; printf(nThe result i
16、s %lfn,fun(n) ; 113. 以下给定程序中, 函数 fun 的功能是: 计算并输出high以内最大的10 个素数之和。 high 由主函数传给fun 函数。假设 high 的值为 100,则函数的值为732。#include #include #include int fun(int high ) int sum=0,n=0,j,yes; /*found*/ while(high=2) & (n10) yes=1; for(j=2;j=high/2;j+ ) /*found*/ if(high%j=0)yes=0; break if(yes) sum+=high;n+; high
17、-; return sum ; main ( ) printf(%dn, fun (100); 114以下给定程序中,函数fun 的功能是:将大写字母转换为对应小写字母之后的第五个字母:假设小写字母为vz,使小写字母的值减21。转换后的小写字母作为函数值返回。例如,假设形参是字母A,则转换为小写字母f;假设形参是字母W ,则转换为小写字母b。#include #include char fun(char c) if(c=A & c=a & c=v & c=z) c=c-21; return c; main() char c1,c2; printf(nenter a letter(A-Z):);
18、 c1=getchar(); if(isupper(c1) c2=fun(c1); printf(nnthe letter %c change to %cn,c1,c2); 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 4 页,共 39 页改错题5 else printf(nenter (A-Z)!n); 115. 以下给定程序中,fun 函数的功能是:求出以下分数序列的前 n 项之和。和值通过函数值返回main() 函数。,.1321,813,58,35,23,12例如,假设n=5,则应输出8.391667 。#include #include
19、 /*found*/ fun(n) int n ; int a=2,b=1 ,c,k ; double s=0.0 ; for(k =1;k=n;k+ ) s=s+1.0*a/b ; /*found*/ c=a; a+=b;b+=c; return(s) ; main( ) int n = 5 ; printf( nThe value of function is: %lfn,fun(n) ; 116以下给定程序中,函数fun 的功能是:根据输入的三个边长 ( 整型值 ) ,判断能否构成三角形:构成的是等边三角形,还是等腰三角形。假设能构成等边三角形函数返回3,假设能构成等腰三角形函数返回2,
20、假设能构成三角形函数返回 l ,假设不能构成三角形函数返回0。#include int fun(int a,int b,int c) if(a+bc & b+ca & a+cb) if(a=b & b=c) /*found*/ return 1; else if(a=b | b=c | a=c) return 2; /*found*/ else return 3; else return 0; main() int a,b,c,shape; printf(ninputer a,b,c: ); scanf(%d%d%d,&a,&b,&c); printf(na=%d, b=%d, c=%dn,a
21、,b,c); shape=fun(a,b,c); printf(nnthe shape: %dn,shape); 117. 以下给定程序中, fun 函数的功能是: 传入一个整数m ,计算如下公式的值。请改正函数fun 中的错误或在横线处填上适当的内容并把横线删除,使它能计算出正确的结果。mt1.31211例如,假设输入5,则应输出 -0.283333 。#include #include double fun( int m ) double t=1.0; int i; /*found*/ for(i=2;i=m;i+) t=1.0-1.0/t; /*found*/ ; main() int
22、m ; printf( nPlease enter 1 integer numbers:n ); /*found*/ scanf(%d &m) printf( nnThe result is %lfn,fun(m); 118. 以下给定程序中函数fun 的功能是。判断一个整数m是否是素数,假设是返回1,否则返回0。在 main() 函数中,假设 fun 返回 l 则输出 YES ,假设 fun 返回 O则输出 NO!。#include #include int fun(int m) int k=2; while(k=m & (m%k) /*found*/ k+ /*found*/ if(m=k
23、 ) 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 5 页,共 39 页改错题6 return 1; else return 0; main( ) int n; printf(nPlease enter n:);scanf(%d,&n); if (fun(n) printf(YESn); else printf(NO!n); 119以下给定程序中函数fun的功能是:求出以下分数序列的前 n 项之和。和值通过函数值返回main 函数。,.1321,813,58,35,23,12例如,假设n=5,则应输出8.391667 。#include #inc
24、lude /*found*/ fun(int n) int a,b,c,k; double s; s=0.0;a=2;b=1; for(k=1;k=n;k+) /*found*/ s=s+(Double)a/b; c=a;a=a+b;b=c; return s; main() int n=5; printf(nthe value of function is :%lfn,fun(n); 120以下给定程序中, 函数 fun 的功能是: 根据整型形参n,计算如下公式的值。例如,假设n=lO,则应输出O.617977。12312111,.,11,11, 1nnAAAAAAA#include #in
25、clude /*found*/ int fun(int n) float A=1;int i; /*found*/ for(i=2;i1 & n170) /*found*/ result*=-n; /*found*/ return _; main() int n; printf(enter an integer:); scanf(%d,&n); printf(nn%d!=%lgnn,n,fun(n); 122以下给定程序中,函数fun 的功能是:从3 个红球, 5个白球, 6 个黑球中任意取出8 个作为一组,进行输出。在每组中,可以没有黑球,但必须要有红球和白球。组合数作为函数值返回。正确的组
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年改错题库 2022 改错 题库
限制150内