二级C语言上机最终版pp3.docx

上传人:b****8 文档编号:10943830 上传时间:2023-02-23 格式:DOCX 页数:34 大小:27.65KB
下载 相关 举报
二级C语言上机最终版pp3.docx_第1页
第1页 / 共34页
二级C语言上机最终版pp3.docx_第2页
第2页 / 共34页
二级C语言上机最终版pp3.docx_第3页
第3页 / 共34页
二级C语言上机最终版pp3.docx_第4页
第4页 / 共34页
二级C语言上机最终版pp3.docx_第5页
第5页 / 共34页
点击查看更多>>
下载资源
资源描述

二级C语言上机最终版pp3.docx

《二级C语言上机最终版pp3.docx》由会员分享,可在线阅读,更多相关《二级C语言上机最终版pp3.docx(34页珍藏版)》请在冰豆网上搜索。

二级C语言上机最终版pp3.docx

二级C语言上机最终版pp3

一、

1、程序填空题

给定程序中,函数fun的功能是将参数给定的字符串、整数、浮点数写在文本文件中,再用字符串方式从此文本文件中逐个读入,并调用库函数atoi和atof将字符串转换成相应的整数、浮点数,然后将其显示在屏幕上。

填空:

(1)FILE*

(2)fclose(fp)(3)fp

改错:

(1)t=(STU*)calloc(sizeof(STU),m);

(2)t[k]=b[j];

编程:

inti,t,j=0,*p=a;

t=p[0];

for(i=0;i<=n;i++)

if(t==p[i]);

else{a[j]=t;t=p[i];j++;}

if(i>=n)a[j]=t;

returnj;

二、

1、程序填空题

给定程序中,函数fun的功能是:

将形参n中,各位上为偶数的数取出,并按原来从高位到低位的顺序组成一个新的数,并作为函数值返回。

例如,从主函数输入一个整数:

27638496函数返回值为26846。

填空:

(1)0

(2)s(3)i*10

改错:

(1)intfun(intn,intxx[][M])

(2)printf(“%4d”,xx[i][j]);

编程:

*c=(a/10)*1000+(b%10)*100+(a%10)*10+(b/10);

最后在黑色对话框中输入4512后按回车键

三、

1、程序填空题

给定程序中,函数fun的功能是:

找出100~999之间(含100和999)所有整数中各位上数字之和为x(x为一正整数)的整数,然后输出;符合条件的整数个数作为函数值返回。

例如,当x值为5时,100~999之间各位上数字之和为5的整数有:

104、113、122、131、140、203、212、221、230、302、311、320、401、410、500,共有15个。

当x值为27时,各位数字之和为27的整数是:

999,只有1个。

填空:

(1)999

(2)t/10(3)x

改错:

(1)voidfun(longs,long*t)

(2)while(s>0)

编程:

(注意:

此题在/*请按题目要求完成以下代码*/的下面填入答案)

if(a[i].s

{tmp=a[i];a[i]=a[j];a[j]=tmp;}

四、

1、程序填空题

给定程序中,函数fun的功能是:

找出100至x(x<999)之间各位上的数字之和为15的所有整数,然后输出;符合条件的整数个数作为函数值返回。

例如,当n值为500时,各位数字之和为15的整数有:

159、168、177、186、195、249、258、267、276、285、294、339、348、357、366、375、384、393、429、438、447、456、465、474、483、492。

共有26个。

填空:

(1)0

(2)x(3)t++

改错:

(1)inti,s1;

(2)t[i]=s[s1-1-i];

编程:

*c=(b/10)*1000+(a/10)*100+(b%10)*10+a%10;

最后在黑色对话框中输入4512后按回车键

五、

1、程序填空题

给定程序中,函数fun的功能是计算下式s=1/(2*2)+3/(4*4)+5/(6*6)+…+(2n-1)/(2n*2n)直到|(2n-1)/(2n*2n)|<=1e-3,函数的返回值2.985678。

填空:

(1)0

(2)i++(3)2.0*i

改错:

(1)voidfun(char*s,char*t)

(2)t[2*d]=’\0’;

编程:

inti,j=0;

for(i=1;i

if(i%2==1&&s[i]%2==1)

t[j++]=s[i];

t[j]=’\0’;

最后在黑色对话框中输入ABCDEFG123456后按回车键

六、

1、程序填空题

函数fun的功能是:

统计长整数的各个位上出现数字1、2、3的次数,并通过外部(全局)变量c1、c2、c3返回主函数。

例如,当n=123114350时,结果应该为:

c1=3c2=1c3=2。

填空:

(1)n%10

(2)break(3)break

改错:

(1)if(t==0)

(2)*zero=count;

编程:

doubles=0,t=1;

inti;

for(i=1;i<=n;i++)

{t*=i;s+=1.0/t;}

returns;

最后在黑色对话框中输入50后按回车键

七、

1、程序填空题

给定程序中,函数fun的功能是:

统计出带有头结点的单向链表中结点的个数,存放在形参n所指的存储单元中。

填空:

(1)*n

(2)next(3)head

改错:

(1)a=NULL;

(2)if(*r==*p)

编程:

*c=(a%10)*1000+(b/10)*100+(a/10)*10+(b%10);

最后在黑色对话框中输入4512后按回车键

八、

1、程序填空题

给定程序中,函数fun的功能是根据形参i的值返回某个函数的值。

当调用正确时,程序输出x1=5.000000,

x2=3.000000,x1*x1+x1*x2=40.000000

填空:

(1)double

(2)f1(3)f2

改错:

(1)char*fun(char*s,char*t)

(2)ss++;(3)tt++;

编程:

inti;

for(i=0;i

fun1(w);

最后在黑色对话框中输入3后按回车键

九、

1、程序填空题

函数fun的功能是:

从三个形参a,b,c中找出中间的那个数,作为函数值返回。

例如,当a=3,b=5,c=4时,中数为4。

填空:

(1)a

(2)a(3)b

改错:

(1)c=c+32;(把大写C改成小写)

(2)c=c+5;

编程:

inti;

doublefac=1.0;

doublesum=1.0;

for(i=2;i<=n;i++)

{fac+=sqrt(i);sum+=fac;}

最后在黑色对话框中输入20后按回车键

十、

1、程序填空题

给定程序中,函数fun的功能是,将形参s所指字符串中的字母字符顺序前移,其他字符顺序后移,处理后新字符串的首地址作为函数值返回。

例如:

s所指字符串为:

asd123fgh543df,处理后新字符串为asdfghdf123543。

填空:

(1)s[i]

(2)k(3)0

改错:

(1)while(*w)

(2)if(*r==*p)

编程:

inti,j=0;

for(i=0;i

if(!

(s[i]%2))t[j++]=s[i];

t[j]=’\0’;

最后在黑色对话框中输入ABCDEFG12345后按回车键

十一、

1、程序填空题

给定程序中已建立一个带有头结点的单向链表,链表中的各结点按数据域递增有序链接。

函数fun的功能是:

删除链表中数据域值相同的结点,使之只保留一个。

填空:

(1)q

(2)next(3)next

改错:

(1);(少了分号)

(2){p=j;t=a[p];a[p]=a[i];a[i]=t;}

编程:

inti;

*n=0;

for(i=7;i<=m;i++)

if((i%7==0)||(i%11==0))

a[(*n)++]=i;

十二、

1、程序填空题

给定程序中,函数fun的功能是:

将形参std所指结构体数组中年龄最大者的数据作为函数值返回,并在main函数中输出。

填空:

(1)*std

(2)std[i].age(3)max.name

改错:

(1)voidfun(int*a,int*b)

(2)t=*b;*b=*a;*a=t;

编程:

inti,j,min,k;

for(i=0;i

{min=tt[0][i];k=0;

for(j=1;j

if(tt[j][i]

{min=tt[j][i];k=j;}

pp[i]=tt[k][i];

}

十三、

1、程序填空题

给定程序中,函数fun的功能是:

求出形参ss所指字符串数组中最长的长度,其余字符串左边用字符*补齐,使其与最长的字符串等长。

字符串数组中共有M个字符串,且串长

填空:

(1)k

(2)len(3)ss[i][j]

改错:

(1)result*=n--;

(2)returnresult;(把横线改成result)

编程:

char*p=s;

inti=0;

while(*p)

{if(*p!

=c)s[i++]=*p;p++;}

s[i]=’\0’;

最后在黑色对话框中输入n后按回车键

十四、

1、程序填空题

给定程序中,函数fun的功能是:

求出形参ss所指字符串数组中最长字符串的长度,将其余字符串右边用字符*补齐,使其与最长的字符串等长。

ss所指字符串数组中共有M个字符串,且串长

填空:

(1)ss[i]

(2)j+n(3)1

改错:

(1)if(*p==‘’)

(2);(后面缺少分号)

编程:

charch;

inti,j;

for(i=1;i<6;i++)

for(j=i+1;j<6;j++)

{if(*(s+i)<*(s+j))

{ch=*(s+j);

*(s+j)=*(s+i);

*(s+i)=ch;}

}

最后在黑色对话框中输入CEAedca后按回车键

十五、

1、程序填空题

函数fun的功能是:

计算f(x)=1+x+x2∕2!

+…+xn/n!

直到∣xn/n!

∣<10-6若x=2.5,函数值为:

12.182494。

填空:

(1)x

(2)n(3)t

改错:

(1)d=1;s=0;

(2)d=d/10;(是除号)

编程:

inti;

doubles=0;

for(i=0;i<8;i++)s+=sqrt((x[i]+x[i+1])/2);

returns;

十六、

1、程序填空题

给定程序中,函数fun的功能是:

在任意给定的9个正整数中找出按升序排列时处于中间的数,将原数据序列中比该中间数小的数用该中间数替换,位置不变,在主函数中输出处理后的数据序列,并将中间数作为函数值返回。

  例如,有9个正整数:

1572387582145

  按升序排列时的中间数为:

8

处理后主函数中输出的数列为:

8882387882145

填空:

(1)b[k]

(2)N/2(3)<

改错:

(1)intt[N],i,num=0;

(2)t[num++]=b[i];(3)for(i=0;i

编程:

intfun(char*s)

{intn=0;

while(*s)

{if(*s>=’0’&&*s<=’9’)n++;}

returnn;

}

十七、

1、程序填空题

给定程序中,函数fun的功能是:

统计整型变量m中各数字出现的次数,并存放到数组a中,其中:

a[0]存放0出现的次数,a[1]存放1出现的次数,……a[9]存放9出现的次数。

例如,若m为14579233,则输出结果应为:

0,1,1,2,1,1,0,1,0,1。

填空:

(1)a[i]

(2)m%10(3)m/10

改错:

(1)b[i]=a[i][0];

(2)for(j=1;j<=N-1;j++)

(3)if(b[i]>a[i][j])

编程:

doublesum=0,max,min;inti;

max=min=a[0];

for(i=0;i

{sum=sum+a[i];

if(max

if(min>a[i])min=a[i];

}

sum=sum-max-min;

return(sum/(n-2));

最后在黑色对话框中输入9.98.57.68.59.39.58.97.88.68.4后按回车键(每个小数之间只有一个空格)

十八、

1、程序填空题

给定程序中,函数fun的功能是将形参给定的字符串、整数、浮点数写到文本文件中,再用字符方式从此文本文件中逐个读入并显示在终端屏幕上。

填空:

(1)FILE*

(2)fp(3)ch

改错:

(1)s[j++]=s[i];

(2)s[j]=’\0’;(双引号改成引号)

编程:

(注意:

这道题是在/*请填写相应语句完成其功能*/下面的大括号中填入答案)

for(j=0;j

{b[n]=s[j][i];n=i*M+j+1;}

十九

1.程序填空题

函数fun的功能是:

计算

f(x)=1+x+x/2!

+···+xn/n!

的前n项。

若x=2.5,函数值为:

12.182340.

填空:

(1)1

(2)1(3)i

改错:

(1)k=i;

(2)c=k%10;(后面少了分号)

编程:

inti;

doubleavg=0.0,sum=0.0,abs=0.0,fc;

for(i=0;i<10;i++)sum+=x[i];

avg=sum/10;

for(i=0;i<10;i++)

abs+=(x[i]-avg)*(x[i]-avg);

fc=sqrt(abs/10);

ruturnfc;

二十

1、程序填空题

给定程序中,函数fun的功能是:

对形参ss所指字符串数组中的M个字符串按长度由短到长进行排序。

Ss所指字符串数组中共有M个字符串,且串长

填空:

(1)i+1

(2)k=j(3)t

改错:

(1)voidfun(char*str,charch)

(2)if(*str!

=ch)(是不等号)

(3)str[1]=’\0’;(少了一个反斜杠)

编程:

charb[N]={0};

inti=0,j;

for(j=strlen(s)-1;j>=0;j--)b[i++]=s[j];

strcpy(s,b);

最后在黑色对话框中输入abcdefg后按回车键

二十一

1.程序填空题

给定程序通过定义并赋初值的方式,利用结构体变量存储了一名学生的学号姓名和3门课的成绩。

函数fun的功能是将该学生的各科成绩都乘以一个系数a。

填空:

(1)STU

(2)score[i](3)&std

改错:

(1)if(k>0)

(2)elseif(k==0)

编程:

inti,j;

for(i=0;i

a[i][j]*=n;

二十二

1.程序填空题

程序通过定义学生结构体变量,存储了学生的学号姓名和3门课的成绩,所有学生数据均以二进制输出到文件中。

函数fun的功能是从形参filename所指的文件中读入学生数据,并按照学号从小到大排序后,再用二进制方式把排序后的学生数据输出到filename所指的文件中,覆盖原来的文件内容。

填空:

(1)‘’rb’’

(2)>(3)fwrite

改错:

(1)p=s;(顺序反了)

(2)while(*p++);(缺少分号)

编程:

intI,j;

for(j=0;j

b[j]=0;

for(i=0;i

if(a[i]>=0&&[i]<=9)b[0]+=1;

else

if(a[i]>=10&&a[i]<=19)

b[1]+=1;

elseif(a[i]>=20&&a[i]<=29)

b[2]+=1;

elseif(a[i]>=30&&a[i]<=39)

b[3]+=1;

elseif(a[i]>=40&&a[i]<=49)

b[4]+=1;

elseif(a[i]>=50&&a[i]<=59)

b[5]+=1;

elseif(a[i]>=60&&a[i]<=69)

b[6]+=1;

elseif(a[i]>=70&&a[i]<=79)

b[7]+=1;

elseif(a[i]>=80&&a[i]<=89)

b[8]+=1;

elseif(a[i]>=90&&a[i]<=99)

b[9]+=1;

else

b[10]+=1;

二十三

1.程序填空题

甲乙丙丁四人同时开始放鞭炮,甲每隔t1秒放一次,乙每隔t2秒放一次,丙每隔t3秒放一次,丁每隔t4秒放一次,每人各放n次。

函数fun的功能是根据形参提供的值,求出总共听到多少次鞭炮声作为函数值返回。

注意,当几个鞭炮同时炸响,只算一次响声,第一次响声是在第0秒。

例如,若t1=7,t2=5,t3=6,t4=4,n=10,则总共可听到28次鞭炮声。

填空:

(1)i

(2)t++(3)count

改错:

(1)intfun(inta,intb,intc)

(2)elsereturn1;(注意:

这题不仅缺少分号,中间的单词也错了,应该是return)

编程:

inti,j=0;

doubles=0.0;

for(i=3;i<=n;i++)

{for(j=2;j<=i;j++)

if(i%j==0)break;

if(j==i)s=s+sqrt(i);

}

returns;

最后在黑色对话框中输入100按回车键

二十四

1.程序填空题

给定程序中,函数fun的功能是:

计算出带有头结点的单向链表中个结点数据域中值之和作为函数值返回。

填空:

(1)data

(2)next(3)head

改错:

(1)while(*r)

(2)*a=*r;a++;r++;(缺少分号)

编程:

inti,j=0;

for(i=0;i

t[j++]=s[i];

t[j]=0;

最后在黑色对话框中输入ABCDEFGHIJK后按回车键

二十五

1.程序填空题

给定程序中,函数fun的功能是:

求ss所指字符串数组中长度最长的字符串所在的行下标,作为函数值返回,并把其串长放在形参n所指变量中。

Ss所指字符串数组中共有M份字符串,且串长

填空:

(1)[N]

(2)len(3)*n=len

改错:

(1)t+=1.0/i;

(2)returnt;

编程:

intcnt=0;

char*p=str,*q;

while(*p)

{q=strstr(p,substr);

if(q==NULL)break;

p=q+strlen(substr);

cnt++;

}

returncnt;

最后在黑色对话框中输入asdasasdfgasdaszx67asdmklo后按回车键,再输入as后按回车键

二十六

1.程序填空题

给定程序的主函数中,已给出由结构体构成的链表结点abc,(字母中间有顿号),各结点的数据域中均存入字符,函数fun()的作用是:

将abc三个结点链接成一个单向链表,并输出链表结点中的数据

填空:

(1)pb

(2)p->data或(*p).data(3)p->next

改错:

(1)inti,one=0,zero=0;

(2)switch(s[i])(多了分号)

(3)case0:

zero++;break;

编程:

while(*s)

{*a=*s;

s++;

a++;

}

*a=’/0’;

二十七

1.程序填空题

人员的记录由编号和出生年月日(加顿号)组成,N名人员的数据已在主函数中存入结构数组std中。

函数fun的功能是:

找出指定年份的人员,将其数据放在形参k所指的数组中,由主函数输出,同时由函数值返回满足指定条件的人数。

填空:

(1)std[i].year

(2)std[i](3)n

改错:

(1)IsPrime(intn)(去掉后面的分号)

(2)if(!

(n%i))

编程:

inti,max=a[0].s,j=0;

for(i=0;i

if(a[i].s>max)

{j=i;

max=a[i].s;

}

*s=a[j];

二十八

函数fun的功能是:

输出a所指数组中的前n个个数据,要求每行输出5个数。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果

填空:

(1)i%5==0

(2)\n(3)a[i]

改错:

(1)returnt;

(2)for(i=0;i

(3)x[i+1]=findmid(a,b,c);

编程:

inti,j;

j=-1;

for(i=0;i

{if(*s==x)

j=i;

s++;

}

returnj;

最后在对话框中输入27后按回车键

二十九

1.程序填空题

给定程序的功能是:

调用函数fun将指定源文件中的内容复制到指定的目标文件中,复制成功时函数返回值为1,失败时返回值为0。

在复制过程中,把复制的内容输出到终端屏幕。

主函数中源文件sfname中,目标文件名放在变量tfname中。

填空:

(1)’’r’’

(2)fs(3)ft

改错:

(1)if(d%2==0)

(2)s/=10;

编程:

inti,j=0;

for(i=0;i

if(s[i]%2==0)t[j++]=s[i];

t[j]=0;

最后在黑色对话框输入ABCDRFG123456后按回车键

三十

1.程序填空题

给定程序中,函数fun的功能是:

计算下式前n项的和作为函数值返回。

s=(1*3)/(2*2)+(3*5)/(4*4)+(5*7)/(6*6)+…+(2n-1)(2n+1)/(2n*2n)

例如:

当形参n的值为10时,函数返回9.612558.

填空:

(1)0

(2)n(3)(t*t)

改错:

(1)for(i=0;str[i];i++)

(2)if(substr[k+1]==’\0’)

编程:

doubles;

floatn,t,pi;

t=1;pi=0;n=1.0;s=1.0;

while((fabs(s))>=eps)

{pi+=s;

t=n/(2*n+1);

*s=t;

n++;

}

pi=pi*2;

returnpi;

最后在黑色对话框中输入0.0005后按回车键

三十一

1.程序填空题

请补充fun函数,该函数的功能是:

统计所有小于等于n(n>2)的素数的个数,素数的个数作为函数值返回。

填空:

(1)j=3

(2)i(3)j

改错:

(1)sum=0;j=0;

(2)if(sum%4==2)

编程:

inti;

doublesum=0.0;

if(n>1&&n<=100){

for(i=1;i<=n;i++)

sum+=1.0/(2*i-1)-1.0/(2*i);

}

returnsum;

最后在黑色对话框中输入8后按回车键

三十二

1.程序填空题

人员的记录由编号和出生年月日组成,N名人员的数据已在主函数中存入结构体数组std中,且编号惟一。

函数fun的功能是:

找出指定编号人员的数据,作为函数值返回,由主函数输出,若指定编号不存在,返回数据中的编号为空串。

填空:

(1)STU

(2)std[i].num(3)std[

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1