《大一c语言考试试题.pdf》由会员分享,可在线阅读,更多相关《大一c语言考试试题.pdf(6页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、一、单项选择题(每小题 2 分,共 50 分)1、一个 C 程序的执行是从_A_。A、本程序的 main 函数开始,到 main 函数结束B、本程序的 main 函数开始,到本程序文件的最后一个函数结束C、本程序文件的第一个函数开始,到本程序文件的最后一个函数结束D、本程序文件的第一个函数开始,到本程序 main 函数结束2、C 语言程序的基本单位是_C_。A、程序行B、语句C、函数D、字符3、请选出可用作 C 语言用户标识符的一组标识符_B_。A、voidB、a3_b3C、ForD、2adefine_123-abcDOWORDIFasesizeof4、假定 x 和 y 为 double 型,
2、则表达式(x=2,y=x+5/2)的值是_C_ 。A、4.500000B、4C、4.000000D、2.0000005、下列可以正确表示字符型常量的是_D_。A、297B、aC、nD、t6、在 C 语言中,要求运算数必须是整型的运算符是_D_。A、/B、+C、*=D、%7、C 语言中,复合语句的构成是将一系列语句置于_C_。A、begin 与 end 之间B、方框号“ ”之间C、花括号“ ”之间D、圆括号“( )”之间8、有如下程序段,对应正确的数据输入是_A_。float x,y;scanf(”%f%f”, &x,&y);printf(”a=%f,b=%f”, x,y);A、2.04B、2.
3、04,5.675.67C、A=2.04,B=5.67D、2.045.679、以下程序段的输出结果是_D_。int a=5678;printf(”%2dn”, a);A、提示出错、无结果B、56C、78D、567810、已知:char ch=A;则下列表达式的值是_B_。ch = (ch=A&ch=Z) ? (ch+32) : ch;A、AB、aC、ZD、z大一c语言考试试题11、下列描述,正确的是_B_ 。A、表达式 3.91%5 是合法的B、用 b=89 作为 while 循环的条件是合法的C、逗号表达式是没有值和类型的D、字符型变量和 int 型变量的操作完全不同12、阅读以下程序:mai
4、n()int x;scanf(%d,&x);if(x-5) printf(%d,x);else printf(%d,x+);程序运行后,如果从键盘上输人 5,则输出结果是_B_ 。A、3B、 4C、 5D、 613、下列程序的运行结果是_C_。#include ”stdio.h”main() int k;k=3;switch(k) case 1: printf(”%dn”, k+);case 2: printf(”%dn”, k+);case 3: printf(”%dn”, k+);case 4: printf(”%dn”, k+);break;default: printf(”Full!n
5、”);A、3B、4C、3D、44414、设 a、b、c、d、m、n 均为 int 型变量,且 a=5、b=6、c=7、d=8、m=2、n=1,则逻辑表达式(m=ab)&(n=cd) 的值为_A_。A、0B、 1C、2D、 315、设 x、y 和 temp 均为 long int 型变量,则以下语句:temp=x; x=y; y=temp; 的功能是_D_。A、把 x 和 y 按从大到小排列B、把 x 和 y 按从小到大排列C、无确定结果D、交换变量 x 和变量 y 的值16、以下程序的输出结果是 _A_ 。main()int a, b;for(a=1, b=1; a=10) break;if
6、(b%3=1) b+=3; continue; printf(%dn,a);A、4B、6C、5D、10117、执行以下程序后输出的结果是_D_。main() int y=10;do y-;while(-y);printf(%dn,y-);A、-1B、1C、818、执行以下程序后输出的结果是_B_。main()int i, j, w=0;for(i=4; i; i-)for(j=1;j=2;j+)w=w+i*j;w=i*j;printf(%dn,w);A、4B、0C、119、以下程序运行后,输出结果是_C_。main()intn5=3,3,3,i,k=2;for(i=0;ik;i+)ni=ni+
7、1;printf(%dn,nk);A、4B、9C、320、以下程序的输出结果是 _A_ 。f ( int a)int b=0;static int c = 3;b+; c+;return(a+b+c);main()int a = 2, i;for(i=0;i=0;i-) ai=10-i;printf(%d %d %d,a1,a6,a9);A、1 6 9B、9 4 1C、9 6 1D、3 5 723、若定义:float x=3.14159,*p=&x;则 printf(%fn,*p+);的输出结果为_C_ 。A、无确定值B、x 的地址C、3.14159D、4.1415924、以下程序的输出结果是
8、_B_main()char b=Language;char *p=b;printf(%c ,*(b+2);p=p+7;printf(%cn,*p+);A、27B、neC、ag25、下列程序的输出结果是_A_。#include stdio.hmain()int a=1,2,3,4,5,6,7,8,9,0, i, s, *p;p=a;s=0;for(i=0;i=9;i+)、nuDs+=*p+;printf(%dn, s);A、45B、44C、0D、9二、判断题(每小题 1 分,共 10 分)1语句 int *point;中的 point 是指针变量名。( T )2主函数和其它函数之间可以相互调用。
9、( F)3puts( )和 gets( )函数只能输入或输出一个字符。( F)4. 可以对字符型数组元素进行整体输入、输出。( T )5do-while 语句构成的循环不能用其他语句构成的循环来代替。(F)6在一个函数内的复合语句中定义的变量可以在本函数范围内有效。(F)7函数必须有返回值,否则不能使用函数。( F)8for(;);语句相当于 while(1);语句。( T )9C 程序的执行总是从第一个定义的函数开始。( F )10C 语言中的关键字专门用作语言的特定成分,而不能作为一般标识符使用。( T )三、程序填空题(每空 2 分,共 10 分)1、下面程序完成判断某一个数 m 是否为
10、素数,如果是则输出m is a prime!,否则就输出m is not a prime!,请选择填空。main() int i, m;scanf(m=%d, &m);for(i=2; im; i+) if(m%i=0) printf(%d is not a prime!n, m);(1)else(2)if(i=m) printf(%d is a prime!n, m);(1)、 A、breakB、continueC、break;D、continue;(2)、 A、breakB、break;C、continueD、continue;2、以下程序的功能是:求出用数字 0 至 9 组成没有重复数字
11、且是 13 倍数的三位数的个数,请选择填空。#includevoid main() int i, j, k, w, count = 0;for(3); i=9; i+)for(j=0;j=9; j+)for(k=0; k=9;k+)if(4) w = i*100+j*10+k;if(5)count+;printf(n count=%dn, count);(3)、 A、i=0B、i=1C、i=9D、i=-1(4)、 A、i!=jB、i!=j |j!=kC、i!=j& j!=kD、i!=j& j!=k & k!=i(5)、 A、w%13=0B、w/13=0C、w%13=0D、w/13=0四、编程题
12、(第 1 小题 12 分,第 2 小题 18 分,共 30 分)1、从键盘输入一个 4 位数的正整数 n,将该数反序输出。例如,若输入的是1357,则输出的是 7531。要求:1)利用 VC+编译系统进行调试、运行2)对输入的正整数 n 的合法性进行检查3)将源程序以“编程题 1.c”为文件名保存在网络盘(K:盘)的考生文件夹上,用其它文件名保存或保存在其他地方均不能得分2、已知一组字符串 a27=jjyyzzabcdefgJJYYZZABCDEFG; 请编一程序,将其中的小写字母换成其前一个字母,即 z 换成 y,y 换成 x,.,b 换成 a,若是 a 则换成 z。然后对数组 a27从小到大排序,并输出排序后的字符串。要求:1)利用 VC+编译系统进行调试、运行2)先输出原字符串(即未做任何改变的字符串),最后输出排序后的字符串3)将源程序以“编程题 2.c”为文件名保存在网络盘(K:盘)的考生文件夹上,用其它文件名保存或保存在其他地方均不能得分