《C语言程序设计》模拟题
更新时间:2023-09-08 19:46:01 阅读量: 教育文库 文档下载
中国地质大学(北京)继续教育学院 2015年01课程考试
《C语言程序设计》模拟题
一、简答题
1、简述C语言程序的结构。
C程序结构: 头文件; 局部函数声明; 局部定义声明; 全局变量声明; 全局函数声明; 引用外部函数声明; C代码(C函数); 二、选择题
1、 下面程序段的输出结果是【1】。C int a=60; a+=a-=a+a;
printf(“%d\\n”,a); A) 120 B) 60 C) -120
D) -60
2、 下面正确的字符常量是【2】。C A) ‘c’ B) ‘//’’ C) “w”
D) ‘’ 3、 以下不能用作标识符的是【3】。C A) _26 B) Scanf C) case
D) Double 4、 下面程序段中循环体执行的次数是【4】。C int a=10, b=0;
do {b+=2; a-=2+b; } while(a>=0); A) 1 B) 2 C) 3 D) 4
5、 以下关于函数的叙述正确的是【5】。D A) 函数中必须要有return语句
B) 函数中可以有多个return语句,但只有一个被执行
第1页(共23页)
中国地质大学(北京)继续教育学院 2015年01课程考试
C) return语句中必须有一个表达式
D) 函数中定义的变量不能与其它函数中的变量同名
6、 满足x为奇数时值为真,x为偶数时值为假的表达式是【6】。C A) !(x%2==1) C) x%2
7、 以下语句中无法正确赋值的是【7】。B A) char b[10]={‘H’, ‘e’, ‘l’, ‘l’, ‘o’, ‘!’}; B) char b[10]; b=“Hello!”;
C) char b[10]; strcpy(b, “Hello!”); D) char b[10]= “Hello!”;
8、 若有以下的定义和语句,则值为5的表达式是【8】。C int a[]={1,2,3,4,5,6,7,8,9,10}; A) a[5] C) a[a[3]]
B) a[a[4]] D) a[a[5]] B) x%2==0 D) !(x%2)
9、 若有定义:int k=7;float a=2.5,b=4.7;则表达式a+k%3*(int)(a+b)%2/4的值是【9】。
B A) 2.750000 B) 2.500000 C) 3.500000 D) 0.000000
10、 已知ch是字符型变量,下面正确的赋值语句是【10】。C A) ch=”\\” C) ch=’\\xff’
B) ch=’123’ D) ch=’\\08’
11、 下面程序的运行结果是:【11】。D void main() {
char c=’a’;
if(‘0’<=c<=’9’) printf(“YES”); else printf(“NO”); }
第2页(共23页)
中国地质大学(北京)继续教育学院 2015年01课程考试
A) 语句有错误 B) NO C) YESNO D) YES
12、 已知:int a=4,b=5,c; 则执行表达式c=a=a>b后,变量a的值为【12】。A A) 0 C) 4
13、 以下程序的运行结果是【13】。C #include
{ int x1=3,x2=1,x3=1;
if(x1=x2+x3) printf(“****”); else printf(“####”); }
A) 存在语法错误 C) 输出****
14、 下面程序段的输出结果是【14】。 #include
char p1[10]= “abc”, p2[]=“ABC”, str[50]= “xyz”; strcpy(str+2, strcat(p1,p2)); printf(“%s\\n”,str); A) xyabcABC C) yzabcABC
B) zabcABC D) xyzabcABC B) 无输出结果 D) 输出#### B) 1 D) 5
15、 设有:int a=1,b=2,c=3,d=4,m=2,n=2;执行(m=a>b)&&(n=c>d)后n的值为【15】。B A) 1 C) 3
B) 2 D) 0
16、若已定义x和y为double类型,则表达式:x=1, y=x+3/2的值是【16】。C A) 1 C) 2.0
B) 2 D) 2.5
第3页(共23页)
中国地质大学(北京)继续教育学院 2015年01课程考试
17、 以下程序段的输出结果为【17】。B int x=1,y=2; void fun1() { x=3; y=4; } void fun2(int x,int y) { printf(“%d,%d\\n”,x,y); } void main()
{ fun1(); printf(“%d,%d,”,x,y); fun2(5,6); }
A) 3,4,5,6 C) 1,2,3,4
B) 1,2,5,6 D) 3,4,1,2
18、 下面程序执行时,while的循环次数是【18】。D int i=0; while(i<10) {
if(i<1) continue; if(i==5) break; i++; } A) 1 B) 10 C) 6
D) 死循环,不能确定次数
19、 对一维数组a的说明语句中正确的是【19】。C A) int a(10) C) #define SIZE 10
int a[SIZE];
B) int n=10;a[n]; D) int n;
scanf(“%d”,&n); int a[n];
20、 若调用一个函数,且此函数中没有return语句,则该函数【20】。AD 第4页(共23页)
中国地质大学(北京)继续教育学院 2015年01课程考试
A) 没有返回值
C) 能返回一个用户所希望的函数值 B) 返回若干个系统默认值 D) 返回一个不确定的值
21、下列运算符中优先级最高的是【21】。A A)! B)% C)-= D)&&
22、若int j=10;执行下列程序后,变量j的正确结果是【22】。D switch(j) { case 9: j+=1; case 10: j+=1; case 11: j+=1; default: j+=1;}
A) 10 B) 11 C) 12 D) 13 23、下列程序的运行结果是【23】。C int ii,x[3][3]={1,2,3,4,5,6,7,8,9}; for(ii=0;ii<3,ii++)
printf(“%d”,x[ii][2-ii]);
A)1,5,9 B) 1,4,7 C) 3,5,7 D)3,6,9 24、在定义int a[10];之后,对a的引用正确的是【24】。D A) a[10] B) a[6,3] C) a(6)
D) a[10-10]
25、在定义了a[2][3]之后,对a的引用正确的是【25】。C A)a(1,2) B) a[1,3] C) a[1>2][!1] D) a[2][0] 26、设有程序段
int k=10;
while (k=0) k=k-1;
则下面描述中正确的是:【26】C A)while循环执行10次 B)循环是无限循环
第5页(共23页)
中国地质大学(北京)继续教育学院 2015年01课程考试
C)循环体语句一次也不执行 D)循环体语句执行一次
27、判断两个字符串s1和s2相等的正确语句是【27】。D A) if(s1=s2) B) if(s1==s2)
C) if(strcpy(s1,s2)) D) if(strcmp(s1,s2)==0) 28、以下正确的字符常量的定义为【】。D A、’c’ B、“cj” C、 ’abc’
D、’’
29、若x、y都是int型变量,且x=100,y=200,则printf(“%d”,(x,y));的输出结果是【】。A A) 200 C) 100 200
B) 100 D) 不确定
30、运行以下程序,如果从键盘输入ABCDE<回车>,则输出结果是【】。
#include
int num=0;
while( str[num]!= ‘\\0’) num++; return (num); }
void main( ) { char str[10];
gets(str);
printf(“%d\\n”,funch(str)); } A) 7 C) 5
B) 6 D) 4
31、为表示关系x>=y>=z,下面C语言表达式中正确的是【】。C A) (x>=y)&&(y>=z) C) (x>=y>=z)
B) (x>=y)and(y>=z) D) (x>=y)&(y>=z)
第6页(共23页)
中国地质大学(北京)继续教育学院 2015年01课程考试
32、下面程序段的输出结果是【】。 B int x=2,y=0,z;
x*=3+2; printf(“%d ”,x); x*=y=z=4; printf(“%d”,x); A) 8 40 C) 10 4
33、下列程序段的输出结果为【】。C int a=9; a+=a-=a+a;
printf(“%d\\n”,a); A) 18 C) -18
B) 9 D) -9 B) 10 40 D) 8 4
34、设有整型变量a的值为5,使整型变量b的值不为2的表达式【】。C A) b=a/5 C) b=a%2
B) b=6-(--a)
D) b=(a-a--,a/2)
35、语句printf(“a\\bre\\’hi\\’y\\\\\\bou\\n”)的输出结果为【】。C A) a\\bre\\’hi\\’y\\\\\\bou C) re’hi’you
B) a\\bre\\’hi\\’y\\bou D) abre’hi’y\\bou
36、设a,b,c,d均是int型变量,为了使以下程序输出为:1234+123+12+1,正确的输入形式应当为【】。 D scanf(“M+=+-+”,&a,&b,&c,&d); printf(“M+=+-+”,a,b,c,d); A) 1234123121<回车>
C) 1234+1234+1234+1234<回车> 37、以下程序的输出结果是【】。 A void main() { int a=1,b=1; switch (a+b)
{ case 2 : printf(\ case 3 : printf(\
第7页(共23页)
B) 1234123412341234<回车> D) 1234+123+12+1<回车>
中国地质大学(北京)继续教育学院 2015年01课程考试
} }
A) *
** C) *
38、分析以下程序,以下程序【】。D void main() { int x=5,a=0,b=0;
if(x=a+b) printf(“****\\n”); else printf(“####\\n”); } A) 有语法错,不能通过编译 C) 输出****
B) 通过编译,但不能连接 D) 输出#### D) * ** B) **
39、假定所有变量均已正确说明,下列程序段运行后x的值是【】。
a=b=c=0;x=35; if(! a) x=-1; else if(b); if(c) x=3; else x=4; A) -1 C) 35
40、下面程序运行的结果是【】。B #include
for(i=0;i<2;i++) {
x++;
B) 4 D) 3
for(j=0;j<=3;j++)
{
if(j%2) continue; x++; } x++;
第8页(共23页)
中国地质大学(北京)继续教育学院 2015年01课程考试
}
printf(“x=%d\\n”,x); } A) x=4 B) x=8 C) x=6
D) x=12
41、下面程序的运行结果是【】。C #include “stdio.h” void main() {
int i,j,a=0; for(i=0;i<2;i++) { for(j=0;j<4;j++)
{
if(j%2) break; a++; } a++; }
printf(“%d\\n”,a); } A) 4 B) 5 C) 6
D) 7 42、下面程序的运行结果是【】。A void main() {
char ch[7]={ “12ab56”}; int i,s=0;
for(i=0;ch[i]>=‘0’&&ch[i]<=‘9’;i+=2)
s=10*s+ch[i]-’0’;
printf(“%d\\n”,s); } A) 1 B) 1256 C) 12ab56
D) 7
43、下面程序的运行结果是【】。
第9页(共23页)
中国地质大学(北京)继续教育学院 2015年01课程考试
void main() {
char a[]=“morning”,t; int i,j=0;
for(i=1;i<7;i++)
if(a[j]
j=i;
t=a[j]; a[j]=a[7]; a[7]=a[j];
puts(a); } A) mogninr C) morning
44、以下正确的函数说明形式是【】。A A) double fun(int x,int y) C) double fun(int x,int y); 45、以下程序的输出结果是【】。B void fun(int a, int b, int c) {
a=456; b=567; c=678; }
B) double fun(int x;int y) D) double fun(int x,y); B) mo D) mornin
void main() {
int x=10, y=20, z=30; fun (x, y, z);
printf(\}
A) 30,20,10 C) 456,567,678
三、程序选择题
1、 下面程序是从键盘中输入学号,然后输出学号中百位数字为3的学号,输入0时结束循
环,请选择填空。 #include
第10页(共23页)
B) 10,20,30 D) 678,567,456
中国地质大学(北京)继续教育学院 2015年01课程考试
2.写一个函数,用于求n个学生的平均成绩:并设计主函数,定义一个一维数组score里面存放10个学生的成绩,输出这10位学生的平均成绩。
3.有一个3*4的矩阵,要求编写程序求出其中值最大的那个元素的值,以及所在的行号和列号。
#include
cout< cout<<\for(inti=0;i<3;i++) { for(intj=0;j<4;j++) cin>>matrix[i][j]; } for(inti=0;i<3;i++) { for(intj=0;j<4;j++) { cout< cout< for(i=0;i<3;i++) { for(j=0;j<4;j++) { 第16页(共23页) 中国地质大学(北京)继续教育学院 2015年01课程考试 if(matrix[i][j]>FindMax) { FindMax=matrix[i][j]; } } } cout< cout<<\} #include using namespace std; #include cout<<\请输入十二个元素\max=0; for( int i=0;i<3;i++) { for(int j=0;j<4;j++) { cin>>a[i][j]; if(a[i][j]>max) { max=a[i][j]; iIndex = i; jIndex = j; } } } cout< 第17页(共23页) 中国地质大学(北京)继续教育学院 2015年01课程考试 4.写一个函数,求10个学生的平均成绩:并设计主函数,定义一个一维数组score里面存放10个学生的成绩,输出这10位学生的平均成绩。 5.求Fibonacci数列的前40个数。1,1,2,3,5,8,13?。 参考答案: 一、简答题 1、1)一个程序由一个或多个源程序文件组成。 预处理指令、全局声明、函数定义。 2)函数是C程序的主要组成部分。 3)一个函数包括两个部分: 函数首部和函数体(声明部分和执行部分)。 4)程序总是从main函数开始执行的。 5)程序中对计算机的操作是由函数中的C语句完成的。 6)在每个数据声明和语句的最后必须有一个分号。 7)C语言本身不提供输入输出语句。 8)程序应当包含注释。 二、选择题(本大题共35小题,每小题1分,共35分)。对每一个【 】,从A)、B)、C)、D)四个供选择的答案中,选出一个正确的答案。 1 C 11 D 21 A 2 A 12 A 22 D 3 C 13 C 23 C 4 C 14 A 24 D 5 B 15 B 25 C 6 C 16 C 26 C 7 B 17 A 27 D 8 C 18 D 28 A 9 B 19 C 29 A 10 C 20 D 30 C 第18页(共23页) 中国地质大学(北京)继续教育学院 2015年01课程考试 31 A 41 A 32 B 42 A 33 C 43 B 34 C 44 C 35 C 45 B 36 D 37 A 38 D 39 B 40 B 三、程序选择题 1 D 2 B 3 C 4 C 5 D 6 B 7 C 8 B 9 A 10 B 四、填空题 1 4 7 10 13 m=1b 16 i<=100 19 'D' 四、阅读程序题 1、21 int i,j,k,n 3*5*i+3*3*j+k k main()函数 2 5 8 11 i++ 10 i #include //调用Sort函数,a为数组名,大小为10 第19页(共23页) 中国地质大学(北京)继续教育学院 2015年01课程考试 void sort(int array[],int n) { int i,j,k,t; for(i=0;i float average(float array[10]) { int i; float aver,sum=array[0]; for(i=1;i<10;i++) sum=sum+array[i]; aver=sum/10; return(aver); } 方法二: #include //函数声明 //调用average函数 //定义average函数 //累加学生成绩 第20页(共23页) 中国地质大学(北京)继续教育学院 2015年01课程考试 float average(float array[],int n); float score[10]={67.5,89.5,99,69.5,77,89.5,76.5,54,60,99.5}; //定义长度为10的数组 printf(\用数组名score和10作实参 return 0; } float average(float array[],int n) //定义average函数,未指定形参数组长度 { int i; float aver,sum=array[0]; for(i=1;i 3. 题 #include 4. 题 方法一: #include 第21页(共23页) 中国地质大学(北京)继续教育学院 2015年01课程考试 for(i=0;i<10;i++) scanf(\ printf(\ aver=average(score); //调用average函数 printf(\ return 0; } float average(float array[10]) //定义average函数 { int i; float aver,sum=array[0]; for(i=1;i<10;i++) sum=sum+array[i]; //累加学生成绩 aver=sum/10; return(aver); } 方法二: #include float average(float array[],int n) //定义average函数,未指定形参数组长度 { int i; float aver,sum=array[0]; for(i=1;i #include 第22页(共23页) 中国地质大学(北京)继续教育学院 2015年01课程考试 { int f1=1,f2=1,f3; int i; printf(\ for(i=1;i<=38;i++) { f3=f1+f2; printf(\ f1=f2; f2=f3; } return 0; } 第23页(共23页)
正在阅读:
《C语言程序设计》模拟题09-08
GALI-74中文资料08-18
外国文学史复习资料02-02
A Reading reporting on Jane Eyre简爱英文读后感07-10
《自然辩证法》作业03-27
2018年西南大学法学院857综合课二之法理学考研强化五套模拟题05-08
项目部临建合同程好海01-26
西欧电动车配件目录05-31
火灾隐患排查总结03-17
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 模拟题
- 程序设计
- 语言
- 三年高考(2014-2016)数学(理)试题分项版解析 专题06数列解析版 Word版含解析] -
- 致各位家长的一封信
- 机械制造基础实验指导书修改稿
- 药材储存与养护(第1章)药材储存与养护工作概述
- 综合布线系统管槽容量计算
- (完整版)要 - 毕业设计找这个网站吧
- 基础工程课程设计
- 有哪些世界顶级的赤霞珠葡萄酒
- 投资风险与投资组合
- 进口农药所有产品
- 8000米雪山的震撼 尼泊尔徒步15天全纪录 攻略整理 -
- 化纤毛纺厂总变电所及配电系统设计
- 2016-2021年中国丹瑞市场前景展望分析及竞争格局预测研发报告
- 为农村孩子创造奇迹的人 黄明
- 《交际中的语言运用》教学设计2
- 瓦工班组安全活动记录
- 提摩太后书
- 清华大学信息技术四年级上册教案
- 31 两个谜语(教案)
- 五年级上册数学期中试题-期中测试卷 人教新课标含答案