计算机二级c上机考试题库80题答案.pdf

上传人:无*** 文档编号:94698325 上传时间:2023-08-05 格式:PDF 页数:201 大小:15.81MB
返回 下载 相关 举报
计算机二级c上机考试题库80题答案.pdf_第1页
第1页 / 共201页
计算机二级c上机考试题库80题答案.pdf_第2页
第2页 / 共201页
点击查看更多>>
资源描述

《计算机二级c上机考试题库80题答案.pdf》由会员分享,可在线阅读,更多相关《计算机二级c上机考试题库80题答案.pdf(201页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、第 1套 一、填 空 题 给 定 程 序 的 功 能 是 求 1/4的 圆 周 长。函 数 通 过 形 参 得 到 圆 的 直 径,函 数 返 回 1/4的 圆 周 长(圆 周 长 公 式 为:L=Hd,在 程 序 中 定 义 的 变 量 名 要 与 公 式 的 变 量 相 同)。例 如:输 入 圆 的 直 径 值:1 9.5 2 7,输 出 为:15.336457请 勿 改 动 主 函 数 m ain与 其 他 函 数 中 的 任 何 内 容,仅 在 横 线 上 填 写 所 需 的 若 干 表 达 式 或 语 句#includedouble fun(double d)return 3.141

2、59*d/4.0;main()double z;printf(nInput the d of the round:);scanf(%lF,&z);printf(nL=%lfnfun(z);二、改 错 题 下 列 给 定 程 序 中 函 数 fu n的 功 能 是:计 算 正 整 数 m 的 各 位 上 的 数 字 之 积。例 如,若 输 入 2 0 2,则 输 出 应 该 是 0。请 修 改 程 序 中 的 错 误,得 出 正 确 的 结 果 注 意:不 要 改 动 m ain函 数,不 能 增 行 或 删 行,也 不 能 更 改 程 序 的 结 构#include#includelong f

3、un(long n)(long r=l;do(r*=n%10;n/=10;while(n);retum(r);main()(long m;printf(nnplease enter a number:1 1);scanfi(n%ldn,&m);printf(nn%ldnn,fun(m);1三、编 程 题 请 编 写 一 个 函 数 fun,它 的 功 能 是:求 出 1到 m 之 内(含 m)能 被 7 或 11整 初 的 所 有 整 数 放 在 数 组 b 中,通 过 n 返 回 这 些 数 的 个 数。例 如,若 传 送 给 m 的 值 为 2 0,则 程 序 输 出 7 1 1 14。请

4、 勿 改 动 主 函 数 m ain与 其 他 函 数 中 的 任 何 内 容,仅 在 函 数 fu n的 花 括 号 中 填 入 所 编 写 的 若 干 语 句。#include#include#define N 100void fiin(int m,int*b,int*n)int i,j=O;*n=O;fbr(i=l;i=m;i+)if(i%7=0|i%ll=0)(bU=i;j+;)*n=j;main()int aN,n,i;FILE*out;fun(20,a,&n);fbr(i=0;in;i+4-)if(i+l)%20=0)printf(u%4dnn,ai);elseprintf(n%4

5、dM,ai);printf(Hnn);out=fbpen(,outfile.datn,Hw);fun(100,a,&n);fbr(i=0;in;i+)if(i+l)%10=0)fprintf(out,H%4dnM,ai);elsefprintf(out,M%4dM,ai);fclose(out);第 2套 一、填 空 题 2函 数 出 n 的 功 能 是:统 计 长 整 数 te st的 各 位 上 出 现 数 字 5、6、7 的 次 数,并 通 过 外 部(全 局)变 量 sum5、sum6 sum 7返 回 主 函 数。例 如:当 test=89431676 时,结 果 应 该 为:sum

6、5=0 sum6=2 sum7=1 o请 勿 改 动 主 函 数 m ain与 其 它 函 数 中 的 任 何 内 容,仅 在 fu n函 数 的 横 线 上 填 写 所 需 的 若 干 表 达 式 或 语 句。#includeint sum5,sum6,sum7;void fun(long test)(sum5=sum6=sum7=0;while(test)switch(test%10)case 5:sum5-H-;break;case 6:sum6-H-;break;case 7:sum7-H-;test/=10;main()(long test=89431676L;fiin(test);

7、printf(HnThe count result:nn);printfi(ntest=%ld sum5=%d sum6=%d sum7=%dnn,test,sum5,sum6,sum7);二、改 错 题 下 列 给 定 程 序 中,函 数 ftm的 功 能 是:将 字 符 串 s tr中 的 小 写 字 母 都 改 为 对 应 的 大 写 字 母,其 它 字 符 不 变。例 如,若 输 入 a s A S,则 输 出“ASAS”。请 修 改 程 序 中 的 错 误,使 它 能 统 计 出 正 确 的 结 果。注 意:不 要 改 动 m ain函 数,不 能 增 行 或 删 行,也 不 能 更

8、 改 程 序 的 结 构#include#include#includechar*fun(char str)int i;for(i=O;stri;i+)if(stri=,a,&stri=z,)stri-=32;return(str);3main()(char str81;printf(nnplease enter a string:n);gets(str);printf(HnThe result string is:n%s,fun(str);三、编 程 题 请 编 写 一 个 函 数 f u n,它 的 功 能 是:找 出 一 维 整 型 数 组 元 素 中 最 小 的 值 和 它 所 在 的

9、 下 标,最 小 的 值 和 它 所 在 的 下 标 通 过 形 参 传 回。数 组 元 素 中 的 值 已 在 主 函 数 中 赋 予。主 函 数 中 a 是 数 组 名,n 是 a 中 的 数 据 个 数,m in存 放 最 小 值,flag存 放 最 小 值 所 在 元 素 的 下 标 请 勿 改 动 主 函 数 m ain与 其 它 函 数 中 的 任 何 内 容,仅 在 函 数 fu n的 花 括 号 中 填 入 所 编 写 的 若 干 语 句。#include#include#includevoid fun(int b,int n,int*min,int*d)int i;*min=

10、b0;*d=0;fbr(i=O;in;i-H-)if(bi*min)(*min=bi;*d=i;main()int i,a20,min,flag,n=10;FILE*out;tbr(i=0;in;i+)(ai=rand()%50;printf(n%4du,ai);printf(nnu);fiin(a,n,&min,&flag);printf(Hmin=%5d,Index=%4dnH,min,flag);out=fbpen(noutflie.datn,nwn);memcpy(a/3.141592653589793238462643383279/2);fun(a,8,&min,&flag);4f|

11、)rintf(out,”min=%5d,Index=%4d”,min,flag);fclose(out);第 3 套 上 机 考 试 试 题 一、填 空 题 请 补 充 m ain函 数,该 函 数 的 功 能 是:从 键 盘 输 入 一 组 整 数,使 用 条 件 表 达 式 找 出 最 大 的 整 数。当 输 入 的 整 数 为-1时 结 束。例 如:输 入 96 121 23 343 232 54 89 365 89-1 B 寸,最 大 的 数 为 365。仅 在 横 线 上 填 写 所 需 的 若 干 表 达 式 或 语 句,请 勿 改 动 函 数 中 的 其 它 任 何 内 容#in

12、clude#include#define NUM 100main()int nNUM;int i=-l;int MAX=-1;printsnnlnsert integer with the-1*as end:nu);do(i+;printf(un%d=n,i);scanf(,%d,&ni);MAX=MAXni?ni:MAX;while(ni!=-l);printf(HThe MAX=%dnn,MAX);二、改 错 题 下 列 给 定 程 序 中,函 数 fUn的 功 能 是:将 一 个 由 八 进 制 数 字 字 符 组 成 的 字 符 串 转 换 为 与 其 数 值 相 等 的 十 进 制

13、整 数。例 如,若 输 入 1 1 1 1 1,则 输 出 将 是 4681。请 修 改 程 序 中 的 错 误,使 它 能 得 出 正 确 结 果。注 意:不 要 改 动 m ain函 数,不 能 增 行 或 删 行,也 不 能 更 改 程 序 的 结 构#include#include#includeint fun(char*s)int n;n=*s-,0*;S-H-;while(*s!=0)(n=n*8+*sJ0;5S-H-;return n;)main()char str6;int i;int n;printffEnter a string(octal digits):);gets(s

14、tr);if(strlen(str)5)printffErro亡 string too longer!nnu);exit(O);for(i=O;stri;i+)if(stri(7,)printf(nError:%c not is octal digits!nn*,stri);exit(O);printffThe original string:*);puts(str);n=fun(str);printf(nn%s is convered to intege number:%dnnn,str,n);三、编 程 题 下 列 程 序 定 义 了 N X N 的 二 维 数 组,并 在 主 函 数 中

15、 赋 值。请 编 写 函 数 firn,函 数 的 功 能 是:求 出 数 组 周 边 元 素 的 平 均 值 并 作 为 函 数 值 返 回 给 主 函 数 中 的 re例 如:若 c数 组 中 的 值 为:1 9 7C=4 5 23 8 3则 返 回 主 程 序 后 r 的 值 应 为 4.625000请 勿 改 动 主 函 数 main与 其 他 函 数 中 的 任 何 内 容,仅 在 函 数 fun的 花 括 号 中 填 入 所 编 写 的 若 干 语 句#include#include#include#define N 3double fun(int bN)6ini i,j,k=O;

16、double r=0.0;fbr(j=O;jvN;j+)r+=b0U;k+;fbr(j=O;jN;j+)(r+=bN-lj;k+;for(i=l;i=N-2;i+)(r+=bi0;k+;for(i=l;i=N-2;i+)r+=biN-l;k+;return r/=k;main()intcNN=l,9,7,4,5,2,3,8,3);int i,j;FILE*out;double r;printf(*n”).fbr(i=0;iN;i+)fbr(j=O;jN;j-H-)(printf(n%4dn,cij);printf(nn);r=fun(c);printf(HTHE R E S U L T)pri

17、ntf(nThe r is%lfnu,r);out=fopen(,outfile.dat,wn);7fprintf(out,%lf,r);fclose(out);第 4 套 上 机 考 试 试 题 一、填 空 题 请 补 充 fUn函 数,该 函 数 的 功 能 是 将 字 符 串 s tr中 的 小 写 字 母 都 改 为 对 应 的 大 写 字 母,其 它 字 符 不 变。例 如:若 输 入 Welcome!”,程 序 输 出 结 果 是“WELCOME!”。请 勿 改 动 主 函 数 m ain与 其 它 函 数 中 的 任 何 内 容,仅 在 fu n函 数 的 横 线 上 填 写 所

18、 需 的 若 干 表 达 式 或 语 句。#include#include#includechar*fiin(char str)intj;fbr(j=O;strj;j+)(if(strj=a)&(str|j=z,)str 叶=32;j.return(str);main()(char str100;printf(nnplease enter a string:r,);gets(str);printsnnThe result string is:n%sn,fun(str);二、改 错 题 下 列 给 定 程 序 中,函 数 fu n的 功 能 是:计 算 并 输 出 n 以 内 最 大 的 10个

19、 能 被 11或 19整 除 的 自 然 数 之 和。n 的 值 由 主 函 数 传 入,若 n 的 值 为 3 0 0,则 函 数 值 为 2646。请 修 改 程 序 中 的 错 误 或 在 横 线 处 填 上 适 当 的 内 容 并 把 横 线 删 除,使 程 序 能 得 出 正 确 的 结 果。注 意:不 要 改 动 m ain函 数,不 能 增 行 或 删 行,也 不 能 更 改 程 序 的 结 构。#include#includeint fun(int n)8int m=O,mix=O;while(n=2)&(mix 10)if(n%l l=0)|(n%19)=0)(m=m+n;m

20、ix+;n-;return m;)main()printf(dn”,fun(300);三、编 程 题 请 编 写 函 数 f u n,其 功 能 是:将 str所 指 字 符 串 中 除 了 下 标 为 偶 数、同 时 A S C I I值 也 为 偶 数 的 字 符 外,其 余 的 全 部 删 除;串 中 剩 余 字 符 所 形 成 的 一 个 新 串 放 在 s 所 指 的 数 组 中。例 如,若 str所 指 字 符 串 中 的 内 容 为 ABCDEFG123456,其 中 字 符 A 的 A S C H 码 值 为 奇 数,因 此 应 当 删 除;其 中 字 符 B 的 A S C

21、H 值 为 偶 数,但 在 数 组 中 的 下 标 为 奇 数,因 此 也 应 当 删 除:而 字 符 2 的 A S C I I码 值 为 偶 数,所 在 数 组 中 的 下 标 也 为 偶 数,因 此 不 应 当 删 除,其 它 以 此 类 推。最 后 s 所 指 的 数 组 中 的 内 容 应 是 246。请 勿 改 动 主 函 数 main与 其 它 函 数 中 的 任 何 内 容,仅 在 函 数 fun的 花 括 号 中 填 入 所 编 写 的 若 干 语 句。注 意:部 分 源 程 序 给 出 如 下。#include#include#includevoid fun(char*st

22、r,char s)int i,j=O,n;n=strlen(str);fbr(i=0;in;i+)if(i%2=0&stri%2=0)(sj=stri;j+;sj-O;main()9char str100,s100;FILE*out;printfnplease enter string:);scanf(,%s,str);fiin(str,s);printf(nnThe result is:%snn,s);out=fbpen(outfile.datn,nwn);strcpy(str,nplease enter string:H);fun(str,s);母 rintf(outj%s”,s);fcl

23、ose(out);第 5套 上 机 考 试 试 题 一、填 空 题 请 补 充 fiin函 数,该 函 数 的 功 能 是:依 次 取 出 字 符 串 中 所 有 大 写 字 母,形 成 新 的 字 符 串,并 取 代 原 字 符 串。例 如,输 入 sdfASDsd,则 输 出 ASD。请 勿 改 动 主 函 数 m ain与 其 它 函 数 中 的 任 何 内 容,仅 在 fu n函 数 的 横 线 上 填 写 所 需 的 若 干 表 达 式 或 语 句。注 意:部 分 源 程 序 给 出 如 下。#include#includevoid fun(char*s)|int j=0;char*

24、p=s;while(*p)(if(*p=,A&*p=,Z,)sj=*P;j+;p+;sj=O;main()char str100;printf(nnPlease Input a string:0);gets(str);printf(nnnThe original string is:%snu,str);fiin(str);10printf(,nnThe string of changing is:%snu,str);二、改 错 题 下 列 给 定 程 序 中,函 数 fu n的 功 能 是:先 从 键 盘 上 输 入 一 个 3 行 3 列 矩 阵 的 各 个 元 素 的 值,然 后 输 出

25、主 对 角 线 元 素 之 和。请 修 改 函 数 ftm中 的 错 误 或 在 横 线 处 填 上 适 当 的 内 容 并 把 横 线 删 除,得 出 正 确 结 果。注 意:不 要 改 动 m ain函 数,不 能 增 行 或 删 行,也 不 能 更 改 程 序 的 结 构。#includevoid ftin()int aa33,sum;int i,j;sum=0;fbr(i=O;i 3;i+)for(j=O;j3;j+)scanf(n%dn,&aaij);for(i=0;i3;i-H-)sum=sum+aaii;printR”sum=%dn”,sum);main()(fun();三、编

26、程 题 请 编 写 一 个 函 数 void ftin(int*s,int t,int*result),用 来 求 出 数 组 的 最 小 元 素 在 数 组 中 的 下 标,并 存 放 在 result所 指 的 存 储 单 元 中.例 如,输 入 如 下 整 数:564,165,567,121,948,324,329,454,5345,783,434,124,561,985,555则 输 出 结 果 为:3,121。请 勿 改 动 主 函 数 m ain与 其 它 函 数 中 的 任 何 内 容,仅 在 函 数 fu n的 花 括 号 中 填 入 所 编 写 的 若 干 语 句。注 意:部

27、 分 源 程 序 给 出 如 下。#include#includevoid fun(int*s,int t,int*result)int temp,min;11min=sO;for(temp=O;tempt;temp+)if(stempmin)(min=stemp;*result=temp;)main()int storel5=564,165,567,121,948,324,329,454,5345,783,434,124,561,985,555),result;FILE*out;fun(store,10,&result);printf(M%d,%dnu,result,storeresult)

28、;out=fbpen(outfile.dat7,wn);fprintf(out,n%dn%dn,result,storeresult);fclose(out);第 6 套 上 机 考 试 试 题 一、填 空 题 给 定 程 序 的 功 能 是 判 断 字 符 串 s 中 的 某 个 字 符 是 否 与 字 符 c h相 同,若 相 同 什 么 也 不 做,若 不 同 则 插 在 字 符 串 的 最 后。例 如,输 入 t e s t,如 果 输 入 e,输 出 的 结 果 不 变,但 如 果 输 入 a,结 果 testa。请 勿 改 动 主 函 数 m ain与 其 它 函 数 中 的 任

29、何 内 容,仅 在 横 线 上 填 写 所 需 的 若 干 表 达 式 或 语 句。注 意:部 分 源 程 序 给 出 如 下。#include#includevoid fun(char*s,char ch)while(*s&*s!=ch)S-H-;if(*s!=ch)(s0=ch;sl=0;)main()(char str81,c;printfi(nnPlease input a string:nu);gets(str);12printf(nn Please enter the character to search:);c=getchar();fiin(str,c);printf(nnTh

30、e result is%sn,str);二、改 错 题 下 列 给 定 程 序 中,函 数 fu n的 功 能 是:按 顺 序 给 t 所 指 数 组 中 的 元 素 赋 予 从 2 开 始 的 偶 数。然 后 再 按 顺 序 对 每 5 个 元 素 求 一 个 平 均 值,并 将 这 些 值 依 次 存 放 在 r 所 指 的 数 组 中。若 t所 指 数 组 中 元 素 的 个 数 不 是 5 的 倍 数,多 余 部 分 忽 略 不 计、例 如,t 所 指 数 组 有 14个 元 素,则 只 对 前 10个 元 素 进 行 处 理,不 对 最 后 的 4 个 元 素 求 平 均 值。请 修

31、 改 程 序 中 的 错 误,得 出 正 确 的 结 果。注 意:不 要 改 动 m ain函 数,不 能 增 行 或 删 行,也 不 能 更 改 程 序 的 结 构。#include#define NUM 20int fun(double*t,double*r)intj,i;double sum;for(j=2,i=0;iNUM;i+)(ti=j;j+=2;sum=0.0;for(j=0,i=0;iNUM;i-H-)(sum+=ti;if(i+l)%5=0)rj=sum/5;sum=0;j+;return j;main()(double aNUM,bNUM/5;int ij;j=fun(a,

32、b);printfi(,The original data:n);fbr(i=0;iNUM;i+)13if(i%5=0)printf(nn);printf(n%4.0f,ai);printf(nnnThe result:nn);fbr(i=O;ivj;i+)printf(,r%6.2f;bi);printf(MnnM);)三、编 程 题 请 编 写 一 个 函 数 void fun(int x,int sum,int se le c t),该 函 数 的 功 能 是:将 大 于 整 数 x 且 紧 靠 x 的 sum个 素 数 存 入 select所 指 的 数 组 中。例 如,输 入:121

33、 8,则 应 输 出:127 131 137 139 149 151 157 163o请 勿 改 动 主 函 数 m ain与 其 它 函 数 中 的 任 何 内 容,仅 在 函 数 fu n的 花 括 号 中 填 入 所 编 写 的 若 干 语 句。注 意:部 分 源 程 序 给 出 如 下。#include#includevoid fun(int x,int sum,int select)int r=O,temp,p,sign=l;fbr(temp=x+l;tempx*x;temp+)(fbr(p=2;p=temp)(i 心 um=0)selectr+=temp;sum;elsebreak

34、;14main()int x,y,a500;FILE*out;printf(nnlnput two number:1 1);scanff%d,%d”,&x,&y);fun(x,y,a);for(x=0;xy;x+)printf(H%d n,ax);printf(Hnn);fun(121,10,a);out=fopen(outfile.dat,wn);fbr(x=0;x10;x+)fprintf(out;%dn!,ax);fclose(out);第 7套 上 机 考 试 试 题 一、填 空 题 给 定 程 序 的 功 能 是 计 算 score中 n 个 人 的 平 均 成 绩 a v e r,

35、将 高 于 aver的 成 绩 放 在 hig h中,通 过 函 数 名 返 回 人 数。例 如,score=88,75,50,60,80,90,n=6时,函 数 返 回 的 人 数 应 该 是 4,high=88,75,80,90o请 勿 改 动 主 函 数 m ain与 其 他 函 数 中 的 任 何 内 容,仅 在 横 线 上 填 写 所 需 的 若 干 表 达 式 或 语 句。注 意:部 分 源 程 序 给 出 如 下。#include#includeint fiin(int score,int m,int high)int i,j=0;float aver=0.0;tbr(i=0;i

36、m;i+)aver+=scorei;aver/=(float)m;fbr(i=0;iaver)h i g h j+=;return j;main()int i,n,high6;15int score6=88,75,50,60,80,90);n=f u n(s c o r e,6,);printf(nThe high of average score are:);fbr(i=O;ivn;i+)printf(H%d”,);printf(Hnu);)二、改 错 题 已 知 一 个 数 列 从 第 0 项 开 始 的 前 三 项 分 别 为 0、0、1,以 后 的 各 项 都 是 其 相 邻 的 前

37、三 项 之 和。下 列 给 定 程 序 中,函 数 ftin的 功 能 是:计 算 并 输 出 该 数 列 前 n 项 的 平 方 根 之 和 sum。n的 值 通 过 形 参 传 入。例 如,当 n=4时,程 序 输 出 结 果 应 为 2.000000。请 修 改 程 序 中 的 错 误,使 程 序 能 得 出 正 确 的 结 果。注 意:不 要 改 动 m ain函 数,不 能 增 行 或 删 行,也 不 能 更 改 程 序 的 结 构。#include#include#incl udedouble fun(int n)(double sum,a0,al,a2,a;int i;sum=1

38、.0;if(n=2)sum=0.0;a0=0.0;al=0.0;a2=1.0;fbr(i=4;i=n;i+)(a=a0+al+a2;sum+=sqrt(a);a0=al;al=a2;a2=a;return sum;)main()int n;printf(nInput N=);scanf(%d,&n);printf(H%lfnu,fun(n);16三、编 程 题 学 生 的 记 录 由 学 号 和 成 绩 组 成,M 名 学 生 的 数 据 已 在 主 函 数 中 放 入 结 构 体 数 组 score中,请 编 写 函 数 f u n,它 的 功 能 是 把 分 数 最 低 的 学 生 数 据

39、 放 在 low所 指 的 数 组 中,注 意:分 数 最 低 的 学 生 可 能 不 只 一 个,函 数 返 回 分 数 最 低 的 学 生 的 人 数。请 勿 改 动 主 函 数 m ain与 其 它 函 数 中 的 任 何 内 容,仅 在 函 数 fu n的 花 括 号 中 填 入 所 编 写 的 若 干 语 句。注 意:部 分 源 程 序 给 出 如 下。#include#define M 10typedef struct(char num10;int s;SCORE;int fun(SCORE*a,SCORE*b)int i,j=0,n=0,min;min=a0.s;fbr(i=0;

40、iM;i+)if(ai.smin)min=ai.s;for(i=0;iM;i-H-)*(b+j)=ai;j+;n+;return n;)main()SCOREstuM=MGA03,76,GA04,1,85,GA0r,91)GA08,64,GA06,87,GA014,1,91,(,GA011H,77,GA017n,64,GA018n,64,GA016H,72);SCORE lowM;int i,n;FILE*out;n=fun(stu,low);printf(The%d lowest score:nu,n);fbr(i=0;in;i+)printf(H%s%4dnn,lowi.num,lowi.

41、s);17printf(HnH);out=fopen(outfile.dat,w,);fprintf(out,%dnn,n);for(i=O;in;i+)fprintf(out,n%4dnn,lowi.s);fclose(out);)第 8 套 上 机 考 试 试 题 一、填 空 题 请 补 充 m ain函 数,该 函 数 的 功 能 是:从 键 盘 输 入 3 个 整 数,然 后 找 出 最 小 的 数 并 输 出。例 如:输 入 78,53,1 2 3,则 输 出 为 53。请 勿 改 动 主 函 数 m ain与 其 它 函 数 中 的 任 何 内 容,仅 在 横 线 上 填 写 所

42、需 的 若 干 表 达 式 或 语 句.注 意:部 分 源 程 序 给 出 如 下。#include#includemain()int x,y,z,min;printf(,nlnput three numberAn*);scanff%d,%d,%d”,&x,&y,&z);printf(nThe three numbers are:%d,%d,%dnM,x,y,z);设 x y)min=x;elsemin=y;ififminz)min=z;printfi(niTiin=%dn,min);)二、改 错 题 下 列 给 定 程 序 中,fu n函 数 的 功 能 是:分 别 统 计 字 符 串 中

43、小 写 字 母 和 大 写 字 母 的 个 数。例 如,给 字 符 串 t 输 入:ad位 FFssefSCGSDew,则 应 输 出 结 果:big=7,small=10请 修 改 程 序 中 的 错 误,使 它 能 计 算 出 正 确 的 结 果。注 意:不 要 改 动 m ain函 数,不 能 增 行 或 删 行,也 不 能 更 改 程 序 的 结 构。#include#includevoid fun(char*t,int*c,int*d)while(*t)(if(*t=,A,&*t=,Z)(*c)+;18ifTt=a&*tv=z)t+;main()(char t200;int big=

44、O,small=O;printsHnplease input a string:);gets(t);fun(t,&big,&small);printf(n big=%d small=%dnn,big,small);三、编 程 题 请 编 一 个 函 数 void fiin(int aMN,int bN),c 指 向 一 个 M 行 N 列 的 二 维 数 组,求 出 二 维 数 组 每 列 中 最 大 元 素,并 依 次 放 入 b 所 指 一 维 数 组 中。二 维 数 组 中 的 数 己 在 主 函 数 中 赋 予。请 勿 改 动 主 函 数 m ain与 其 它 函 数 中 的 任 何

45、内 容,仅 在 函 数 fu n的 花 括 号 中 填 入 所 编 写 的 若 干 语 句。注 意:部 分 源 程 序 给 出 如 下。#include#include#define M 3#define N 4void fun(int aMN,int bN)(int ij,max;for(j=O;jN;j+)(max=a0j;tbr(i=0;imax)max=aij;bj=max;)main()int CMN=10,22,15,30,19,33,45,38,20,22,66,40);19int pN,ij,k;FILE*out;printf(nThe original data is:n);

46、for(i=O;iM;i-H-)(for(j=O;jN;j-H-)printf(%6dn,cij);printf(nnu);fun(c,p);printf(nnThe result is:nn);fbr(k=0;kN;k+)printf(n%4dM,pk);printf(Hnn);out=fbpen(outfile.dat,w,);for(k=0;kN;k-H-)fprintf(out,%dnM,pk);fclose(out);第 9 套 上 机 考 试 试 题 一、填 空 题 请 补 充 fiin函 数,该 函 数 的 功 能 是:从 键 盘 输 入 一 个 下 标 n,把 数 组 a 中

47、比 元 素 an小 的 元 素 放 在 它 的 左 边,比 它 大 的 元 素 放 在 它 的 右 边,排 列 成 的 新 数 组 仍 然 保 存 在 原 数 组 中。例 如,数 组 a=33,55,66,44,77,22,88,99,11,10,输 入 2,则 结 果 输 出“33 55 44 22 1 1 10 66 77 88 99”。请 勿 改 动 主 函 数 m ain与 其 他 函 数 中 的 任 何 内 容,仅 在 fu n函 数 的 横 线 上 填 写 所 需 的 若 干 表 达 式 或 语 句。注 意:部 分 源 程 序 给 出 如 下。#include#define N 1

48、0void fun(int a,int n)(int i,j=O,k=O,t;int bN;t=an;for(i=0;i0bU+=ai;if(ait)ak+=ai;20fo r(i=O;i+,k+)ak=bi;main()int i,n;int aN=33,55,66,44,77,22,88,99,11,10);printf(nThe original array:nn);for(i=0;iN;i+)printf(H%4dn,ai);printf(Hn suffix n:n);scanf(,%d,&n);fim(a,n);printf(,The new array:n);for(i=0;iN;

49、i4-+)printf(M%4dM,ai);printf(nnu);二、改 错 题 下 列 给 定 程 序 中,fiin函 数 的 功 能 是:求 a=xxxx-xx-xx-x(此 处 xxx x表 示 n 个 x,x和 n 的 值 在 1至 9 之 间)。例 如 x=3,a=6,则 以 上 表 达 式 为:a=333333-33333-3333-333-33-3其 值 是 296298。X 和 n 是 fUn函 数 的 形 参,表 达 式 的 值 作 为 函 数 值 传 回 m ain函 数。请 修 改 程 序 的 错 误,使 它 能 计 算 出 正 确 的 结 果。注 意:不 要 改 动

50、m ain函 数,不 能 增 行 或 删 行,也 不 能 更 改 程 序 的 结 构。#include#includelong fun(int x,int n)(intj;long a=O,t=l;fbr(j=O;j=n;j+)t=t*l 0+x;a=t;for(j=l;jn;j+)t=t%10;a=a-t;)retum(a);)main()21int x,n;printf(nnPlease enter x and n:u);scanR d%d”,&x,&n);printf(HThe value of fun is%ldnu,fun(x,n);)三、编 程 题 请 编 写 函 数 f u n,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁