欢迎来到天天文库
浏览记录
ID:40636603
大小:428.50 KB
页数:86页
时间:2019-08-05
《四川省二级C语言28~33次机试真题及答案》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、四川省第二十八次计算机二级考试C与C++语言机试试题(第一套)(60分钟)一、程序调试题(40分)磁盘上有一C程序test1-1.c,其功能是:将具有N个元素的数组的后m个元素移到前m个位置。例如,若输入m=3,数组元素为:12345678910,则输出结果为:89101234567。要求将结果显示在屏幕上并写入文件test1-1.dat中。请更改程序中的错误,使程序能得出正确结果。注意:不得增行或删行,也不得更改程序结构。源程序如下:#include"stdio.h"#defineN10voidmain(){inta[N],k,m,r,*t;FILE*fp;fp=fopen(
2、test1-1.dat,"w");if(fp==NULL){printf("Filecannotopen!");exit(0);}printf("Inputm:");scanf("%d",m);printf("Input10numbers:");for(k=0;k0;k--)a[k]=a[k-1];a[k]=t;}for(k=0;k3、fp);}二、编写程序test1-2.c(60分)编写函数fun,函数fun的功能是:求出满足“百位减十位等于个位”的所有三位整数,并按降序存入形参数组a中,满足条件下的三位数总个数作为函数值返回。main函数中调用函数fun,并按一行5个数输出结果。8四川省第二十八次计算机二级考试C与C++语言机试试题(第二套)(60分钟)一、程序调试题(40分)磁盘上有一个名为test2-1.c的C程序,其功能是将一个文本文件test2-1.in逐行逆置复制到另一个文件test2-1.out中。test2-1.out文件名在命令行中给出。请改正程序中的错误,使程序能得出正确的结果。注意:不4、得增行或删行,也不得更改程序结构。源程序如下:#include"stdio.h"#include"conio.h"voidrev(void);FILE*f1,*f2;voidmain(intargc,char*argv[]){charch;if(argc>2){printf("paramelersmissing!");exit(0);}if((f1=fopen(*argv[1],"w"))==NULL){printf("cannotopenfile1!");exit(0);}if((f2=fopen("test2-1.in","r"))==NULL){printf("c5、annotopenfile2!");exit(0);}while(!feof(f2)){voidrev();fputc('',f1);}fclose(f1);fclose(f2);}voidrev(void){charc;if(!feof(f2)6、7、((c=fgetc(f2))!='')){rev();fputc(c,f2);}}二、编写程序test2-2.c(60分)从键盘上输入整数m和k,将大于且紧靠m的k个素数存入数组xx中,将结果显示在屏幕上。要求:(1)在num函数中完成找出紧靠m的k个素数,并存入数组xx中。函数num的定义形式为:voidnum(int8、m,intk,intxx[])(2)main函数完成数据的输入和输出。8四川省第二十八次计算机二级考试C与C++语言机试试题(第三套)(60分钟)一、程序调试题(40分)磁盘上有一个名为test3-1.c的C程序文件,其中函数fun的功能是:找出被2、3、5整除时余数均为1的最小的10个自然数,并存放到一个整型数组中。在main函数中调用函数fun,输出最后结果,并将结果输出到文本文件test3-1.txt中。请改正程序中的错误,使其能得到正确的结果。注意:不得增行或删行,也不得更改程序结构。源程序如下:#includevoidfun(inta[]){inti9、;intcnt=0;for(i=1;cnt<10;i++)if(i%2==110、11、i%3==112、13、i%5==1){a[cnt]=i;cnt++;}}voidmain(){inta[10];inti;FILE*fp;if((fp=fopen("test3-1.txt","w"))==null){printf("Cannotopenthefile.");exit(0);}fun();for(i=0;i<10;i++){printf("%4d",a[i]);fprintf("%4d",a[i])
3、fp);}二、编写程序test1-2.c(60分)编写函数fun,函数fun的功能是:求出满足“百位减十位等于个位”的所有三位整数,并按降序存入形参数组a中,满足条件下的三位数总个数作为函数值返回。main函数中调用函数fun,并按一行5个数输出结果。8四川省第二十八次计算机二级考试C与C++语言机试试题(第二套)(60分钟)一、程序调试题(40分)磁盘上有一个名为test2-1.c的C程序,其功能是将一个文本文件test2-1.in逐行逆置复制到另一个文件test2-1.out中。test2-1.out文件名在命令行中给出。请改正程序中的错误,使程序能得出正确的结果。注意:不
4、得增行或删行,也不得更改程序结构。源程序如下:#include"stdio.h"#include"conio.h"voidrev(void);FILE*f1,*f2;voidmain(intargc,char*argv[]){charch;if(argc>2){printf("paramelersmissing!");exit(0);}if((f1=fopen(*argv[1],"w"))==NULL){printf("cannotopenfile1!");exit(0);}if((f2=fopen("test2-1.in","r"))==NULL){printf("c
5、annotopenfile2!");exit(0);}while(!feof(f2)){voidrev();fputc('',f1);}fclose(f1);fclose(f2);}voidrev(void){charc;if(!feof(f2)
6、
7、((c=fgetc(f2))!='')){rev();fputc(c,f2);}}二、编写程序test2-2.c(60分)从键盘上输入整数m和k,将大于且紧靠m的k个素数存入数组xx中,将结果显示在屏幕上。要求:(1)在num函数中完成找出紧靠m的k个素数,并存入数组xx中。函数num的定义形式为:voidnum(int
8、m,intk,intxx[])(2)main函数完成数据的输入和输出。8四川省第二十八次计算机二级考试C与C++语言机试试题(第三套)(60分钟)一、程序调试题(40分)磁盘上有一个名为test3-1.c的C程序文件,其中函数fun的功能是:找出被2、3、5整除时余数均为1的最小的10个自然数,并存放到一个整型数组中。在main函数中调用函数fun,输出最后结果,并将结果输出到文本文件test3-1.txt中。请改正程序中的错误,使其能得到正确的结果。注意:不得增行或删行,也不得更改程序结构。源程序如下:#includevoidfun(inta[]){inti
9、;intcnt=0;for(i=1;cnt<10;i++)if(i%2==1
10、
11、i%3==1
12、
13、i%5==1){a[cnt]=i;cnt++;}}voidmain(){inta[10];inti;FILE*fp;if((fp=fopen("test3-1.txt","w"))==null){printf("Cannotopenthefile.");exit(0);}fun();for(i=0;i<10;i++){printf("%4d",a[i]);fprintf("%4d",a[i])
此文档下载收益归作者所有