省五年一贯制专转本《C 语言程序设计》模拟试卷一(晓庄)一、填空題(每空 1 分,共 20 分)1.C 程序是由 构成的,一个 C 源程序至少且仅包含一个 2.C 语言规定标识符只能由 、 和下划线 3 种字符组成, 且第一个字符必须为 或下划线3. 设有说明语句: char a='\72'; 则变量 a 包含 个字符4. 条件“20< x<30”的 C 语言表达式是 5. 若已知 a=10,b=20, 则!a='A ' && ch<='Z')? (ch+32):ch 】的值为 12.C 中定义符号常量 PI 为 3.14159 的宏命令是 Word 资料 ...13.函数形参和调用的实参是普通变量时,参数按 方式进行传递。
14.C 中逻辑运算符的优先次序是: 15.定义一个共用体变量,共三个成员分别是字符型、整形和单精度浮点型,则该共用体变量所占存长度为 个字节15. 设有变量定义: int a=10,c=9;则表达式 (--a!=c++)? — a:++c 的值是 二、单项选择题(每题2 分,共 40 分)1.下列 C 语言标识符中,合法的是()A. ifB. returnC. 23aD. a232.欲从键盘给整型变量 a 赋值 3,b 赋值 2,则对应语句 scanf("%d,%d",&a,&b); 的输入格式是()A.3 2B. 2,3C.2 3D. 3,23. C 语言源程序文件经过 C 编译程序编译连接之后生成的文件后缀名是()A. .exe B. .obj C. .bat D. .c4.结构化程序设计的三种基本结构是( )A. 顺序结构、复杂结构、循环结构B. 顺序结构、复杂结构、分支结构C. 顺序结构、分支结构、选择结构D. 顺序结构、选择结构、循环结构5.以下表达式中,值为0 的是()A. 4%5B. 4/5.0C. 4/5D. 4<5Word 资料 ...6.设下列表达式中所涉及的变量均已正确定义,则不符合 C 语言语法的是( )A. 4&&3B. a++C. a=b=5D. int(3.14159)7.设 int a,x=2;执行语句 a=x>0?3*x : (x=10);后,变量 x 的值是()A.1B. 2C.6D.108.在 C 语言程序中,在函数部定义的变量称为()A. 全局变量B. 外部变量C. 全程变量D. 部变量9.设有以下程序段:int x=2,y=2,z=0,a;a=++x||++y&&z++;printf( ″%d,%d,%d\n″,x,y,z);执行后输出的结果是( )A.2,2,0 B.3,3,1 C. 3, 2, 0 D. 3, 2, 110.若变量 c 为 char 类型,则能正确判断出 c 为小写字母的表达式是( )A. (c>= 'a')||(c<= 'z') B. 'a'<=c<= 'z'C.(c>= 'a')&&(c<= 'z') D. ('a'<=c)and ('z'>=c)11. 在 C 语言中,字符串″ ″″的长度是( )A.5 B.7 C.9 D.1212. 逗号表达式 a=2*6,a*3,a+5 的值是( )A.12 B.17 C.36 D.4113. 设 int a=11,b=2 ;,执行下述程序段后,变量 a 和 b 的值分别是( )do{a/=b++;Word 资料 ...}while(a>b);A. 1,3 B. 1,4 C.2,3 D.2,414. 下列程序的执行结果是 ( )。
main(){ int k=8; if (k<=0)if (k==0) printf("####"); else printf("&&&&"); else printf("****");}A) #### B) &&&& C) **** D) 有语法错误 ,无输出结果15.以下表达式中,不正确的字符常量是( )A. 'n’B."a"C. '2’D. '\101 ’16.若【 int x=12,*p=&x;】,则正确的赋值表达式是()A. p=xB. p=*xC. *p=xD. *p=*x16.若有以下定义 : float x; int a,b; 则正确的 switch 语句是A. switch(x){ case 1.0:printf("*\n");case 2.0:printf("**\n") ; }B. switch(x) { case 1,2:printf("*\n");case 3:printf("**\n"); }C. switch(a+b)Word 资料 ...{ case 1:printf("*\n");case 1+2:printf("**\n") ; }D. switch( a+b);{ case 1:printf("*\n");case 2:printf("**\n") ; }17.设有如下程序段:int i=5;for(;i<=10;) i++;执行完这段程序后, i 的值是( )A.5 B.6 C.10 D.1118.设有如下程序段:int i=15;while(i<15)i++;则以下描述中正确的是( )A. 循环体语句执行 15 次 B. 这是一个死循环C. 循环体语句一次也不执行 D. 循环体语句只执行一次19. 设 i,j,k 均为 int 型变量 ,则执行完下面的 for 循环后 ,k 的值为 ( )for(i=0,j=10;i<=j;i++,j--) k=i+j;A)12 B)10 C)11 D)920. 下列程序段的输出结果是( )。
int a=1,c=0 ;if(a2以下程序的功能是求 F(49)的值,请在下划线处填上正确容, 使程序能正确运行include #include #include main(){int i;double f[50];f[1]= ;f[2]= ;for(i=3;i<=49;i++)f[i]= ;printf("f[49]=%12.0lf",f[49]);}2.以下程序的功能是用递归法求 n!,请在下划线处填上正确的语句,使程序能Word 资料 ...正确运行include long f(int n){if(n==1)return();else return ();}main(){int n;printf("n=");scanf("%d",&n);printf("%d!=%ld",n,f(n));}四、写出以下程序运行结果(每题4 分,共 12 分)1. 以下程序的运行结果是:main(){ int i=2,x=5,j=7; fun(j,6);printf( “i=%d;j=%d;x=%d\n”,i,j,x);}Word 资料 ...fun(int i,int j){ int x=7;printf( “i=%d;j=%d;x=%d\n”,i,j,x);}2.以下程序输出的结果是:#include "stdio.h"void main(){int i,g,s,b,q;for(i=1234;i<1236;i++){g=i/1 %10;s=i/10 % 10;b=i/100 % 10;q=i/1000 % 10;printf("%d%d%d%d\n",g,s,b,q);}}3. main() {int x=15; while(x<20)Word 资料 ...{x++if(x/3!=0){x++;break;}else continue;}printf( ″%d\n″,x);}五、编程题(第 1 题 5 分,第 2 题 8 分,共 13 分)1. 将一百元大钞对换成 1 元、5 元、10 元的小钞,要求每。