好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

计算机二级编程题题库归纳.pdf

26页
  • 卖家[上传人]:x****妹
  • 文档编号:254624914
  • 上传时间:2022-02-15
  • 文档格式:PDF
  • 文档大小:403.85KB
  • / 26 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 焕世级电脑学校二级C 语言内部教材1 第三部分编程题1.m 个人的成绩存放在score数组中,请编写函数fun,它的功能是 :将低于平均分的人数作为函数值返回 ,将低于平均分的分数放在below 所指的数组中例如 ,当 score数组中的数据为10、20、30、40、50、60、70、80、90 时 ,函 数 返 回 的 人 数 应 该 是4,below中的数据应为10、 20、 30、40include #include #include /*第一个 for() 循环用来计算score数 组 中 分 数 的 总 和 , 然 后 用aver/=m 求出平均值, 第二个循环用来找出小于平均分的元素,并放到数组 below 中,这里要注意j的递增方式 */ int fun(int score,int m, int below) int i,j=0,aver=0; for(i=0;im;i+) aver+=scorei; aver/=m; for(i=0;im;i+) if(scoreiaver) belowj+=scorei; return j; main() int i,n,below9; int score9=10,20,30,40,50,60,70,80,90; clrscr(); n=fun(score,9,below); printf(nBelow the average score are :); for(i=0;in;i+) printf(%4d,belowi); 2.请编写函数fun,它的功能是 :求出 1 到 1000 之内能被 7 或 11 整除、但不能同时被7 和 11整除的所有整数并将它们放在a 所指的数组中 ,通过n 返回这些数的个数。

      include #include /* 该题关键就是如何表示能被7或 11整除,但不能同时被7 和 11整除用( i%7=0)/(i%11=0) 来表 示 能 被7或11整 除 ,用 !(i%7=0)&(i%11=0)来表示不能同时被7 和 11 整除 */ void fun(int *a,int *n) int i,m=0; for(i=1;i1000;i+) if(i%7=0)| (i%11=0)&!(i%7=0)&(i%11=0) am=i;m+=1; *n=m; main() int aa1000,n,k; clrscr(); fun(aa,&n); for(k=0;kn;k+) if(k+1)%10=0) printf(n); else printf(%d,aak); 3.请编写函数void fun(int x,int pp ,int *n), 它的功能是:求出能整除 x 且不是偶数的各整数,并按从小到大的顺序放在pp 所指的数组中 ,这些除数的个数通过形参 n 返回例如 ,若 x 中的值为 30,则 有4 个 数 符 合 要 求 ,它 们 是1,3,5,15include #include /*由于要求的数不能是偶数故编程时从 1 开始循环而步长为2 这样正好保正i 永远的奇数。

      这里也要注意存放结果的数组pp的下标变化方式 */ void fun(int x, int pp, int *n) int i,j=0; for( i=1;i=x; i=i+2) if( x%i=0) ppj+=i; *n=j; main() int x, aa1000, n, i; printf(n please enter an integer number:n); scanf(%d ,&x); fun(x,aa,&n); for(i=0;in;i+) printf(%d , aai); printf(n); 4. 请 编 写 一 个 函 数void fun(char *tt,int pp),统计在字符串中 ,a?到,z?26 个字母各自出现的次数 ,并依次放在pp 所指数组中例如, 当输入字符串abcdefgabcdeabc 后,程序的输出结果应该是 :3 3 3 2 2 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ?#include #include /* 34 题:本题采用的是字母的ASCII 码值与数组pp 下标的对应转换关系分别求出对应字母的个数。

      第一个 for() 是给 pp 赋初值 0,第二个for() 用于控制在字符串内从 头 到 尾 移 动 由 于 字 母 a的ASCII 码值为 97 而它的个数要放在 pp0中, 而a-97 的值正好为 0,其它的依此类推/ void fun(char *tt,int pp) int i; for(i=0;i26;i+) ppi=0; for(;*tt;tt+) if(*tt=a) pp*tt-97+; main() char aa1000; int bb26,k; clrscr(); printf(nPlease enter a char string:);scanf(%s,aa) ; fun(aa,bb); for(k=0;k26;k+) printf(%d,bbk); printf(n); 5.请编写一个函数void fun(int m,int k,int xx), 该函数的功能是:将大于整数m 且紧靠 m 的 k 个素数存入 xx 所指的数组中例 如 , 若 输 入 :17,5, 则 应 输出:19,23,29,31,37include #include /* 本题中的for() 循环用来判断一个数是否为素数,由于个数只能是 k 个所以用do-while 循环来控制。

      */ void fun(int m, int k, int xx) int i,j=0,p=m+1; do for( i=2; i=p) xxj+=p; p+; while(jk); 焕世级电脑学校二级C 语言内部教材2 main() int m,n,zz1000; printf(n please enter two integers: ); scanf(%d%d,&m,&n); fun( m,n,zz); for(m=0; mn; m+) printf(%d , zzm); printf(n); 6.请编写一个函数void fun(char a,char b,int n),其功能是 :删除一个字符串中指定下标的字符其中 ,a 指向原字符串 ,删除后的字符串存放在b 所指的数组中 ,n 中存放指定的下标例如 ,输入一个字符串World,然后输入 3,则调用该函数后的结果为Wordinclude #include #defineLEN 20 void fun (char a , char b , int n) int i,k=0; for(i=0;ai!=0;i+) if(i!=n) bk+=ai; bk=0; main( ) FILE *wf; char strlLEN, str2LEN; int n ; printf (Enter the string : n) ; gets (strl) ; printf (Enter the position of the string deleted: ) ; scanf (%d, &n) ; fun (strl, str2, n) ; printf (The new string is : %s n, str2) ; wf=fopen(out.dat,w); fun(world,str2,3); fprintf(wf,%s,str2); fclose(wf); 7.请 编 写 一 个 函 数int fun(int *s,int t,int *k), 用来求出数组的最大元素在数组中的下标并存放在k 所指的存储单元中。

      例如 ,输入如下整数:876 675 896 101 301 401 980 431 451 777 则输出结果为 :6,980include #include int fun(int *s,int t,int *k) int i , max ; max=s0; for ( i=0; imax) max=si; *k=i; main() int a10=876,675,896,101,301,401,980,431,451,777,k; clrscr() ;fun(a,10,&k);printf(%d ,%dn ,k,ak); 8.编写函数fun,函数的功能是 :根据以下公式计算s,计算结果作为函数值返回; n 通过形参传入s=1+1/(1+2)+1/(1+2+3)+.+1/(1+2+3+4+.+n) 例如 :若 n 的值为 11时,函数的值为1.833333include float fun(int n) int i,sum=1; float s=1; for(i=2;i=n;i+) sum=sum+i; s=s+1.0/sum; return s; long chsdc(int n) int i,s; s=0; for(i=0;in;i+) s=s+i; return(s); main() int n; float s; printf(nPlease enter N:); scanf(%d, &n); s = fun(n); printf(the result is: %fn, s); NONO(); NONO ( ) /* 本函数用于打开文件, 输入数据,调用函数,输出数据,关闭文件。

      / FILE *fp, *wf ; int i, n ; float s; fp = fopen(K:k124000322in.dat,r) ; wf = fopen(K:k124000322out.dat,w) ; for(i = 0 ; i n p=m!/n!(m-n)! 例如 :m=12,n=8时 ,运 行 结 果 为495.000000include #include float fun( int m, int n) int i,j,k; long int t=1,s=1,p=1; float q; for(i=1; i=m; i+) t*=i; for(j=1; j=n; j+) s*=j; for(k=1; k=m-n; k+) p*=k; q=(float)t/s/p; return q; main() printf(np=%lfn, fun(12,8); 10.编写函数fun,它的功能是:利用以下所示的简单迭代方法求方程 cos(x)-x=0 的一个实根Xn+1=cos(Xn) 迭代步骤如下:取 x1 初值为 0.0;x0=x1,把 x1 的值赋给 x0;x1=cos(x0),求出一个新的x1; 若x0-x1的 绝 对 值 小 于0.000001,则执行步骤(5),否则执行步骤 (2);所求 x1就是方程 cos(x)-x=O的一个实根 ,作为函数值返回。

      程序将输出结果Root=0.739085include #include #include float fun() float x0,x1=0; do x0=x1; 焕世级电脑学校二级C 语言内部教材3 x1=cos(x0); while( fabs(x0-x1)1e-006); return x1; main() printf(root=%fn,fun(); 11.下列程序定义了NN 的二维数组 ,并在主函数中自动赋值请编写函数 fun(int aN) ,该函数的功能是 :使数组左下半三角元素中的值全部置成0 例如 :a 数组中的值为654832791a,则返回主程序后a数组中的值应为000800790?#include #include #include #define N 5 /* 29 题:该题的关键是如何表示出左下半角的元素,当从上往下到第 i 行时只有左边的i 个元素要置为0(每行总是。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.