C语言模拟试卷
C语言程序设计模拟试题1(附答案)
《C语言程序设计》模拟试卷一一、单项选择题(每题2分,共30分)1、下列有关C语言的叙述中错误的是(D)。
A) C语句必须以分号结束B) 任何一个C程序中有且只有一个主函数C) 复合语句在语法上可被看作一条语句D) C程序中对数据的任何操作都可由运算符实现2、以下不能定义为用户标识符的是(C)。
A) MAIN B) _HJ C) 2ong D) LINE13、下列符号中用来表示C语言中的回车换行的是(B)。
A) \r B) \n C) \b D) \t4、如有如下定义:int a=1,则语句printf(“%d,%d”, a, ++a);的运行结果为(B)。
A) 1, 1 B) 1, 2 C) 2, 2 D) 2, 15、已知ch为字符型变量,下面表达式中正确的是(A)。
A) ch=’\xff ’B) ch=’\ff ’C) ch=’ ff ’D) ch=” ff ”6、以下能正确定义一维数组的是(C)。
A) int a[5]={0,1,2,3,4,5}; B) int a[5]=”012345”;C) char a[ ]=”012345”; D) char a[5]={0,1,2,3,4,5};7、以下语句中能正确定义变量并赋初值的是(A)。
A) char c=65; B) float f=f+1.1;C) double x=12.3e3.6; D) int m=n=2.0;8、在执行下列程序时输入:1357924,则程序的运行结果为(D)。
main( ){ int x, y;scanf(“%2d%2d”,&x,&y);printf(“%2d”,x*y); }A) 13 B) 1357 C) 74 D) 7419、执行下列程序段后输出的结果是(C)。
x = 9;while (x > 7){ printf(“*”); x- -; }A) **** B) *** C) ** D) *10、设char str1[10] = “ABCDE”, str2[10] = “xyz”;则执行语句printf(“%d”, strlen(strcpy(str1, str2))); 后的输出结果是(D)A) 9 B) 8 C) 5 D) 311、若用数组名作为函数调用的实参,则传递给形参的是(A)A) 数组的首地址 B) 数组第一个元素的值C) 数组中全部元素的值 D) 数组元素的个数12、在C程序中,若未在函数定义时说明函数类型,则函数默认的类型为( A ) A)void B)double C)int D)char13、下面不能正确进行字符串赋值操作的语句是(A)A) char s[5]={"ABCD"}; B) char s[5]; s="ABCD";C) char *s;s="ABCDEF"; D) char *s="ABCD";14、设有说明int s[5]={1,3,5,7,9}; int *p=s; 则下列表达式中值为3的是(B )A)++p B)++(*p) C) *(++p) D) *(p+=2)15、下面程序的输出结果是(B)int m=13;int fun( int x, int y){ int m=3;return( x*y-m); }main( ){ int a=7,b=5;printf(“%d\n”, fun(a,b)/m); }A) 1 B) 2 C) 3 D) 10二、判断(每空1分,共10分)1、C语言有三种结构化程序设计方法,分别为顺序结构、选择结构和循环结构。
昆明理工大学C语言程序设计模拟试卷1,附答案
C语言模拟考试卷一、是非题(每小题1分,共5分)(1)若有说明:int a[][4] ={0,0}; 则二维数组a的第一维大小为1 BA)对B)错(2)判断char型变量cl是否为大写字母的正确表达式是(cl>= 'A')&&(cl<= 'Z')A A)对B)错(3)已知int a=1,b=-1; 则语句printf("%d\n", (a--, ++b)); 的输出结果是-1B A)对B)错(4)strcmp函数的功能是字符串的比较AA)对B)错(5)sizeof(float)是一个不合法的表达式BA)对B)错二、单项选择题(每小题3分,共75分)(1)下列关于C语言用户标识符的叙述中正确的是(A)。
A)用户标识符中可以出现下划线和中划线(减号)B)用户标识符中不可以出现中划线,但可以出现下划线C)用户标识符中可以出现下划线,但不可以放在用户标识符的开头D)用户标识符中可以出现下划线和数字,它们都可以放在用户标识符的开头(2)下列叙述中正确的是(B)。
A)C语言的函数可以嵌套调用B)C语言的子程序有过程和函数两种C)C语言的函数可以嵌套定义D)C语言编译时不检查语法(3)以下4个选项中,不能看做一条语句的是(D)。
A); B)a=5,b=2.5,c=3.6;C)if(a<5); D)if(b!=5)x=2;y=6;(4)以下程序段的描述,正确的是(C)。
x=-1;do{x=x*x;}while(!x);A)是死循环B)循环执行两次C)循环执行一次D)有语法错误(5)已知char ch=’C’;则以下表达式的值是(D)。
ch=(ch>=’A’ && ch<=’Z’)?(ch+32):ch;A)A B)a C)Z D)c(6)执行下面的程序段后,变量k中的值为(A)。
int k=3, s[2];s[0]=k; k=s[1]*10;A)不定值B)33 C)30 D)10(7)现有如下定义:int a, b, *p, *q;,则下列赋值语句错误的是(D)。
C语言模拟试卷及答案
《C语言程序设计》考试试卷(答案)一、填空题(每小空1分,共10分)1.C语言程序的三种基本结构是顺序结构、选择结构、循环结构。
2.一个C程序有且仅有一个main( )函数.3.C语言描述“x和y都大于或等于z"的表达式是x〉=z && y〉=z。
4.C语言可以用来实现循环的结构化语句是while、do while、for。
5.数组名表示数组在内存的首地址.6.int a=3,*p=&a;*p+2的值是5。
二、单项选择题(每小题2分,共70分)1._____是C语言合法的标识符。
(A)3_sy45 (B)su_m (C)@123 (D)3D642.一个程序的执行是从.(A)本程序的main函数开始,到main函数结束(B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束.(C)本程序的main函数开始,到本程序文件的最后一个函数结束.(D)本程序文件的第一个函数开始,到main函数结束。
3.以下叙述正确的是。
(A)在C程序中,main函数必须位于程序的最前面.(B)C程序每行中只能写一条语句.(C)C语言本是没有输入输出语句。
(D)在对一个C程序进行编译的过程中,可发现注释中的拼写错误.4.以下叙述不正确的是。
(A)逗号运算符的运算级最低。
(B)ABC和abc是两个不同的变量。
(C)若a和b类型相同,在执行a=b后,b的自身值不变。
(D)‘a’和“a”是完全等价的常量。
5.int x=3,y=2;则表达式x+=x*=y+8的值为。
(A)28 (B)30 (C)60(D)176.在c语言中,变量的隐含存储类别是。
(A)auto(B)static (C)extern (D)无存储类别7.执行下面两个语句后,输出的结果为_____。
char c1=98;printf(“%d %c”,c1,c1—32);(A)97 66 (B)98 b (C)b 66 (D)98 B8.执行下面语句后的结果为.y=10;x=y++;(A)x=10,y=10 (B)x=11,y=11 (C)x=10,y=11 (D)x=11,y=109.char w;int x;float y;double z;则表达式w*x+z—y值的数据类型是。
C语言模拟试卷2(带答案)
C语⾔模拟试卷2(带答案)单选题:1、执⾏下⾯的程序段后,变量k中的值为s[0]=k; k=s[1]*10;A. 不定值B. 33C. 30D. 10答案: A2、设有以下定义:#define N 3#define Y(n) ( (N+1)*n)则执⾏语句:z=2 * (N+Y(5+1));后,z的值为_______.2*(3+(4*5+1)A. 出错B. 42C. 48D. 54答案: C3、若已定义X和Y为double型,则表达式:x=1,y=x+3/2的值是____A. 1B. 2C. 2.0D. 2.5答案: c4、请选出以下语句的输出结果____printf("%d\n",strlen("\t\ 065\xff\n"))A. 5B. 4C. 8D. 输出项不合法,⽆正常输出答案: B5、为避免嵌套的条件分⽀语句if…else的⼆义性,C语⾔规定,C 程序中的else总是与____组成配对关系。
C. 缩排位置相同的ifD. 在其之前未配对的if答案: A6、若X和Y都是int型变量,X=100,Y=200,且有下⾯的程序⽚段: printf("%d",(X,Y));上⾯程序⽚段的输出结果是A. 200B. 100C. 100 200D. 输出格式符不够,输出不确定的值答案: A7、请读程序⽚段(字符串内没有空格字符):printf("%d\n", strlen("ATS\n012\1\\"));上⾯程序⽚段的输出结果是A. 11B. 9C. 10D. 8答案: B8、设有以下程序段int x=0,s=0;while(!x!=0) s+=++x;printf("%d",s);则______A. 运⾏程序段后输出0B. 运⾏程序段后输出1C. 程序段中的控制表达式是⾮法的D. 程序段执⾏⽆限次答案: B9、阅读下列程序:main( ){ int n[3],i,j,k;for(i=0;i〈 3;i++)n[i]=0;i=1: =3 =3for (j=0;j〈 2;j++)n[j]=n[i]+1;printf("%d\n",n[1]);}下述程序运⾏后输出结果是A. 2B. 1C. 0D. 3答案: D10、输⼊⼀个华⽒温度,要求输出摄⽒温度。
C语言程序设计模拟试卷(2)
C语⾔程序设计模拟试卷(2)模拟试卷⼀⼀、选择题(每题1分,共15分) 在每⼩题列出的四个选项中只有⼀个是符合题⽬要求的,请在正确答案前点选,错选或未选均不得分。
1. 以下选项中不合法的⽤户标识是:正确答案A. _123B. printfC. A$D. Dim2. 在C 语⾔中,char 型数据在内存中的存储形式是:正确答案A. 补码B. 反码C. 原码D. ASCII 码正确答案:D3. 设x,y,z 为int 型变量,且x=3,y=4,z=5 ,则下⾯表达式中值为0 的是:正确答案A. 'x'&&'y'B. !((xC. x||y+z&&y-zD. x<=y正确答案:B4. 若有定义:int a=2,b=4,c; 执⾏语句c=a/b+2.6 ;后,c 的值为:正确答案A. 2.6D. 2正确答案:D5. 设a 为整型变量,不能确定表达数学关系10正确答案A. 10B. a==11|| a==12|| a==13|| a==14C. a>10&&a<15D. !(a<=10)&&!(a>=15)正确答案:C6. 若i 、j 已定义为int 型,则以下程序段中语句printf( “ %d ” ,i*j); 的执⾏次数是:for (i=3;i>0;i-- )for (j=0;j<4;j++ )printf( “ %d ” ,i*j);正确答案A. 12B. 15C. 16D. 20正确答案:A7. 若有输⼊语句“ scanf( "%d%d%d",&x,&y,&z); ”,则不能使x值为5,y 值为6,z值为7的输⼊是:正确答案A. 5 ,6 ,7< 回车>B. 5 6 7< 回车>C. 5 6 < 回车> 7< 回车>D. 5< 回车> ,6< 回车> ,7< 回车>正确答案:A8.执⾏以下程序段后,x ,y 和z 的值分别是:int x=10,y=20,z=30;if(x>y) z=x; x=y; y=z;正确答案:B9. 以下程序段x = -1;do{ x=x*x;} while(!x); 正确的说法是:正确答案A. 死循环B. 循环⼀次C. 循环两次D. 有语法错正确答案:B10. 以下正确的函数声明形式是:正确答案A. double fun(int x ,int y)B. double fun(int x ;int y)C. double fun(int x ,int y) ;D. double fun(int x ,y) ;正确答案:C11.若有定义char ch[8] ,则以下表达式中不能代表数组元素ch[1] 的地址是:正确答案A. &ch[0]+1B. &ch[1]C. &ch[0]++D. ch+1正确答案:C12. 若有初始化语句“ int a[5]={1,2,3,4,5}; ”,值为4 的表达式是:正确答案:C13. 若已有以下函数定义:float fun(float a, int b){int c;c=(int)a%b;return c;}则主调函数中语句“ printf("%f",fun(fun(fun(34,7),4),3)); ”的输出结果是:正确答案A. 2.000000B. 因参数类型与形参类型不⼀致,函数调⽤产⽣错误C. 2D. 因变量c 的类型与fun 函数的返回值类型不符,故输出值为随机值正确答案:A14. 已知:int a[]={1,2,3,4,5,6,7,8,9,10,11,12},*p=a+2 ;则值为3 的表达式是:正确答案A. (*p)++B. *p++C. *++pD. ++*p正确答案:B15. 以下可作为函数fopen 中第⼀个参数的正确格式是:正确答案A. c:\user\file.txtB. "c:\user\file.txt"C. "c:\\user\\file.txt"⼆、填空题(共10题)1. 字符串存储时,末尾被系统⾃动加上字符。
C语言模拟试卷 (6)
5. 以下程序段不是死循环的是( ) (2分) A.int i=100; while(1) { i=i%100+1; if(i>100) break; } B.for(;;) ; C.int k=0; do{++k;} while(k D.int s=36; while(s); --s; 标准答案:C
.
12. 当把下面4个表达式用做if语句的控制表达式时,有一个选项与其他3 个选项含义不同,这个选项是() (2分) A.k%2 B.k%2==1 C.(k%2)!=0 D.!k%2==1 标准答案:D
.
13. 下列数据类型中不属于构造类型的是( ) (2分) A.数组型 B.结构型 C.共用型 D.枚举型 标准答案:D
.
29. 下面合法的语句是( ) (2分) A.int A=8,B; B=++A++; printf("%d,%d",A,B++); B.int A; printf("\\"%d\\"",scanf("%d",&A)); C.char A; scanf("%c",&A); char B=scanf("B=%c",&B); D.char C=getchar( ); putchar((int)C); 标准答案:D
} } (2分) 标准答案:1. 8921;
.
3. 阅读下述程序 #include <stdio.h> #define N 10 main() { int i,j,k,u; int a[N]; for (i=0;i<N;i++) scanf("%d",&a[i]); for (i=1;i<N;i++) for (j=0;j<i;j++) if (a[j]<a[i]) { u=a[i]; for (k=i-1;k>=j;k--) a[k+1]=a[k]; a[j]=u; } for (i=0;i<N;i++) { printf("%5d",a[i]); if ((i+1)%5==0) printf("\n"); } } 在执行该程序时,设输入 2 74 30 17 101 81 96 35 28 19 请写出输出结果 ________________________________________________________________________ (2分) 标准答案:1. 101 96 81 74 35 30 28 19 17 2;
C语言程序设计模拟试题1(附答案)
《C语言程序设计》模拟试卷一一、单项选择题(每题2分,共30分)1、下列有关C语言的叙述中错误的是(D)。
A) C语句必须以分号结束B) 任何一个C程序中有且只有一个主函数C) 复合语句在语法上可被看作一条语句D) C程序中对数据的任何操作都可由运算符实现2、以下不能定义为用户标识符的是(C)。
A) MAIN B) _HJ C)2ong D) LINE13、下列符号中用来表示C语言中的回车换行的是(B)。
A) \r B) \n C)\b D) \t4、如有如下定义:int a=1,则语句printf(“%d,%d”, a, ++a);的运行结果为(B)。
A) 1, 1 B) 1, 2 C) 2, 2 D)2, 15、已知ch为字符型变量,下面表达式中正确的是(A)。
A) ch=’\xff ’B) ch=’\ff ’C) ch=’ ff ’D) ch=” ff ”6、以下能正确定义一维数组的是(C)。
A) int a[5]={0,1,2,3,4,5}; B) int a[5]=”012345”;C) char a[ ]=”012345”;D) char a[5]={0,1,2,3,4,5};7、以下语句中能正确定义变量并赋初值的是(A)。
A) char c=65; B) float f=f+1.1;C) double x=12.3e3.6; D) int m=n=2.0;8、在执行下列程序时输入:1357924,则程序的运行结果为(D)。
main( ){ int x, y;scanf(“%2d%2d”,&x,&y);printf(“%2d”,x*y); }A) 13 B) 1357 C) 74 D) 7419、执行下列程序段后输出的结果是(C)。
x = 9;while (x > 7){ printf(“*”); x- -; }A) **** B) *** C) ** D) *10、设char str1[10] = “ABCDE”, str2[10] = “xyz”;则执行语句printf(“%d”, strlen(strcpy(str1, str2))); 后的输出结果是(D)A) 9 B) 8 C) 5 D) 311、若用数组名作为函数调用的实参,则传递给形参的是(A)A) 数组的首地址B) 数组第一个元素的值C) 数组中全部元素的值 D) 数组元素的个数12、在C程序中,若未在函数定义时说明函数类型,则函数默认的类型为( A ) A)void B)double C)int D)char13、下面不能正确进行字符串赋值操作的语句是(A)A) char s[5]={"ABCD"};B) char s[5]; s="ABCD";C) char *s;s="ABCDEF"; D) char *s="ABCD";14、设有说明int s[5]={1,3,5,7,9}; int *p=s; 则下列表达式中值为3的是(B )A)++p B)++(*p) C) *(++p) D) *(p+=2)15、下面程序的输出结果是(B)int m=13;int fun( int x, int y){ int m=3;return( x*y-m); }main( ){ int a=7,b=5;printf(“%d\n”, fun(a,b)/m); }A) 1 B) 2 C) 3 D) 10二、判断(每空1分,共10分)1、C语言有三种结构化程序设计方法,分别为顺序结构、选择结构和循环结构。
事业单位招录计算机专业知识(C语言)模拟试卷1(题后含答案及解析)
事业单位招录计算机专业知识(C语言)模拟试卷1(题后含答案及解析)题型有:1. 单项选择题 4. 简答题单项选择题1.C语言属于( )语言。
A.汇编语言B.结构化C.面向对象D.SQL正确答案:B解析:C语言属于结构化语言。
知识模块:C语言2.下列说法错误的是( )。
A.C程序运行步骤是编辑、编译、连接、运行B.C语言的变量名必须用小写,常量用大写C.C语言的三种基本结构是顺序、选择、循环D.C程序一定由函数构成的正确答案:B解析:C语言程序运行步骤是编辑(把程序代码输入,交给计算机)、编译(成目标程序文件.obi)、连接(成可执行程序文件.exe)和运行(可执行程序文件),故A正确。
顺序结构、选择结构和循环结构是C语言的三个基本结构,故C正确。
一个C源程序是由一个main函数和若干个其他函数组成的,故D正确。
对于C语言变量和常量的命名,只要满足由字母、数字、下画线组成,且首字母不为数字的命名规则即可,只不过按照编程惯例来说变量名常用小写,常量常用大写,故B不正确。
知识模块:C语言3.关于main函数说法正确的是( )。
A.main函数没有返回值B.main是C程序中的关键字C.main函数是C程序中的主函数,有且仅有一个D.main函数从函数中开始执行,在最后一个函数中结束正确答案:C解析:main函数有返回值且不是关键字,一个程序从主函数开始运行。
知识模块:C语言4.下列说法中正确的是( )。
A.由于C源程序是高级语言程序,因此一定要在TC软件中输入B.由于C源程序是由字符流组成的,因此可以作为文本文件在任何文本编辑的软件中输入C.由于C程序是高级语言程序,因此输入后即可执行D.由于C程序是高级语言程序,因此它是由命令组成的正确答案:B解析:TC只是一种C语言的编辑软件,C语言可以在其他的一些软件中输入,比如说win-TC.Visual C++等软件,故A错误。
C源程序是由字符流组成的,因此可以作为文本文件在任何文本编辑的软件中输入,故B正确。
C语言程序设计 模拟试卷
C语言程序设计课程模拟试卷一、单项选择题.把合适的选项编号填写在括号内.(每小题3分,共42分)1.在C语言中,每条复合语句的结束标记字符为( )。
A.] B.) C.> D.}2. 在C语言程序中,单行或行尾注释语句使用的标记符为()。
A。
*/ B. /* C. // D. **3。
C语言源程序文件的扩展名为().A。
cpp B. exe C。
obj D。
c4。
控制字符'\n’表示( )。
A. 回车B. 响铃 C。
换行 D。
换页5。
运算符优先级最高的是()。
A。
== B。
+ C. && D。
||6. x<=10的相反表达式为()。
A。
x〉=10 B. x>10C。
x!=10 D. x>07. 每次先进行循环条件的判断,然后再执行循环体的语句为( ).A. for和do B。
for和whileC. while和do D。
switch和break8。
假定对二维数组a[3][4]进行初始化的数据为{{3,5,6},{2,8},{7}},则a[1][1]被初始化为( )。
A。
6 B。
2 C. 8 D. 79。
对于一个二维字符数组a[M][N],存储每个字符串的长度至多为()。
A. MB. NC. M-1D. N-110. 假定p所指对象的值为25,p+1所指对象的值为42,则表达式*p++的值为( )。
A. 25B. 42C. 26 D。
4311。
已知“int a[6][5];”,则元素a[2][4]的地址比该数组的首地址大()。
A. 14个字节 B。
56个字节 C。
28个字节 D. 96个字节12. 在C语言中,用户定义的标识符分为4种作用域,下列选项中不属于这4种作用域的是( )。
A. 全局 B。
语句 C. 文件 D。
局部13. 在一个链表中,每个结点必然存在着一个指向自身结点类型的指针域,用来保存下一个结点的()。
A. 地址B. 值C. 名称D. 类型14. 在C语言中,为只写操作打开一个文本文件的方式为()。
《C语言程序设计》模拟试卷3
《C 语言程序设计》模拟试卷3考试班级:一、判断题(2’×10=20’)1、C 语言源程序文件的扩展名均为.c 。
( )2、所谓常量,就是在程序运行过程中其值可以改变的量。
( )3、一个C 语言程序总是从main 函数开始执行。
( )4、若int i=10,j=2;则执行i*=j+8;后i 的值为28。
( )5、在C 语言中do-while 至少执行1次。
( )6、算术运算符中‘%’的优先级高于‘*’。
( )7、int a[10];该语句表明数组a 中的第十个元素为a[10]。
( ) 8、函数putchar()的作用是:输入一个字符。
( )9、C 语言程序区分大小写。
( )10、在函数调用中将数组名字作为实参时,实现的是单向的值传递。
() 二、单项选择题(2’×15=30’)1、以下定义字符常量PI 语句正确的为( )。
A 、define PI 3.14B 、define PI= 3.14C 、#define PI=3.14D 、#define PI 3.142、在C 语言中,要求运算量必须是整型的运算符是( )。
A 、!B 、++C 、!=D 、%3、下列四个选项中,均是不合法的用户标识符是( )。
A 、A P_0 doB 、float lao _AC 、b-a if intD 、_123 temp INT4、C 语言的三种基本结构是( )。
A 、顺序结构、逻辑结构、选择结构B 、顺序结构、选择结构、循环结构C 、逻辑结构、层次结构、网状结构D 、层次结构、顺序结构、循环结构 系部:班级:学号:姓名:5、下列有关函数的叙述中,不正确的是()。
A、函数可以有返回值,也可以有参数B、函数可以没有返回值,也可以有参数C、函数可以没有返回值,也可以没有参数D、函数必须有返回值,也必须有参数6、设变量a是int型,f是float型,i是double型,则表达式10+′a′+i*f值的数据类型为()。
C语言模拟试卷(4)
终止整个循环
D)在循环语句中使用break语句是为了使流程跳出循环体,提前
结束循环
22. 以下错误的描述是( )。
A)使用while和do_while循环时,循环变量初始化的操作应在循环
语句之前完成
B)while循环是先判断表达式,后执行循环体语句
c)do_while和for循环均是先执行循环体语句,后判断表达式
B) 主函数可以在其它函数之后,函数内不可以嵌套定义函数
C) 主函数必须在其它函数之前,函数内不可以嵌套定义函数
D) 主函数必须在其它函数之后,函数内可以嵌套定义函数
26. 一个c语言程序的基本组成单位是 ( )
A)主程序 B)子程序 C) 函数 D)过程
27. 一个c语言程序总是从 ( )开始执行。
3.下面程序的运行结果为 # include <stdio.h> void main( ) { int j,i,k=0; for (j=11;j<=30;j++) { if(k%10= =0) printf (“\n”); for (i=2;i<j;i++) if (!(j%i) ) break; if (i>= j-1) { printf (“%d\t”,j ); k++;} } }
二、写结果题: 1.下面程序的运行结果是:
#include <stdio.h> main( ) { int i=0,j=0;
while (i<10) i++; while (j++<10); printf (“i=%d,j=%d\n”,i,j);
} 结果:
2.阅读下面的程序并回答问题。 # include <stdio.h> main( )
C语言机考模拟卷
C语言机考模拟卷_1(8103)不但要会做这些题;更重要的是掌握相关知识点 !! 试卷总分:100分共有题型:6种方案:课堂24学时一、判断共10题(共计10分)第1题(1.0分)若有定义和语句:int a;char c;float f;scanf("%d,%c,%f",&a,&c,&f);若通过键盘输入:10,A,12.5,则a=10,c='A',f=12.5.第2题(1.0分)若有int ⅰ=10, j=0;则执行完语句if (j=0)ⅰ+ +; else ⅰ- -; ⅰ的值为11。
第3题(1.0分)一个include 命令可以指定多个被包含的文件。
第4题(1.0分)函数strlen("ASDFG\n")的值是7。
第5题(1.0分)设有数组定义: char array [ ]="hello"; 则数组 array所占的空间为5.第6题(1.0分)C语言的switch语句中case后可为常量或表达式或有确定值的变量及表达式.第7题(1.0分)十进制数15的二进制数是1111.第8题(1.0分)char *p="girl";的含义是定义字符型指针变量p,p的值是字符串"girl"。
第9题(1.0分)假设有int a[10], *p;则p=&a[0]与p=a等价第10题(1.0分)进行宏定义时,宏名必须使用大写字母表示。
二、单项选择共30题(共计30分)第1题(1.0分)判断两个字符串是否相等,正确的表达方式是A:while(s1= =s2)B:while(s1=s2)C:while(strcmp(s1,s2)= =0)D:while(strcmp(s1,s2)=0)第2题(1.0分)下列程序的输出结果是()。
main(){int a=011;printf("%d\n",++a);}A:12B:11C:10D:9第3题(1.0分)已知year为整型变量,不能使表达式(year%4==0&&year%100!=0)||year%400==0的值为“真”的数据是()。
国家二级(C语言)笔试模拟试卷1(题后含答案及解析)
国家二级(C语言)笔试模拟试卷1(题后含答案及解析)题型有:1. 选择题 2. 填空题选择题(1-10、21-40每题2分,11-20每题1分,共70分)下列各题A、B、C、D四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上。
1.算法的空间复杂度是指( )。
A.算法程序的长度B.算法程序中的指令条数C.算法程序所占的存储空间D.执行算法所需要的存储空间正确答案:D解析:算法的复杂度主要包括算法的时间复杂度和算法的空间复杂度。
所谓算法的时间复杂度是指执行算法所需要的计算工作量;算法的空间复杂度一般是指执行这个算法所需要的内存空间。
2.用链表表示线性表的优点是( )。
A.便于随机存取B.花费的存储空间较顺序存储少C.便于插入和删除操作D.数据元素的物理顺序与逻辑顺序相同正确答案:C解析:链式存储结构的结点空间可以动态申请和释放,其数据元素的逻辑次序靠结点的指针来指示,在进行插入和删除操作时不需要移动数据元素,故链式存储结构下的线性表便于插入和删除操作。
3.数据结构中,与所使用的计算机无关的是数据的( )。
A.存储结构B.物理结构C.逻辑结构D.物理和存储结构正确答案:C解析:数据结构一般包括三个方面的内容:数据的逻辑结构、存储结构及数据上的运算集合。
数据的逻辑结构只抽象的反映数据元素之间的逻辑关系,而不管它在计算机中的存储表示形式。
4.结构化程序设计主要强调的是( )。
A.程序的规模B.程序的效率C.程序设计语言的先进性D.程序的易读性正确答案:D解析:结构化程序设计方法的主要原则可以概括为自顶向下、逐步求精、模块化及限制使用goto语句,总的来说可使程序结构良好、易读、易理解、易维护。
5.软件设计包括软件的结构、数据、接口和过程设计,其中软件的过程设计是指( )。
A.模块间的关系B.系统结构部件转换成软件的过程描述C.软件层次结构D.软件开发过程正确答案:B解析:软件设计包括软件结构设计、数据设计、接口设计和过程设计,其中结构设计是定义软件系统各主要部件之间的关系;数据设计是将分析时创建的模型转化为数据结构的定义;接口设计是描述软件内部、软件和操作系统之间及软件与人之间如何通信;过程设计则是把系统结构部件转换成软件的过程性描述。
盐城工学院C语言程序设计模拟卷
目录盐城工学院C语言程序设计模拟试卷 2.pdf ·························· 1盐城工学院C语言程序设计模拟试卷 3.pdf ·························· 2盐城工学院C语言程序设计模拟试卷 4.pdf ·························· 3盐城工学院C语言程序设计模拟试卷 5.pdf ·························· 4盐城工学院C语言程序设计模拟试卷 6.pdf ·························· 5盐城工学院C语言程序设计模拟试卷 7.pdf ·························· 6盐城工学院C语言程序设计模拟试卷 8.pdf ·························· 7盐城工学院C语言程序设计模拟试卷 9.pdf ·························· 8盐城工学院C语言程序设计模拟试卷 10.pdf ·························· 9盐城工学院C语言程序设计模拟试卷 11.pdf ························· 10盐城工学院C语言程序设计模拟试卷 12.pdf ························· 11江苏省五年一贯制高职“专转本”考试 C 语言程序设计模拟试卷(一)一、选择题1.C 语言中最简单的数据类型包括( )。
C语言模拟试卷及其答案
2011―2012 学年第一学期《C 语言程序设计》模拟试卷(A)一、单项选择题(每题1分,共30分)1.以下选项中叙述正确的是________。
A )C 语言程序总是从第一个定义的函数开执行B )在C 语言程序中,被调用的函数必须在main()函数中声明 C )C 语言程序总是从main()函数开始执行D )C 语言程序中的main()函数必须放在程序的开始部分2.C 语言程序的三种基本结构是顺序结构、选择结构和________结构。
A )循环 B )递归 C )转移 D )嵌套 3以下选项中不属于C 语言的基本数据类型的是________。
A )int B )double C )char D )bool 4.以下选项中正确的C 语言标示符是________。
A)2b B )x_1 C )a@b D)3#h5.设C 语言中,一个int 型数据在内存中占2个字节,则unsigned int 型数据的取值范围为________。
A )0~255B )0~32767C )0~65535D )0~2147483647 6.以下选项中,和语句k=n++;等价的是________。
A )k=n,n=n+1; B )n=n+1,k=n; C )k=++n; D )k=n+1;7.已知:int i=3,j=2;,则执行语句j*=i+2;printf("%d",j);后,输出结果是________。
A )8 B )10 C )12 D )148.已知:int a=2,b=3,c;,执行语句c=(a=2,b=2);后,c 的值是________。
A )2 B )3 C )4 D )5 9.已知:int x,y;float z;,若要给变量x,y,z 输入数据,以下正确的输入语句是________。
A )scanf("%d,%d,%d",x,y,z); B )scanf("%d,%d,%f",&x;&y;&z); C )scanf("%d,%d,%f",&x,&y,&z ); D )scanf("%2d,%2d,%3.2d",x;y;z );10.华氏温度f 和摄氏温度c 的关系是)32(95-=f c 。
C语言程序设计模拟试卷
《C 语言程序设计》试卷语言程序设计》试卷一、选择题(60分,每题2分)分)(1)下列叙述中错误的是()。
)下列叙述中错误的是()。
A )计算机不能直接执行用C 语言编写的源程序写的源程序B )C 程序经C 编译程序编译后,生成后缀为.obj 的文件是一个二进制文件的文件是一个二进制文件C )后缀为.obj 的文件,经连接程序生成后缀为.exe 的文件是一个二进制文件的文件是一个二进制文件D )后缀为.obj 和.exe 的二进制文件都可以直接运行可以直接运行(2)按照C 语言规定的用户标识符命名规则,不能出现在标识符中的是()。
则,不能出现在标识符中的是()。
A )大写字母)大写字母B )连接符)连接符C )数字字符字字符D )下划线)下划线(3)以下叙述中错误的是()。
)以下叙述中错误的是()。
A )C 语言是一种结构化程序设计语言语言是一种结构化程序设计语言B )结构化程序有顺序、分支、循环三种基本结构组成种基本结构组成C )使用三种基本结构构成的程序只能解决简单问题解决简单问题D )结构化程序设计提倡模块化的设计方法(4)对于一个正常运行的C 程序,以下叙述中正确的是()。
述中正确的是()。
A )程序的执行总是从main 函数开始,在main 函数结束函数结束B )程序的执行总是从程序的第一个函数开始,在main 函数结束函数结束C )程序的执行总是从main 函数开始,在程序的最后一个函数中结束在程序的最后一个函数中结束D )程序的执行总是从程序的第一个函数开始,在程序的最后一个函数中结束数开始,在程序的最后一个函数中结束 (5)若有代数式n x x e + ,(其中e 仅代表自然对数的底数,不是变量),则以下能够正确表示该代数式的C 语言表达式是语言表达式是( )( )( )。
A) sqrt(abs(n^x+e^x))B)sqrt(fabs(pow(n,x)+pow(x,e)))C)sqrt(fabs(pow(n,x)+exp(x)))D)sqrt(fabs(pow(x,n)+exp(x)))(6) 设有定义:int k=0; ,以下选项的四个表达式中与其他三个表达式的值不相同的是( )。
C语言程序设计---考试模拟试卷及解析
第十三章考试模拟试卷及解析13.1 模拟试卷1及解析一、单项向选择题(每小题1.5分,共30分)1. 关于C语言的叙述,不正确的是()。
A) C程序必须包含一个main()函数B) C程序可由一个或多个函数组成C) C程序的基本组成单位是函数D) 注释说明只能位于一条语句的后面分析:注释可以出现在语句的前面、后面或中间。
例如,#include<stdio.h>void main(void){ /*计算1+2+3+4+…100的值*/int i;long s=0;for( i=1; i<= /* 不要丢掉'='号!*/ 100; i++)s+=i;/* 注意以下输出语句中long int 数据的输出控制格式”%ld” */printf("s=%ld\n",s);}答案选D。
2.以下()是正确的字符常量。
A) "c" B) '\t' C) '12' D) "\\"分析:A)中的"c"为字符串常量,B)中的'\t'为转义字符,请大家注意常用转义字符的表示方法(参见教材),C)中'12'表示错误,因为单引号里面只能含有1个字符。
D)中表示的是一个字符串(双引号),尽管这个字符串中只含有一个转义字符'\\'。
答案选B。
3.设char ch='c';,则表达式ch+1的值为()。
A) 97 B) 98 C) 99 D) 100分析:字符变量存储的是所对应字符的ASCII值,26个字母之间的ASCII值按字母顺序是连续的,即字母'a'的ASCII值为十进制的97,字母'b'的ASCII值为十进制的98,依次类推。
大家应记住常用字符的ASCII值,如,'A'为65,'0'为48等。
C语言模拟试卷1(3)
C程序设计模拟试卷1一.单项选择题1.下列各选项中,(A)是有效的标识符。
A)ab B)3day C)day-3 D)#abc2.以下说法中正确的是( C )A)C语言程序总是从第一个的函数开始执行B)在C语言程序中,要调用的函数必须在main()函数中定义C)C语言程序总是从main()函数开始执行D)C语言程序中的main()函数必须放在程序的开始部分3. 在C语言中,合法的长整型常数是( A )A)-1247483748 B)5294967295 C)0.054838743 D)2.1869e104.C语言中,运算对象必须是整型数的运算符是( A )A)% B)\ C)%和\ D)*5.若要在if后的圆括号中表示b不等于0的条件,则能正确表示这一条件的表达式为( D )A)b<>0 B) !b C) b=0 D) b6.C语言规定if-else语句中的else总是与( C )组成配对的关系。
A)编排位置相同的ifB)在其之前未配对的第一个ifC)在其之前未配对的最近的ifD)同一行上的if7.C语言中形参的缺省存储类别是( A )。
A)自动(auto) B)静态(static) C)寄存器(register) D)外部(extern)8.以下函数调用语句中含有( B )个实参。
func((exp1,exp2),(exp3,exp4,exp5));A) 1 B) 2 C) 4 D) 59.以下程序的输出结果是( A )main(){ char c='z';printf("%c",c-25);A) a B) Z C) z-25 D) y10.设有如下定义( D )int x=10,y=3,z;则语句printf(“%d\n”,z=(x%y,x/y));的输出结果是A)1 B)0 C)4 D)311.当a=1,b=3,c=5,d=4时,执行下面一段程序后,x的值为( B )if(a<b)if(c<d) x=1;else if(a<c)if(b<d) x=2;else x=3;else x=6;else x=7;A)1 B)2 C)3 D)612.设j为int型变量,则下面for循环语句的执行结果是( B )for(j=10;j>3;j--){if(j%3) j--;--j;--j;printf("%d ",j);}A)6 3 B)7 4 C)6 2 D)7 313.设x和y均为int型变量,则执行以下的循环后,y值为( C )for(y=1,x=1;y<=50;y++){if(x>=10)break;if(x%2==1){x+=5;continue;}x-=3;}A)2 B)4 C)6 D)814.以下程序的输出结果是( C )main(){ int i, x[3][3]={1,2,3,4,5,6,7,8,9};for(i=0;i<3;i++) printf("%d,",x[i][2-i]);}A) 1,5,9 B) 1,4,7 C) 3,5,7 D)3,6,915.已知有声明语句char s1[10]= "abcde",s3[10];以下语句中能将s1中存储的字符串和s2中存储的字符串正确交换的是( D )A.s3=s1,s1=s2,s2=s3;B.s3[0]=s1[0],s1[0]=s2[0],s2[0]=3[0];C.strcpy(s3[0],s1[0]),strcpy(s1[0],s2[0]),strcpy(s2[0],s3[0]);D.strcpy(s3,s1),strcpy(s1,s2),strcpy(s2,s3);16.下列标识符中,合法的标识符是( C )A、-abc2B、2abcC、_abc2D、for17.下列运算符中优先级最高的是( A )A) >= B) != C) -= D) | |18. 以下说法中正确的是(A )A)C程序中注释部分可以出现在程序中任意合适的地方B)花括号“{”和“}”只能作为函数体的定界符C)构成C程序的基本单位是函数,所有函数名都可以由用户命名D)分号是C语句之间的分隔符,不是语句的一部分19. C语言中基本的数据类型包括( D )A)整型、实型、布尔型B)整型、实型、布尔型C)整型、字符型、布尔型D)整型、实型、布尔型、字符型20. 以下对共用体类型叙述正确的是( C )A) 可以对共用体类型变量直接赋值B) 一个共用体类型变量中可以同时存入其所有成员C) 一个共用体类型变量中不能同时存入其所有成员D) 共用体类型定义中不能同时出现结构体类型的成员二、判断题1、C语言中,变量名只能是小写字母表示,符号常量名可用大写表示(×)2、若在同一个源文件中全局变量与局部变量同名,则全局变量有效。
C语言模拟试卷 (5)
7. 以下叙述中正确的是( ) (2 分) A.构成 C 程序的基本单位是函数 B.可以在一个函数中定义另一个函数 C.main()函数必须放在其它函数之前 D.所有被调用的函数一定要在调用之前进行定义 .标准答案:A
8. 下面的符号常量定义中,正确的是 ( ) (2 分) A.#define PI 3.14; B.#include PI 3.14; C.#define PI=3.14 D.#define PI 3.14 .标准答案:D
3. 设有字符型变量 x 的值是'1'(对应二进制数是 00110001),要通过“x^y”运算,使得 x 的高 3 位不变,低 5 位取反,y 的 值用二进制数来表示应为________________________________. (2 分) .标准答案:1. 00011111;
4. 下面程序的输出是 ____________________________________ #include <stdio.h> #include <string.h> main() { char ss[10]= "12345"; strcat(ss, "6789"); printf("%s\n",ss); } (2 分) .标准答案:1. 123456789;
三、程序设计题 (共 2 题,共 20 分)
1. 编程将一个正整数分解质因数。例如:输入 90,打印出 90=2*3*3*5。 (10 分)
标准答案:main() {
int n,i; printf("\nplease input a number:\n"); scanf("%d",&n); printf("%d=",n); for(i=2;i<=n;i++) { while(n!=i) { if(n%i==0) { printf("%d*",i); n=n/i; } else break; } } printf("%d",n); }
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一.单项选择题1.一个C语言源程序由一个或多个( D )组成。
A.子程序B.过程C.函数D.主函数2. 下列定义变量的语句中错误的是( C )。
A.int _intB.double int_1C.char ForD.float US$ 3.以下语句有语法错误的是( B )。
A.printf("%d",0xabc); B.printf("%f",1.234e2.0);C.printf("%d",057); D.printf("%c",'\\');4.若有定义int m=2,n=2;执行语句(m=0)&&(n=3);后m和n的值分别为( D )。
A.2 2 B.0 3 C.2 3 D.0 25.若有定义int k=4,a=3,b=2,c=1;则表达式k<a?k:c<b?c:a的值为( D )。
A.4 B.3 C.2 D.16. 若有定义int x=1,y=1,z=1;则执行x+=y+=z+=10;后x,y,z的值是( D )。
A.x=1,y=1,z=1 B.x=11,y=11,z=11C.x=11,y=12,z=13 D.x=13,y=12,z=117.若有定义int a,b,c ;执行输入语句scanf("a=%d,b=%d,c=%d",&a,&b,&c);时,为使变量a的值为1,b为2,c为3,从键盘输入数据的正确形式应当是( D )。
A.123〈回车〉B.1,2,3〈回车〉C.a=1 b=2 c=3〈回车〉D.a=1,b=2,c=3〈回车〉8. 若有定义int a=1,b=1; 执行语句 printf("%d %d\n",--a, b++); 输出的结果是( D )。
A. 1 1B. 0 2C. 1 2D. 0 19. 以下4个程序段中有一个程序段执行结果与其它不一样,它是( C )。
A.if(a>b) c=a,a=b,b=c; B.if(a>b){c=a,a=b,b=c;}C.if(a>b) c=a;a=b;b=c; D.if(a>b){c=a;a=b;b=c;}10. 若变量已正确定义,要求程序段完成求10!的计算,不能完成此操作的程序段是( B )。
A.for(i=1,fac=1;i<=10;i++) fac*=i;B.for(i=1;i<=10;i++){ fac=1; fac*=i;}C.i=1;fac=1;while(i<=10){fac*=i; i++;}D.i=1;fac=1;do{fac*=i; i++; }while(i<=10);11. 执行for (int i=1;i<10&&i%2;i++) printf("*");输出*号的个数是( A )。
A.1 B.4 C.5 D.912. 以下正确的函数定义是( A )。
A.int fun(int x, int y) { return 3*x+2*y;}B.int fun(int x,y) { int z; z=3*x+2*y ;return z;}C.int fun(x,y) { int x,y,z; z=3*x+2*y; return z;}D.int fun(int x, int y) { int z=x+y; printf("%d\n",z));}13. 在C语言中,形参的缺省存储类别是( A )。
A.auto B.extern C.static D.register 14.若有定义int a[5]={1,3,5,7,9}; 则不能对a数组元素正确引用的是( C )。
A.a[3] B.*a+3 C.a[a[2]] D.a[a[4]-a[3]] 15.若有定义int a[3][4]; 则对数组元素a[2][3]不能正确引用的是( D )。
A.*(a[2]+3) B.*(*(a+2)+3) C.(*(a+2))[3] D.*(a+2)[3] 16. 以下定义语句中不能将字符串 "welcome"正确赋给字符数组的是( B )。
A.char s1[]="welcome";B. char s2[7]={'w','e','l','c','o','m','e'};C. char s3[8]={ 'w','e','l','c','o','m','e','\0'};D. char s4[8]={ "welcome"};17. 判断字符串str1和str2是否相等,应当使用( D )。
A. if(str1=str2)B. if(str1==str2)C. if(strcpy(str1,str2))D. if(!strcmp(str1,str2))18. 变量的指针,其含义是指该变量的( B )。
A. 值B. 地址C. 标识符D.一个标志19. 若有定义int x=1,y=2,*p=&x,*q=&y;则下列语句中错误的是( C )。
A.p=q; B.*p=*q; C.&x=&y; D.*p=y;20. 若有定义语句:int x=3,y=2;,则以下表达式x&y的值是( C )A. 0B. 1C. 2D. 3二.填空题1. 如果计算机中用16位表示一个整数,十进制整数-12,在机内用补码表示为:2. 数学表达式 )(3z y x z y x ++-的C 语言表达式形式为_(x-y*y*y+z)/(x*(y+z))_。
3. 能正确表达数学关系10<a<15的C 语言表达式是_(a>10) && (a<15)_。
4. 若有定义char ch= 'g';将ch 转换为相应的大写字母的表达式是_ch=‘A ’+(ch-‘a ’)_。
5. 若有定义int x,y,z;x=y=z=0;执行++x&&++y||++z;后x 、y 、z 的值分别 ___1、1、0___。
6. 若有定义int a=10,b=20;则执行printf("a+b=%d+%d=%d\n",a,b,a+b); 后的输出结果是__a+b=10+20=30___。
7. 若有函数定义int fun(){ return (5,6); }则调用fun 函数的返回值是___6_____。
8. 若有宏定义 #define f(x) x*x 则表达式f(3+3)的值为____15___。
9. 若有以下结构体说明和变量定义,建立的链表如下图所示,指针p 、q 、r 分别指向此链表中三个连续结点。
struct node{ int data; struct node *next; } *p,*q,*r;现要将q 所指结点从链表中删除,能完成删除操作的语句是_p->next=q->next;free(q);___。
10. 若有定义FILE *fp; 以“只读”方式打开文件C:\cprogram\mydata.txt 的正确语句是fp=fopen(“C:\\cprogram\\mydata.txt ”, “r ”)。
三.阅读程序题以下每个程序都有 #include<stdio.h>被省略{ int x=15,y=27,z1,z2;z1=(x+y)/2;z2=x/2+y/2; printf("%d %d\n",z1,z2); x=x+y; y=x-y;x=x-y;printf("%d %d\n",x,y);}2. main(){ int a=1,b=2,c=3,x=10;if(a>b)if(b>c)x+=1;elsex+=2;elseif(b<c)x+=3;elsex+=4;printf("%d\n",x);}3. main(){ int year=2012,month=6,day=30;int totalday=0,leap;leap=(year%4==0&&year%100!=0||year%400==0);switch(month-1){ case 5:totalday+=31;case 4:totalday+=30;case 3:totalday+=31; case 2:if(leap==1) totalday+=29;elsetotalday+=28;case 1:totalday+=31;case 0:totalday+=31;}printf("%d\n",totalday);}{ int f0=1,f1=1,f2;int i=3;printf("%d %d ",f0,f1);do{ f2=f0+f1;printf("%d ",f2);f0=f1;f1=f2;i++;}while(i<=6);}5. int f(int n){ static int p=1;p*=n;return p;}main(){ int i;for(i=1;i<=5;i++)printf("%d ",f(i));printf("\n");}6. int f(int a){ if(a==1)return 0;elsereturn 10+f(a-1);}main(){ int a=3;printf("%d\n",f(a));}7. void f(int a,int *b){ int t;t=a,a=*b;*b=t;}main(){ int x=1,y=2;f(x,&y);printf("%d %d\n",x,y);}8.main(){ int a[4][4];int i,j,sum=0;for(i=0;i<4;i++) for(j=0;j<4;j++) a[i][j]=4*i+j+1;for(i=0;i<4;i++)for(j=0;j<4;j++)if(i==j)sum+=a[i][j];printf("%d\n",sum);}9.void move(int *p,int n){ int i,j,t;t=*p;for(i=0;i<n-1;i++)*(p+i)=*(p+i+1);*(p+i)=t;}main(){ int a[10]={1,2,3,4,5,6,7,8,9,10},i;move(a,10);for(i=0;i<10;i++)printf("%d ",a[i]);printf("\n");}10. #include<string.h>struct STU{ int no;char name[10];int score;};main( ){ struct STU s[6]={{1,"Yang",90}, {2,"Li",80},{3,"Zhang",60}, {4,"Wang",89}, {5,"Yang",67}, {6,"Yang",100}}; int i,n=0;for(i=0;i<6;i++)if(strcmp(s[i].name,"Yang")==0)n++;printf("%d\n",n);四.填空完成程序以下每个程序都有 #include<stdio.h>被省略1. 用公式e X=1+x+x2/2!+……+x n/n!求e X的近似值,直到最后一项的绝对值小于10-6为止。