当前位置:首页 > 计算机二级c语言30套模拟试题
所属语言:C语言
试卷方案:C语言期末模拟练习 试卷总分:100分 共有题型:3种
一、程序填空 共1题 (共计30分) 第1题 (30.0分) 题号:401
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
功能:输入某年某月某日,判断这一天是这一年的第几天? -------------------------------------------------------*/
#include
int day,month,year,sum,leap;
printf(\ scanf(\ switch(month) {
case 1:sum=0;break; case 2:sum=31;break; case 3:sum=59;break;
/***********SPACE***********/ case 4:【?】;break; case 5:sum=120;break; case 6:sum=151;break; case 7:sum=181;break; case 8:sum=212;break;
case 9:sum=243;break; case 10:sum=273;break; case 11:sum=304;break; case 12:sum=334;break;
default:printf(\ }
/***********SPACE***********/ 【?】;
/***********SPACE***********/ if(year@0==0||(【?】) leap=1; else
leap=0;
/***********SPACE***********/ if(【?】) sum++;
printf(\}
答案:
=======(答案1)======= sum=90
=======(答案2)======= sum=sum+day
=========或========= sum= sum + day
=======(答案3)=======
year%4 == 0 && year0 != 0) =======(答案4)======= leap==1&&month>2 =========或========= leap == 1 && month>2 =========或=========
21
leap == 1 && 2 二、程序改错 共1题 (共计30分) 第1题 (30.0分) 题号:385 /*-----------------------------------------------------{ char s[100]; int upper = 0, lower = 0 ; printf( \ fun ( s, & upper, &lower ); printf( \- 【程序改错】 -------------------------------------------------------- 功能:分别统计字符串中大写字母和小写字母的个数。 例如:给字符串 s 输入:AAaaBBb123CCccccd, 则应输出结果:upper = 6, lower = 8。 ------------------------------------------------------*/ #include /**********FOUND**********/ void fun ( char *s, int a, int b ) { while ( *s ) { if ( *s >= 'A' && *s <= 'Z' ) /**********FOUND**********/ a++ ; if ( *s >= 'a' && *s <= 'z' ) /**********FOUND**********/ b++; s++; } } main( ) } 答案: =======(答案1)======= void fun ( char *s, int *a, int *b ) =======(答案2)======= (*a)++ ; =======(答案3)======= (*b)++; 三、程序设计 共1题 (共计40分) 第1题 (40.0分) 题号:54 /*------------------------------------------------ 【程序设计】 -------------------------------------------------- 功能:求1到100之间的偶数之积。 ------------------------------------------------*/ #include double fun(int m) { /**********Program**********/ 22 /********** End **********/ } main() { printf(\ wwjt(); } void wwjt() { FILE *IN,*OUT; int iIN,i; double dOUT; IN=fopen(\ if(IN==NULL) { printf(\Changed\ } OUT=fopen(\ if(OUT==NULL) { printf(\Changed\ } for(i=0;i<10;i++) { fscanf(IN,\ dOUT=fun(iIN); fprintf(OUT,\ } fclose(IN); fclose(OUT); } 答案:---------------------- double y=1; int i; for(i=1;i<=m;i++) if(i%2==0)y*=i; return y; ---------------------- 试卷编号:8112 所属语言:C语言 试卷方案:C语言期末模拟练习 试卷总分:100分 共有题型:3种 一、程序填空 共1题 (共计30分) 第1题 (30.0分) 题号:421 /*------------------------------------------------------- 【程序填空】 --------------------------------------------------------- 功能:输入学生成绩并显示。 -------------------------------------------------------*/ # include 23 char number[6]; char name[6]; int score[3]; } stu[2]; void output(struct student stu[2]); void main() { int i, j; /***********SPACE***********/ for(i=0; i<2; 【?】) { printf(\请输入学生%d的成绩:\\n\ printf(\学号:\ /***********SPACE***********/ scanf(\【?】.number); printf(\姓名:\ scanf(\ for(j=0; j<3; j++) { printf(\成绩 %d. \ /***********SPACE***********/ scanf(\【?】.score[j]); } printf(\ } output(stu); } void output(struct student stu[2]) { int i, j; printf(\学号 姓名 成绩1 成绩2 成绩3\\n\ for(i=0; i<2; i++) { /***********SPACE***********/ 【?】(\ for(j=0; j<3; j++) printf(\ printf(\ } } 答案: =======(答案1)======= i++ =========或========= ++i =========或========= i=i+1 =======(答案2)======= &stu[i] =======(答案3)======= &stu[i] =======(答案4)======= printf 二、程序改错 共1题 (共计30分) 第1题 (30.0分) 题号:12 /*------------------------------------------------------ 【程序改错】 -------------------------------------------------------- 功能:求1到10的阶乘的和。 ------------------------------------------------------*/ 24
共分享92篇相关文档