您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > C/C++资料 > 2012年9月国家计算机二级C语言上机模拟题
记诺教育培训学校学习热线:0871-3523010一、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中,各位上为偶数的数取出,并按原来从高位到低位的顺序组成一个新的数,并作为函数值返回。例如,从主函数输入一个整数:2763849626846。填空:(1)1(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(s0)编程:(注意:此题在/*请按题目要求完成以下代码*/的下面填入答案)if(a[i].sa[j].s){tmp=a[i];a[i]=a[j];a[j]=tmp;}四、1、程序填空题给定程序中,函数fun的功能是:找出100至x(x999)之间各位上的数字之和为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;记诺教育培训学校学习热线:0871-3523010最后在黑色对话框中输入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;istrlen(s);i+=2)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;im;i++)fun1(w);最后在黑色对话框中输入3后按回车键九、1、程序填空题记诺教育培训学校学习热线:0871-3523010函数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;istrlen(s);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;iN;i++){min=tt[0][i];k=0;for(j=1;jM;j++)if(tt[j][i]min){min=tt[j][i];k=j;}记诺教育培训学校学习热线:0871-3523010pp[i]=tt[k][i];}十三、1、程序填空题给定程序中,函数fun的功能是:求出形参ss所指字符串数组中最长的长度,其余字符串左边用字符*补齐,使其与最长的字符串等长。字符串数组中共有M个字符串,且串长N。填空:(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个字符串,且串长N。填空:(1)ss[i](2)j+n(3)1改错:(1)if(*p==‘’)(2);(后面缺少分号)编程:charch;inti,j;for(i=1;i6;i++)for(j=i+1;j6;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;i8;i++)s+=sqrt((x[i]+x[i+1])/2);returns;十六、1、程序填空题给定程序中,函数fun的功能是:在任意给定的9个正整数中找出按升序排列时处于中间的数,将原数据序列中比该中间数小的数用该中间数替换,位置不变,在主函数中输出处理后的数据序列,并将中间数作为函数值返回。例如,有9个正整数:1572387582145记诺教育培训学校学习热线:0871-3523010按升序排列时的中间数为:8处理后主函数中输出的数列为:8882387882145填空:(1)b[k](2)N/2(3)改错:(1)intt[N],i,num=0;(2)t[num++]=b[i];(3)for(i=0;inum;i++)编程:intfun(char*s){intn=0;while(*s){if(*s=’0’&&*s=’9’)s++;}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;in;i++){sum=sum+a[i];if(maxa[i])max=a[i];if(mina[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;jM;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;记诺教育培训学校学
本文标题:2012年9月国家计算机二级C语言上机模拟题
链接地址:https://www.777doc.com/doc-3032220 .html