8-4-C语言上机考试试题18.doc_第1页
8-4-C语言上机考试试题18.doc_第2页
8-4-C语言上机考试试题18.doc_第3页
8-4-C语言上机考试试题18.doc_第4页
8-4-C语言上机考试试题18.doc_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C 语言上机考试试题-181. 选择题 ( 评分标准 20 分,每小题2分 ) 1.设整型变量s,t,c1,c2,c3,c4的值均为2,则执行语句s=c1=c2; t=c3c4; 后,s,t的值为:_。 (A) 1,2 (B)1,1 (C)0,1 (D)1,02.下列语句不具有赋值功能的是_。(A)a*=b (B)x=1 (C)a+b (D)a+3.C语言程序中,当出现条件分支语句ifelse时, else与_组成配对关系(A)同一复合语句内部的if (B)在其之前任意的if(C)在其之前未配对的最近的if (D)首行位置相同的if4.下列数组定义方式不正确的语句是_。(A)charx5; (B)chary=h,e,l,l,o;(C)intx10=12,13,14,15; (D)int y;5.若有如下定义和语句,且0=i8+2 (B)a&d (C)(a*2-c)|d(D)a-bm (C)(*p).m(D)p.stu.n10.下列函数中不能用于对磁盘文件进行输入输出操作的是_。(A)fscanf( )(B)printf( )(C)fgetc( )(D)fputs( )套数号答案181.D 2.C 3.C 4.D 5.A 6.D 7.A 8.D 9.D 10.B2. 判断题 ( 评分标准 20 分,每小题2分)1. 在C语言中,int、char和short三种类型数据所占用的内存均为2个字节。2. 在C语言中,数组名代表数组中最后一个元素的地址。3. ASCII文件是把内存中的数据按照其在内存中的存储形式原样输出到磁盘上存放。4. C语言中字符串的结束符是0。5. 若打开文件的方式为“r”而该文件已经存在,则文件中原有数据被清空。6. 在定义int a5后,可以引用a0到a5中的元素。 7. 不能将一个结构体变量作为一个整体进行输入输出。 8. 在C语言中,所有的变量在使用前都必须予以定义。9. 用结构体变量作实参,形参也必须是同类型的结构体变量。10. 如果x y或a b为真,那么表达式(x y & a b)为真。套数号答案191. F 2. F 3. F 4. T 5. F 6. F 7. T 8. T 9. T 10.F3. 填空题 ( 评分标准 10 分,每小题2分)1. 以0x开头的C整型常数是_进制数。2. 运算表达式!(1010) 的结果为_。3. 假设所有变量均为整型,则表达式(a=2,b=5,b+1,a+b)的值是_。4. 设x、y和z是int型变量,且x=3,y=4,z=5;,则下面表达式x|y+z&y-z的值是_。5. 若有定义int k=7,x =12;,则表达式(x%=(k%=5)的值是_。第4套(1)16(2)1(3)7(4)1(5)04. 程序改错题 ( 评分标准 20 分,每小题 5分 )1. 下列给定的程序中,函数fun()的功能是:计算并输出500以内最大的6个能被7或11整除的自然数之和。#include #include int fun(int k) int m=0,mc=0;while(k=2)&(mc6) if(k%7=0)|(k%11=0) /* $ */ printf(%dn ,k);m+=k;mc+; k-;return m;main() printf(%d ,fun(500);操作说明:在考生目录的*子目录下,有*.c文件,该文件中“/*$1*/”行中的语句if(k%7=0)|(k%11=0)有错误,请改正(注意:不得加行、减行、加句、减句,否则后果自负)。该程序功能:计算并输出500以内最大的6个能被7或11整除的自然数之和。答案:if(k%7=0)|(k%11=0)运行样例1行运行结果:29252下列程序中,函数fun()的功能是:用选择法对数组中的n个元素按从大到小的顺序进行排序。#include #define N 20void fun(int a,int n)int i,j,t,p;for(j=0;jn-1;j+) p=j;for(i=j;iap) p=i;t=ap; ap=aj; ap=t; /* $ */ main()int aN=11,32,-5,2,14,100,50,48,71,30,i,m=10;fun(a,m);for(i=0;im;i+)printf(%d ,ai); 操作说明:在考生目录的*子目录下,有*.c文件,该文件中“/* $1 */”行中的语句ap=t;有错误,请改正(注意:不得加行、减行、加句、减句,否则后果自负)。该程序功能:用选择法对数组中的n个元素按从大到小的顺序进行排序。答案:aj=t; 运行样例1行运行结果:100 71 50 48 32 30 14 11 2 -53程序中函数fun()的功能是:依次取出字符串中所有的字母,形成新的字符串,并取代原字符串。#include #include void fun(char *s)int i,j;for(i=0,j=0; si!= 0; i+)if(si=A&si= a&si= A&si= a&si= A&si= a&si= z)运行样例1行运行结果:abcder4下列给定程序中函数fun()的功能是:从n个学生的成绩中统计出高于平均分的学生人数,人数由函数值返回,平均分存放在形参aver所指的存储单元中。#include #include #define N 20int fun(float s, int n,float *aver) float ave ,t=0; int count=0,k,i; for(k=0;kn;k+) t+=sk; ave=t/n; for(i=0;iave) count+; aver=ave; /* $ */ return count;main() float s30=85,65.5,69,95.5,87,55,62.5,75,aver; printf(%.2f %d ,aver,fun(s,8,&aver); 操作说明:在考生目录的*子目录下,有*.c文件,该文件中“/*$1*/”行中的语句aver=ave; 有错误,请改正(注意:不得加行、减行、加句、减句,否则后果自负)。该程序功能:从n个学生的成绩中统计出高于平均分的学生人数,人数由函数值返回,平均分存放在形参aver所指的存储单元中。答案:*aver=ave;运行样例1行运行结果:74.31 45. 程序填空( 评分标准 10 分,每小题5分)1. 程序运行结果为输出下边图形,请填写程序空白处。* * * * * *#include main()int i,j,k;for(i=1;i=4;i+) for(j=1;j=4-i;j+)printf( );for(k=1;k=2*i-1;k+)printf(*); printf(n); for(i=1;i=3;i+)for(j=1;j=i;j+)printf( );for(k=1; /* $ */; k+) printf(*);printf(n);操作说明:在考生目录的*子目录下,有*.c文件,该文件中“/* $1 */”行是根据程序功能需要填充部分,请完成程序填充(注意:不得加行、减行、加句、减句,否则后果自负)。该程序功能:填写程序,实现输出下边图形。* * * * * *答案:k=2*(4-i)-1运行样例7行运行结果: * * * * * *2.请填空函数fun()中的语句,该函数的功能是:分类统计一个字符串中元音字母和其他字符的个数(不区分大小写)。例如,输入aeiouAOUpqrt,运行结果为A:2 E:1 I:1 O:2 U:2 other:4。#include void fun(char *str,int bb) char *p=str; int i=0; for(i=0;i6;i+) bbi=0; while(*p) switch(*p)case A:case a:bb0+;break;case E:case e:bb1+;break;case I:case i:bb2+;break;case O:case o:bb3+;break;case U:case u:bb4+;break;default: bb5+; /* $ */ main( )char str=aeiouAOUpqrt;char ss6=AEIOU;int i, bb6;fun(str,bb);for(i=0;i5;i+)printf(%c:%d ,ssi,bbi);printf(other:%d,bbi);操作说明:在考生目录的*子目录下,有*.c文件,该文件中“/*$1*/”行是根据程序功能需要填充部分,请完成程序填充(注意:不得加行、减行、加句、减句,否则后果自负)。该程序功能:分类统计一个字符串中元音字母和其他字符的个数(不区分大小写)。例如,输入aeiouAOUpqrt,运行结果为A:2 E:1 I:1 O:2 U:2 other:4。答案: p+;运行样例1行运行结果:A:2 E:1 I:1 O:2 U:2 other:46. 程序设计 ( 评分标准 20 分,每小题10分)1. 请编写一个函数fun( ),它的功能是:比较两个字符串的长度,(不得调用C语言提供的求字符串长度的函数),函数返回较短的字符串。若两个字符串长度相等,则返回第1个字符串。例如在主函数中输入字符串:nanjing,nanchang,调用函数fun( )后将返回输出:nanjing。参考答案:#include char *fun(char *s, char *t)int i,j;for(i=0;si!= 0;i+); for(j=0;tj!= 0;j+);if(i=j) return s; else return t;main() char a20,b10;gets(a);gets(b);printf(%s,fun(a,b);运行样例3行运行样例1:nanjingnanchang运行结果:nanjing2.请编写函数fun( ),它的功能是:求出1到30之内能被5或13整除的数,并将它们放在指定的aa数组中,同时通过变量n返回这些数的个数。要求在主函数中先输出“能被5或13整除的数”,然后输出“这些

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论