C语言期中试题WORD

上传人:大米 文档编号:458516936 上传时间:2023-07-07 格式:DOC 页数:8 大小:66.50KB
返回 下载 相关 举报
C语言期中试题WORD_第1页
第1页 / 共8页
C语言期中试题WORD_第2页
第2页 / 共8页
C语言期中试题WORD_第3页
第3页 / 共8页
C语言期中试题WORD_第4页
第4页 / 共8页
C语言期中试题WORD_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《C语言期中试题WORD》由会员分享,可在线阅读,更多相关《C语言期中试题WORD(8页珍藏版)》请在金锄头文库上搜索。

1、课程号:0401023 C程序设计期中考试试卷考试形式:闭卷考试 考试时间:120分钟班号 学号 姓名 得分 一、选择题(每空2分,共40分)。对每一个【 】,从A、B、C、D四个供选择的答案中,选出一个正确的答案。1、 一个C程序的执行是从【 】。A)程序的main函数开始,到main函数结束B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C)本程序的main函数开始,到本程序的最后一个函数结束D)本程序的第一个函数开始,到本程序的main函数结束2、 下面程序段的输出结果是【 】。int a=9;a+=a-=a+a;printf(%dn,a);A)18 B)9C)-18 D)

2、-93、 若有定义:int k=7; float a=2.5 , b= 4.7; 则表达式 a + k%3*(int)(a+b)%2/4 的值是【 】。A)2500000 B)2.750000 C)3.500000 D)0.0000004、 有以下定义和输入语句,若要求a1,a2,c1,c2的值分别为10,20,A和B,当从第一行开始输入数据的时候,正确的数据输入方式是【 】。(注:表示一个空格,表示回车)int a1,a2;char c1,c2;scanf(%d%c%d%c ,&a1,&c1,&a2,&c2);A)10A20B B)10A20BC)10A20B D)10A20B5、 已知ch

3、是字符型变量,下面正确的赋值语句是【 】。A)ch = “ ” B)ch =xff C)ch = 123 D)ch = 086、若希望当变量a的值为奇数时,表达式的值为“真”,a的值为偶数时,表达式的值为“假”。 则以下不能满足要求的表达式是【 】。A)a%2 = = 1 B)!(a%2 = = 0)C)!(a%2) D)a%27、设ch 是char 类型变量,其值是A,则以下表达式 ch =(ch =A& ch =Z)?(ch+a-A):ch 的值是【 】。A)Z B)A C)a D)z8、以下程序的运行结果为【 】。#include void main() int x1 = 3 , x2

4、= 1 , x3 = 1 ; if (x1=x2+x3) printf (“ * * * * ” ) ; else printf (“ # # # # ” ) ; A)输出* * * * B)输出# # # #C)存在语法错误 D)无输出结果9、若运行时输入2.0,则下面程序的输出结果是【 】。void main() float a, b;scanf(%f,&a);if(a0.0) b=0.0;else if(a0.5)&(a!=2.0) b=1.0/(a+2.0);else if(a10.0) b=1.0/a;else b=10.0;printf(%fn,b);A)0.000000 B)0.

5、500000 C)1.000000 D)0.25000010、执行程序段,则下面说法中正确的是【 】。x=-1;do x=x*x; while(!x);A)死循环 B)循环执行2次C)循环执行1次 D)有语法错误11、当输入为“quert?”时,下面程序的执行结果是【 】。#include void main() char c; c=getchar(); while(c=getchar()!=?) putchar(+c); A)quert B)vfsu C)quert? D)rvfsu?12、对一维整型数组a的说明语句中正确的是【 】。A)int a(10); B)int n=10,an;C)

6、int n; D)#define SIZE 10 scanf(%d,&n); int aSIZE; int an;13、下面程序的输出结果是【 】。 void main() int x=1,y=0,a=0,b=0; switch( x ) case 1:switch(y) case 0: a+; case 1: b+; break; case 2: a+; b+; break; printf(a=%d,b=%dn,a,b); A)a=2,b=1B)a=1,b=1C)a=1,b=0D)a=2,b=214、有定义语句:int i;int x33=1,2,3,4,5,6,7,8,9;,则下面语句的输

7、出结果是【 】。for(i=0;i3;i+) printf(%3d,xi2-i);A)159B)147C)357D)36915、下面程序的运行结果是【 】。void main() int i,j,a=0;for(i=0;i2;i+) for(j=0;j4;j+)if(j%2) break;a+; a+;printf(%dn,a);A)4 B)5 C)6 D)716、有两个字符数组a,b,则以下能正确为a,b数组进行赋值的语句是【 】。 A)gets( a, b) ; B)scanf(“%s%s”, &a ,&b) ;C)getchar(a); getchar(b); D)gets(a); ge

8、ts(b);17、以下能正确计算12310的程序段是【 】。A) do k=1;n=1; B) do k=1;n=0;n=n*k; n=n*k;k+; k+; while(k=10); while(k=10);C) k=1;n=1; D) k=1;n=0;do n=n*k; do n=n*k;k+; k+; while(k=10); while(k=10);18、不能把字符串:good! 赋给数组b的语句是【 】。A)char b10= g, o, o, d, ! ;B)char b10; b=good! ;C)char b10; strcpy(b, good! );D)char b10= g

9、ood! ;19、下面程序的运行结果是【 】。void main() char a=morning,t;int i,j=0;for(i=1;i7;i+) if(ajai)j=i;t=aj; aj=a7; a7=t; puts(a);A)mogninr B)mo C)morning D)mornin20、下面程序的输出结果是【 】。(注:表示一个空格)int f(int a) int b=0;static int c=3;b+; c+; return(a+b+c);void main() int a=2, i; for(i=0;i3;i+)printf(%3d,f(a);A) 777B) 710

10、13C) 7911D) 789二、程序选择填空题(每空 2分,共30分)1、 下面程序是从键盘输入学号,然后输出学号中百位数字是 3的学号,输入 0时结束循环。请选择填空。#includevoid main() long num; scanf(ld,&mum); do if(【1】) printf(ld,num); scanf(ld,&num); while(【2】); 【1】A) num%100/10=3 B) num/100%10=3C)num%10/10=3 D)num/10%10=3【2】 A)! num B)num0=0 C)! num=0 D)!num!=02、 下面程序的功能是找

11、出数组中的最大值和此元素的下标,数组元素的值由键盘输入。请选择填空。#include void main() int a10, k, p; for(k=0;k10;k+) sacnf(“%d”,【3】);【4】for(k=1;kap) 【5】printf(“最大值=%d,下标=%dn”,ap,p);【3】 A)ak B)a(k) C)&ak D)&a(k)【4】 A)p=a0; B)p=0; C)p=1; D)p=a(0);【5】 A)p=k; B)ap=ak; C)ak=ap; D)k=p;3、 下面程序的功能是用起泡法对10个数按由小到大的顺序排序。在程序中定义数组长度为11,a0不用,只用a1到a10,以符合人们的习惯。请选择填空。#include void main() int i, j, temp, data 11; for(i=1;i=10;i+) scanf(%d,

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 医学/心理学 > 基础医学

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