C模拟考试题及参考答案(09级)

上传人:tia****nde 文档编号:36844751 上传时间:2018-04-03 格式:DOC 页数:14 大小:84.50KB
返回 下载 相关 举报
C模拟考试题及参考答案(09级)_第1页
第1页 / 共14页
C模拟考试题及参考答案(09级)_第2页
第2页 / 共14页
C模拟考试题及参考答案(09级)_第3页
第3页 / 共14页
C模拟考试题及参考答案(09级)_第4页
第4页 / 共14页
C模拟考试题及参考答案(09级)_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《C模拟考试题及参考答案(09级)》由会员分享,可在线阅读,更多相关《C模拟考试题及参考答案(09级)(14页珍藏版)》请在金锄头文库上搜索。

1、C 语言程序设计模拟试卷(语言程序设计模拟试卷(09 级)级) 1.2.4.5.9.11.12.13.15.19.20.22 24 25 26 28 29 30 一、单选题(、共 30 小题,每小题 1 分,共 30 分) 1、设a、b和c都是int型变量,且a=3,b=4,c=5,则下面的表达式中,值为0的表达式是( )。A. a b) 7、关于if后面一对圆括号中的表达式,叙述正确的是( )。 A. 只能用关系表达式 B. 只能用逻辑表达式 C. 只能用关系表达式或逻辑表达式 D. 可以使用任意合法的表达式8、以下运算符中,优先级最高的是( )。A. ! B. C. + D. %9、假设有

2、两个字符数组a80,b80,则正确的输出语句是( )。 Aputs(a,b); Bprintf(“%s %s“,a,b); Cputchar(a,b); Dputs(a); puts(b);10、对定义“int a2; “的正确描述是( )。 A. 定义一维数组a,包含a1和a2两个元素 B. 定义一维数组a,包含a0和a1两个元素 C. 定义一维数组a,包含a0、a1和a2三个元素 D. 定义一维数组a,包含a(0)、a(1)和a(2)三个元素11、在引用数组元素时,其下标表达式的类型必须是( )。 A. 字符型 B. 整型 C. 整型或字符型 D. 整型常量12、feof(fp)函数是用来

3、测试fp所指的文件是否结束,如果文件结束,则feof(fp)返回的 值是( ):A. 0 B. 1 C. NULL D. 以上答案都不对13、调用fopen函数打开一个文件失败时,函数返回的值是( ):A. -1 B. EOF C. NULL D. 114、在对文件进行操作时,读文件的含义是( ): A. 将内存中的信息存入磁盘 B. 将磁盘中的信息输入到内存 C. 将CPU中的信息存入磁盘 D. 将磁盘中的信息输入到 CPU15、在C程序中,不合法的浮点型常量是( ): A3.4E2.5 B.456 C0.820000 D100.3e516、C程序中,合法的关键字是( ):A. int B.

4、 integer C. Int D. Integer17、设P1和P2是指向同一个int型一维数组的指针变量,k为int型变量,则不能正确执行的 语句是( ) AP2=k; BP1=P2; Ck=*P1+*P2; Dk=*P1*(*P2);18、以下选项中,对指针变量p不正确的操作是( )。 Aint a6,*p; p= Bint a6,*p; p=a; Cint a6; int *p=a=1000; Dint a6; int *p1,*p2=a; *p1=*p2;19、设有如下的程序段:char str=“Hello“; char *ptr; ptr=str; 执行上面的程序段后,*(ptr

5、+5)的值为( )。A. o B. 0 C. 不确定的值 D. o的地址 20、While 语句中循环结束的条件是while后面表达式的值是( )。A. 0 B. 1 C. -1D. 非 021、有以下程序段: int t=0; while(t=1) t-; while循环执行的次数是( )。 A. 一次也不执行 B. 只执行一次 C. 无限次 D. 执行 2 次22、执行循环语句“for (i=1; i int max,min; find(int *p, int n) int *q; max=min=*p;for(q=p;q*q) min=*q; main ( )int I,num10;pr

6、intf(“Input 10 numbers:n“);for(i=0;imax *q=max 3、下面的程序将浮点数写到文件test中,然后读出并显示。#includemain() FILE *fp; float f=12.34; if(_(“test”,“wb”)=NULL) printf(“Cannotopen file.“ );exit(l); fwrite( rewind(fp) ; fread( printf(“%fn”,f);fclose(fp); 答案:fp=fopen4、统计学生成绩中不及格的学生名单。#include struct student long num;char

7、name20; float score; stu6=9910110,”wangling”,85,9910111,”liming”,90.5,9910112,” fengyong”,90.5,9910113,”fangjun”,56,9910114,”sunping”,77.5,9 910115,”kongxiao”,50.5;main() struct student *p;int count=0;printf(“不及格名单:n”);for(p=stu; _;p+) if(p-scorenum, p-name, p-score);printf(“不及格人数:%dn”,count); 答案:p

8、main() char a80, b26;int i,j,k=0; gets(a); for(i=0;ai!=0;i+) if(ai=Aj void main(void) int count,grades; printf(“请输入分数:n”); scanf(“%d“, while(grades=0) if(grades=60) count+; printf(“共有%d个学生成绩合格!n“,count);2、打开C:CAADATA37中源程序文件pg3104.cpp,该程序是判断一个输入的字符是哪种类 型的字符,修改程序,使之能正确运行。该源程序内容如下:#include void main()

9、 char ch; printf(“please input a character!”);ch=getchar();if ch=a printf(“请输入5个整数:“);for(i=1; i void main() float a,b,c; printf(“请输入两个数,中间用逗号隔开:“);scanf(“%f,%f“, c=add(a,b); printf(“两个数之和为:%fn“,c); float add(float x,float y) float z; z=x+y; return z; 5、打开C:CAADATA43中源程序文件pg8107.cpp,该程序将字符串a的值复制给字符串

10、b。 请改正其中的错误。该源程序内容如下:#include #include int main(void) char *a=“You are a great boy“; char *b=“; printf(“复制前,字符串a: %s,字符串b: %sn“,a,b);strcpy(b,a);printf(“复制后,字符串a: %s,字符串b: %sn“,a,b);return 0; 四、编程题 1、打开 C:CAADATA38 中的源程序文件 pg106.cpp,补充程序使得程序运行时完成以下功 能:从键盘输入 3 个数,并按由大到小的顺序输出。并以原文件名保存(不得删除原文件中的注释内容,否则

11、该题不计分)。(10 分)2、打开 C:CAADATA39 中的源程序文件 pg207.cpp,补充程序并以原文件名保存(不得删 除原文件中的注释内容,否则该题不计分),使得程序运行时完成以下功能:编写程序找出 33 矩阵中的最大元素及其行列位置并输出。(12 分)3、打开 C:CAADATA40 中的源程序文件 pg307.cpp,按要求补充程序并以原文件名保存 (不得删除原文件中的注释内容,否则该题不计分),要求为:编写判断一个年份是否为闰 年的函数 leapyear(),并在主函数调用该函数输出 19002100 年之间的所有闰年。闰年的 条件是:能被 4 整除但不能被 100 整除,或

12、者能被 400 整除。(18 分)C C 语言程序设计模拟题参考答案(语言程序设计模拟题参考答案(0909 级)级)一、单选题:一、单选题:题号12345678910答案BADBCDDBDB题号11121314151617181920答案BBCBAAACBA题号21222324252627282930答案CBABBCABBA二、填空题:二、填空题: 1、答案:i+ 或: i=i+1 或: +i 或: i+=1 或: i+; 或: i=i+1; 或: +i; 或: i+=1;2、答案:maxmax 或:*q=max3、答案:fp=fopen4、答案:p void main(void) int c

13、ount,grades; printf(“请输入分数:n“); scanf(“%d“, count=0; /添加本句while(grades=0) if(grades=60) count+; scanf(“%d“, /添加本句 printf(“共有%d 个学生成绩合格!n“,count);2、参考答案:#include void main() char ch; printf(“please input a character!“);ch=getchar();if(ch=a /增加变量i定义,修改数组长度为6 printf(“请输入5个整数:“);for(i=1; i float add(flo

14、at x,float y) / 将add函数定义提前到调用add之前float z; z=x+y; return z; void main() float a,b,c; printf(“请输入两个数,中间用逗号隔开:“);scanf(“%f,%f“, c=add(a,b); printf(“两个数之和为:%fn“,c);5、参考答案:#include #include int main(void) char *a=“You are a great boy“; char b20=“; / 定义数组b printf(“复制前,字符串a: %s,字符串b: %sn“,a,b); strcpy(b,a

15、); /参数b必须是数组printf(“复制后,字符串a: %s,字符串b: %sn“,a,b);return 0; 四、编程题: 1、pg106.cpp 参考程序:参考程序:#include void main() int a,b,c,temp;scanf(“%d,%d,%d”,if(a void main() int a33=8,6,4,2,1,9,7,5,3;int i,j,row,colum,max;max=a00; row=colum=0; for(i=0;imax) max=aij;row=i;colum=j; printf(“max=%d,row=%d,colum=%dn“,max,row,colum); 3、pg307.cpp 参考程序参考程序:#include main() int leapyear (int year);int year;printf(“19002100年之间的所有闰年是:n”);for(year=190

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 试题/考题

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号