当前位置:首页 > 计算机二级c语言30套模拟试题
#include
int i; float s=0;
float fac(int n);
/**********FOUND**********/ for(i=1;i<10;i++)
/**********FOUND**********/ s=fac(i);
printf(\}
float fac(int n) {
/**********FOUND**********/ int y=1; int i;
for(i=1 ;i<=n;i++) y=y*i;
/**********FOUND**********/ return; }
答案:
=======(答案1)======= for(i=1;i<=10;i++) =========或========= for(i=1;10>=i;i++) =========或========= for(i=1;i<11;i++) =========或========= for(i=1;11>i;i++)
=======(答案2)=======
s= s + fac(i) ;
=========或========= s+=fac(i);
=========或========= s=fac(i)+s;
=======(答案3)======= float y=1.0;
=========或========= float y=1;
=======(答案4)======= return y;
=========或========= return(y);
=========或========= return (y);
三、程序设计 共1题 (共计40分) 第1题 (40.0分) 题号:355
/*------------------------------------------------ 【程序设计】
-------------------------------------------------- 功能:对长度为8个字符的字符串,将8个字符按降序排列。 例如:原来的字符串为CEAedcab,排序后输出为edcbaECA。 ------------------------------------------------*/ #include
void fun(char *s,int num) {
/**********Program**********/
25
/********** End **********/ }
main() {
char s[10];
printf(\输入8个字符的字符串:\ gets(s); fun(s,8);
printf(\ wwjt(); }
void wwjt() {
int i;
char a[100];
FILE *rf, *wf ;
rf = fopen(\ wf = fopen(\ for(i=0;i<3;i++) {
fscanf(rf, \ fun(a,8);
fprintf(wf, \ fprintf(wf, \ }
fclose(rf); fclose(wf); }
答案:---------------------- int i,j; char t;
for(i=0;i for(j=i+1;j { t=s[i];s[i]=s[j];s[j]=t;} ---------------------- 试卷编号:8113 所属语言:C语言 试卷方案:C语言期末模拟练习 试卷总分:100分 共有题型:3种 一、程序填空 共1题 (共计30分) 第1题 (30.0分) 题号:477 /*------------------------------------------------------- 【程序填空】 --------------------------------------------------------- 功能:编写程序,输出 1000 以内的所有完数及其因子。 说明:所谓完数是指一个整数的值等于它的因子之和。 例如“ 6 的因子是 1 、 2 、 3 ,而 6=1+2+3 ,故 6 是 一个完数。 -------------------------------------------------------*/ #include 26 main() { int i,j,m,s,k,a[100] ; for(i=1 ; i<=1000 ; i++ ) { m=i ; s=0 ; k=0 ; for(j=1 ; j /***********SPACE***********/ if(【?】) { s=s+j ; /***********SPACE***********/ 【?】=j ; } if(s!=0&&s==m) { /***********SPACE***********/ for(j=0 ; 【?】 ; j++) printf(\ printf(\ } } } 答案: =======(答案1)======= m%j == 0 =======(答案2)======= a[k++] =======(答案3)======= j =========或========= k>j 二、程序改错 共1题 (共计30分) 第1题 (30.0分) 题号:362 /*------------------------------------------------------ 【程序改错】 -------------------------------------------------------- 功能:删除字符串s中的所有空白字符(包括Tab字符、回车符及 换行符)。输入字符串时用'#'结束输入。 -----------------------------------------------------*/ #include int i,t; char c[80]; /**********FOUND**********/ for (i = 1,t = 0; p[i] ; i++) /**********FOUND**********/ if(!isspace((p+i))) c[t++]=p[i]; /**********FOUND**********/ c[t]=\ strcpy(p,c); } main( ) { char c,s[80]; int i=0; printf(\ c=getchar(); 27 while(c!='#') { s[i]=c;i++;c=getchar(); } s[i]='\\0'; fun(s); puts(s); } 答案: =======(答案1)======= for (i = 0,t = 0; p[i] ; i++) =======(答案2)======= if(!isspace(*(p+i))) c[t++]=p[i]; =======(答案3)======= c[t]='\\0'; 三、程序设计 共1题 (共计40分) 第1题 (40.0分) 题号:394 /*------------------------------------------------ 【程序设计】 -------------------------------------------------- 功能:产生20个[30,120]上的随机整数放入二维数组 a[5][4]中, 求其中的最小值。 ------------------------------------------------*/ #include \#include int amin(int a[5][4]) { /**********Program**********/ /********** End **********/ } main() { int a[5][4],i,j; for(i=0;i<5;i++) for(j=0;j<4;j++) a[i][j]=random(120-30+1)+30; for(i=0;i<5;i++) { for(j=0;j<4;j++) printf(\ printf(\ } printf(\ wwjt(); } void wwjt() { FILE *IN,*OUT; int m,n; int i[5][4]; int o; IN=fopen(\ if(IN==NULL) { printf(\ } 28
共分享92篇相关文档