2014年C语言期末考试试题(复习用)
C语言期末考试复习题及答案3

C语言期末考试复习题及答案一、选择题:下列各题A)、B)、C)、D)四个选项中只有一个是正确的,请将正确的选项涂写在答案纸上.答在试卷上不得分。
(1)C语言规定:在一个源程序中,main函数的位置.A)必须在最后B)必须在系统调用的库函数的后面。
C)必须在最开始.。
D)可以任意(2) C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符。
A)必须为字母或下划线.。
B)必须为下划线。
C)必须为字母D)可以是字母、数字和下划线中的任一种字符。
(3)下面四个选项中,均是正确的八进制数或十六进制数的选项是。
A)—10 0x8f —011 B) 010 -0x11 0xf1C) 0abc —017 0xc D) 0a12 —0x123 -0xa(4) C语言中int型数据在内存中占两个字节,则unsegned int取值范围是.A)0 ~ 65535 B)0 ~ 32767C)—32767 ~ 32768 D)—32768 ~ 327687(5) 若有定义:int a = 7; floa x = 2。
5 , y = 4.7 ;则表达式x + a % 3 * (int)(x + y)% 2/4 的值是.A)2。
750000 B)0.00000 C)3。
500000 D)2。
500000 (6)已知ch是字符型变量,下面不正确的赋值语句是。
A)ch = 5 + 9 ; B) ch= ' a + b ';C) ch = ' \ 0 ’;D)ch= ’7’ + ’6';(7) 设x ,y和z是int型变量,且x = 3, y = 4 , z = 5 则下面表达式中值为0的是。
A)!((x < y )&&!z || 1)B)' x ' &&’ y ’C)x || y+z && y — z D)x 〈= y(8)设有程序段int k = 10 ;while ( k = 0 ) k = k — 1 ;以下描述正确的是.A)循环体语句一次也不执行。
2013-2014第二学期C语言期末试卷B

2013-2014学年第二学期《C语言程序设计》期末试卷(B)1.起换行作用的转义字符是()。
A.’\t’B.’\b’C.’\n’D.’\r’2.在以下几组运算符中,优先级最高的运算符是()。
A.<=B.=C./D.&&3.设有定义“int i=1;”,以下选项的四个表达式中与其他三个表达式的值不相同的是()。
A.i++B.i+=1C.i+1D.++i4.C语言的三种基本结构是()。
A.顺序结构.逻辑结构.选择结构B.顺序结构.选择结构.循环结构C.逻辑结构.层次结构.网状结构D.层次结构.顺序结构.循环结构5.关于数组元素类型的说法,下列()是正确的。
A.必须是整数类型B.必须是整型或实型C.必须是相同数据类型D.可以是不同数据类型6.以下程序段的输出结果是()。
#include<stdio.h>void main(){int i,j,m=0;for(i=1;i<=5;i+=4)for(j=3;j<=19;j+=4)m++;printf("%d\n",m);}A.10B.15C.20D.257.设有如下定义: int x=10,y=3,z; 则语句printf("%d\n",z=(x%y,x/y)); 的输出结果是()。
A. 1B. 0C. 4D. 38.在C语言中运算对象必须是整型的是()。
A.%B./C.==D.<=9.若变量已说明为int类型,要给a、b、c输入数据,以下正确的输入语句为()。
A.read(a,b,c);B.scanf("%d%d%d",a,b,c);C.scanf("%D%D%D",&a,%b,%c);D.scanf("%d%d%d",&a,&b,&c);10.下面程序的结果是()。
main(){ int x=1;while(x<20){ x=x*x;x=x+1; }printf("%d",x); }A.1B.20C.25D.2611.运行如下程序,其结果为()。
C语言程序设计期末考试复习题及答案[]
![C语言程序设计期末考试复习题及答案[]](https://img.taocdn.com/s3/m/1af47aac6137ee06eef91860.png)
C语言考试期末考试复习题及答案一、选择题(1) 一个C语言程序总是从(C )开始执行A) 书写顺序的第一个函数B) 书写顺序的第一条执行语句C) 主函数main()D) 不确定(2) 设int x=3,y=4,z=5,则下列表达式中的值为0的是( D )A) ‘x’&&’y’B) x||y+z&&y-z C) x<=yD) !((x<y)&&!z||1)(3) 执行以下程序段后,i的值是 ( C )int i=10。
switch(i+1){ case 10: i++。
break。
case 11: ++i。
case 12: ++i。
break。
default : i=i+1。
}A) 11 B) 13 C) 12 D) 14(4) 语句while(!e)。
中的条件!e等价于 ( A )A) e==0 B)e!=1 C) e!=0D) 运行时出错(5) 用 int a[4]={1,2}。
对数组进行初始化后,数组元素a[3]的值是 ( B )A) 随机值B) 0 C) 1D) F(6) 在执行char str[10]=“china\0”; strlen(str)的结果是( A )A)5 B) 6 D) 7 D 9(7) 若有定义,char *p=”computer”。
则语句printf(“%c”,*(p+2))运行结果是 ( B )A) 随机值B) m C)o D) omputer(8) 在以下函数调用语句中fun1(x,10,(x,10),fun2(y,10,(y,10)))。
函数fun1参数的个数为 ( B )A) 8 B) 4C) 5 D) 编译出错(9) 在说明一个结构体变量时系统分配给它的存储空间是( D )A)该结构体中第一个成员变量所需存储空间 B) 该结构体中最后一个成员变量所需存储空间C)该结构体中占用最大存储空间的成员变量所需存储空间D) 该结构体中所有成员变量所需存储空间的总和1. 用C语言编写的代码程序( B )A)可立即执行 B)是一个源程序 C)经过编译即可执行 D)经过编译解释才能执行2. C语言中用于结构化程序设计的三种基本结构是( A )A)顺序结构、选择结构、循环结构 B)if、switch、break C)for、while、do-while D)if、for、continue3. 以下定义语句中正确的是( C )A)char a='A'b='B'。
2013~2014C语言期末试卷

北京航空航天大学2013-2014学年第二学期期末《C语言程序设计》考试卷班级______________学号_________姓名______________成绩_________2014年5月30日班号____________学号________________姓名________成绩______《C语言程序设计》期末考试卷注意事项:1、请将所有的答案和程序写在答题纸上,写在试卷纸上不得分!2、考试时间120分钟一、单项选择题(每题2分,共40分)1. 以下不合法的数值常量是A) 011 B) 1e1 C) 8.0E0.5 D) .5e02. 若用数组名作为函数调用的实参,传递给形参的是A)数组的首地址B)数组第一个元素的值C)数组中全部元素的值D)数组元素的个数3. 设有定义:intx=2;,以下表达式中,值不为6的是()。
A)x*=x+1 B)x++,2*x C)x*=(1+x) D)2*x,x+=24. 若有以下定义,则对a数组元素的正确引用是_____.int a[5],*p=a;A)*&a[5] B)a+2 C)*(p+5) D)*(a+2)5. 以下正确的描述是在C语言程序中A)函数的定义可以嵌套,但函数的调用不可以嵌套B)函数的定义不可以嵌套,但函数的调用可以嵌套C)函数的定义和函数的调用均不可以嵌套D)函数的定义和函数的调用均可以嵌套6. 以下正确的说法是如果在一个函数中的复合语句中定义了一个变量,则该变量A)只在该复合语句中有效B)在该函数中有效C)在本程序范围内均有效D)为非法变量7. 对函数形参的说明有错误的是____。
A) int a(float x[],int n) B) int a(float *x,int n)C) int a(float x[10],int n) D) int a(float x,int n)8. 有如下程序main(){ int a=2,b=-1,c=2;if(a<b)if(b<0) c=0;elsec++;printf("%d\n",c);}该程序的输出结果是___.A)0 B)1 C)2 D)39. 已知int x=10,y=20,z=30;以下语句执行后x,y,z的值是____。
C语言期末考试试题及详细答案

选择练习题1、C语言中最简单的数据类型包括(B )。
A、整型,实型,逻辑型B、整型,实型,字符型D、整型,实型,逻辑型,字符型C、整型,字符型,逻辑型2、C语言中,运算对象必须是整型数的运算符是(A )。
A、%B、/C、%和/D、*3、为表示关系x<y<z,应使用C语言表达式(A)。
A、(x<y)&&(y<z)B、(x<y)AND(y<z)C、(x<y<z)D、(x<y) &(y<z)4、C语言程序的基本单位是( C )。
A、程序行B、语句C、函数D、字符5、C语言的程序一行写不下时,可以(D )。
A、用逗号换行B、用分号换行C、用回车符换行D、在任意一空格处换行)是合法的用户标识符。
C6、下述标识符中,(标识符由字母,数字和下划线组成且第一个字符必须为字母或下划线ab* D、B、void C、_student A、A&B7、在C语言中,字符型数据在内存中以( B )形式存放。
A、补码B、ASCII码C、反码D、原码8、一个程序由若干文件组成,共用同一变量,则此变量的存储类别应该为(B )。
A、autoB、externC、staticD、Registerauto自动变量9、以下关于switch语句和break语句的描述中,只有(B)是正确的。
register寄存器变量extern 外部变量A、在switch语句中必须使用break语句static静态变量B、在switch语句中,可以根据需要使用或不使用break语句C、break语句只能用于switch语句中D、break语句是switch语句的一部分10、C语言规定:调用一个函数时,实参变量和形参变量之间的数据传递是(B )。
A、地址传递B、值传递C、由实参传给形参,并由形参传回给实参D、由用户指定传递方式11、下述C语言转义符中(D )是非法的。
A、'\b'B、'\037'C、'\0xf 'D、'\''12、为了要计算s=10!(10的阶乘),则以下对s的定义正确的是(D)。
2014全国计算机二级c语言试题及答案

2014全国计算机二级c语言试题及答案试卷一一、选择题(共40题,每题1.5分,共60分)1. 下面对C语言中的goto语句描述正确的是:A. 使用goto语句可以在程序中实现子程序调用。
B. goto语句只能用于跳转到程序的开头位置。
C. 使用goto语句可以实现程序的循环控制。
D. 使用goto语句会导致程序的可读性下降,不推荐使用。
2. 下面表示数组a中第i个元素的正确表达式是:A. a(0)B. a[i]C. a[i-1]D. a(i)3. 以下代码片段的输出结果是什么?```cint x = 5, y = 10;if (x >= 5 && y < 20)printf("True");elseprintf("False");```A. TrueB. FalseC. 编译错误D. 运行时错误4. 下面关于字符数组的说法不正确的是:A. 字符数组可以用来存储字符串。
B. 字符数组的最后一个元素必须是空字符'\0'。
C. 字符数组可以进行逐个字符的输入输出操作。
D. 字符数组不可以进行字符串的拼接操作。
5. 下面哪个不是C语言中的关键字?A. volatileB. constC. staticD. delete6. 在C语言中,当函数返回一个整型值时,可以使用下面哪个关键字来定义返回值的类型?A. intB. voidC. returnD. none7. 下面哪个运算符的优先级最高?A. &&B. *C. =D. ?8. 下面的循环语句会执行几次?```cfor (int i = 0; i < 10; i++){if (i < 5)continue;elsebreak;}```A. 0次B. 5次C. 10次D. 无限次9. 在C语言中,对数组进行遍历时,可以使用下面哪个循环语句?A. forB. if-elseC. whileD. switch10. 在C语言中,以下哪个函数用于清空输入缓冲区?A. scanf()B. gets()C. getchar()D. fflush()...试卷二二、编程题(共3题,共40分)1. 编写一个程序,实现以下功能:输入一个正整数n,输出1到n之间(包含n)所有的素数。
2013-2014-2C语言A卷包含答案版
青岛高新职业学校2004—2005学年度第二学期期末考试A卷2013—2014学年第2学期《计算机程序设计C(2-2)》期末考试试卷专业班级姓名学号开课系室计算机应用技术系考试日期2014年6月22日题号一二三总分得分阅卷人页脚内容0一、程序阅读题(每空2分,共20分)1.又是一年一度的毕业季,马上要离开校园踏上工作岗位的同学们在拍摄完照片之后,大家有了一个共同的想法——那就是在毕业前互换礼物。
到了约定的日子,同学们带来的礼物琳琅满目,都不知道该如何交换了。
于是,在经过讨论后一致决定,大家将n个礼物放在一起统一编号为1,2,……,n,并同时对该礼物的拥有者进行相同编号。
交换的规则是:1号同学与n号同学的礼物互换,2号同学与n-1号同学的礼物互换,以此类推。
请阅读下面程序并完成填空。
#includ e<stdio.h>#d efineN120+1intmain(){inta[N]={0},n,i,j,t;scanf("%d",&n);for(i=1;i<=n;i++){【1】;}for(i=1,【2】;【3】;i++,j--){t=a[i];a[i]=a[j];a[j]=t;页脚内容1}for(i=1;i<=n;i++){printf("%d",a[i]);}printf("\n");return0;}2.下面函数的功能是统计字符串substr在字符串str中出现的次数,请阅读下面程序段并完成填空。
intcount(charstr[],charsubstr[]){inti,j,k,num=0;for(i=0;str[i]!='\0';i++){【4】;for(j=0;substr[j]!='\0';k++,j++){if(【5】){break;页脚内容2}}if(substr[j]=='\0'){num++;}}【6】;}3.在Windows操作系统中的“复制-粘贴-重命名”功能,可以实现将文件从一个位置复制粘贴到另外一个位置。
《C语言程序设计》期末考试试卷(2014上)
2014年上学期《C语言程序设计》期末考试试卷班级:________ 学号:_____ 姓名:______ 记分______一、选择题(每题3分,共30分)1.以下正确的C语言常量是()A、0789B、2e2.4C、’abd’D、’\t’2.设有:int a=3, b= 4, c= 5,x , y; 执行!(x=a)&&(y=b)&&0表达式的值为()A、1B、0C、3D、43.设有语句 int a=3 ; 则执行了语句 a+ = a - = a * a后,变量a 的值是()。
A、3B、0C、9D、-124. 为表示关系x>=y>=z,应使用C语言表达式:( )A、(x>=y) && (y>=z)B、 (x>=y) AND (y>=z)C:、(x>=y>=z) D、(x>=y) & (y>=z)5.以下正确的标识符是()A、 3AB、A=2C、A*3D、A_36.若定义int m=7,n=2 则m%n的值为()A、1B、2C、2.5D、07.下列表达式中值为真的是()A、a=0B、b=3>4C、b=3+4==5D、(float)1/28.设a=4,b=6则整个逗号表达式a*2,a+b,b的值是()A、8B、10C、6D、49.下列符号可以作为变量名的是( )A、+aB、*pC、_DAYD、next10.转义字符“\n”表示()。
A、回车B、换行C、退格D、横向跳格二、填空题(每空3分,共计45分)1.C语言中的基本数据类型分为()、()和()。
2.C语言的标识符由()、()和()来组成。
3.C程序设计的三种基本结构是()、()和()。
4.C语言提供的三种逻辑运算符是()、()和()。
5.C语言中常用的循环语句有()和()两种类型。
6.设int i=10;则执行j=++i;后j的值为()。
C语言程序设计期末考试复习题及答案
C语言考试期末考试复习题及答案一、选择题(1) 一个C语言程序总是从(C )开始执行A) 书写顺序的第一个函数B) 书写顺序的第一条执行语句C) 主函数main()D) 不确定(2) 设int x=3,y=4,z=5,则下列表达式中的值为0的是 ( D )A) ‘x’&&’y’B) x||y+z&&y-z C) x<=yD) !((x<y)&&!z||1)(3) 执行以下程序段后,i的值是 ( C )int i=10。
switch(i+1){ case 10: i++。
break。
case 11: ++i。
case 12: ++i。
break。
default : i=i+1。
}A) 11 B) 13 C) 12 D) 14(4) 语句while(!e)。
中的条件!e等价于 ( A )A) e==0 B)e!=1 C) e!=0D) 运行时出错(5) 用 int a[4]={1,2}。
对数组进行初始化后,数组元素a[3]的值是 ( B )A) 随机值B) 0 C) 1 D) F(6) 在执行char str[10]=“china\0”; strlen(str)的结果是 ( A )A)5 B) 6 D) 7 D 9(7) 若有定义,char *p=”computer”。
则语句printf(“%c”,*(p+2))运行结果是( B )A) 随机值B) m C)o D) omputer(8) 在以下函数调用语句中fun1(x,10,(x,10),fun2(y,10,(y,10)))。
函数fun1参数的个数为 ( B )A) 8 B) 4C) 5 D) 编译出错(9) 在说明一个结构体变量时系统分配给它的存储空间是( D )A)该结构体中第一个成员变量所需存储空间 B) 该结构体中最后一个成员变量所需存储空间C)该结构体中占用最大存储空间的成员变量所需存储空间D) 该结构体中所有成员变量所需存储空间的总和1. 用C语言编写的代码程序( B )A)可立即执行 B)是一个源程序 C)经过编译即可执行 D)经过编译解释才能执行2. C语言中用于结构化程序设计的三种基本结构是( A )A)顺序结构、选择结构、循环结构 B)if、switch、break C)for、while、do-while D)if、for、continue3. 以下定义语句中正确的是( C )A)char a='A'b='B'。
C语言期末试题2(带答案)
C语言期末试题2(带答案)13-14-2 48课时C语言模拟练习总共42题共100分答卷编号:12311112222211333答题开始时间:2014-06-09 10:52:09答题结束时间:2014-06-09 10:52:13考生姓名:翟方正考试时间:00:00:04分钟总得分:0分评卷人:系统自动评卷评卷时间:2014-06-09 10:52:13一、单选题(共15题,共30分)1. 在C语言中,回车换行符是()(2分)A.'\n'B.'\t'C.'\v'D.'\b'标准答案:A考生答案:2. 以下选项中,不能作为合法常量的是()(2分)A.1.234e04B.1.234e0.4C.1.234e+4D.1.234e0标准答案:B考生答案:3. 若有语句int *point,A=4;和point=&A下面均代表地址的一组选项是()(2分)A.A,point,*&AB.&*A,&A,*pointC.*&point,*point,&AD.&A,&*point ,point标准答案:D考生答案:4. 设x,y和z都是int型变量,且x=3,y=4,z=5,则下面表达式中,值为0的表达式是()(2分)A.x&&yB.x<=yC.x︱︱++y&&y-zD.!(x<y&& !z︱︱1)<="" p="">标准答案:D考生答案:5. 以下叙述中正确的是()(2分)A.C语言可以用来编写系统软件,也可以用来编写应用软件B.函数体不必用一对大括号{}括起来C.C程序的每一行只能写一条语句D.对一个C程序进行编译的过程可以发现注释中的拼写错误标准答案:A考生答案:6. 执行下面程序段后,c3中的值是()int c1=1,c2=2,c3;c3=c1/c2; (2分)A.0B.1/2C.0.5D.1标准答案:A7. 以下程序的输出结果是( )main(){ int a=12,b=12;printf("%d %d\n",--a,++b);} (2分)A.10 10B.12 12C.11 10D.11 13标准答案:D考生答案:8. 以下定义语句中,错误的是( ) (2分)A.int a[]={1,2};B.char *a[3];C.char s[10]="test";D.int n=5,a[n];标准答案:D考生答案:9. 以下程序的输出结果是()main(){int k=11;printf("k=%d,k=%o,k=%x\n",k,k,k);} (2分)A.k=11,k=12,k=11B.k=11,k=13,k=13C.k=11,k=013,k=0xbD.k=11,k=13,k=b 标准答案:D考生答案:10. main( ){int p[7]={11,13,14,15,16,17,18}, i=0,k=0; while(i<7&&p[i]%3){k =k+ p[i]; i++;}printf("%d\n", k);}执行后输出结果是()(2分)A.58B.53C.38D.24标准答案:C考生答案:11. 以下程序段的输出结果是()int x=0,y=5,z=3;while(z-->0&&++x<5) y=y-1;printf("%d,%d,%d\n",x,y,z); (2分)A.3,2,0B.3,2,-1C.4,3,-1D.5,-2,-5考生答案:12. 若以下程序所生成的可执行文件名为file1.exe,则当在操作系统状态下输入下述命令行执行该程序时FILE1 CHINA BEIJING SHANGHAI程序的输出结果是()#includemain(int argc,char *argv[]){while (argc-->1){++argv;printf("%s ",*argv);}printf("\n");} (2分)A.CHINA BEIJING SHANGHAIB.FILE1 CHINA BEIJING SHANGHAIC.C B SD.F C B标准答案:A考生答案:13. 执行下述程序的输出结果是()#includeint power(int x,int y);main(){float a=2.6,b=3.4;int p;p=power((int)a,(int)b);printf("%d\n",p);}int power(int x,int y){int i,p=1;for (i=y;i>0;i--)p=p*x;return (p);} (2分)A.8B.9C.27D.81标准答案:A考生答案:14. 有以下程序main(){ int x[8]={8,7,6,5,0,0}, *s;s=x+3;printf("%d\n",s[2]);}A.随机值B.0C.5D.6标准答案:B考生答案:15. 执行下述程序的输出结果是()#includemain(){int aa[3][3]={{2},{4},{6}};int i,*p=&aa[0][0];for (i=0;i<2;i++){if (i==0)aa[i][i+1]=*p+1;else++p;printf("%d",*p);}printf("\n");} (2分)A.23B.26C.33D.36标准答案:A考生答案:二、判断题(共10题,共10分)1. C语言中,标识符的第一个字符可以是数字(1分) ( )标准答案:错误考生答案:2. "hello!"是合法的字符串常量表示形式(1分) ( )标准答案:正确考生答案:3. 若有定义int a[3][4];则a[1+1][0]是对数组a元素的正确引用形式(1分) ( )标准答案:正确考生答案:4. 在switch语句中使用continue语句与使用break语句作用相同(1分) ( )标准答案:错误考生答案:5. 用do-while语句构成循环时,只要while后的表达式为0时就结束循环(1分) ( )标准答案:正确考生答案:6. char a[]={0,1,2,3,4,5,6};不是正确的语句(1分) ( )标准答案:错误考生答案:7. 已经定义了指针变量p,且p指向变量a(即p=&a),则*p与a的含义相同。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C语言模拟试题一一、填空题1、C语言中基本的数据类型有:___整型_______、___实型_______ 、____字符型__ 。
2、C语言中普通整型变量的类型说明符为___int_______,在内存中占____2_____字节,有符号普通整型的数据范围是__________。
3、整数-35在机内的补码表示为_____ _____。
4、执行下列语句int a=8; a+=a-=a*a; 后,a的值是__-112________ 。
5、有如下语句:char A[ ]={“I am a student”}; 该字符串的长度是___14_______,A[3]=___‘m’_______ 。
6、符号”a”和’a’的区别是__________。
7、所谓“指针”就是__________ 。
“&”运算符的作用是__________。
“*”运算符的作用是__________ 。
8、有如下输入语句:scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);为使变量a的值为1,b的值为3,c的值为2,从键盘输入数据的正确形式应是__________。
二、选择题1、设整型变量a为5,使b不为2的表达式是()。
A. b=a/2B. b=6-(--a)C. b=a%2D. b=a>3?2:12、为了避免嵌套的条件分支语句if-else的二义性,C语言规定:C程序中的else总是与()组成配对关系。
A. 缩排位置相同的ifB. 在其之前未配对的ifC. 在其之前未配对的最近的ifD.同一行上的if3、以下程序的输出结果是( )。
int x=10,y=10;printf(“%d %d\n”,x--,--y);A. 10 10B. 9 9C. 9 10D. 10 94、设A为存放(短)整型的一维数组,如果A的首地址为P,那么A中第i 个元素的地址为()。
A.P+i*2B. P+(i-1)*2C. P+(i-1)D. P+i5、选出下列标识符中不是合法的标识符的是()。
A. hot_doB. cat1C. _pri6、以下程序的输出结果是()。
int a=5;float x=3.14;a*=x*(‘E’- ‘A’);printf(“%f\n”,(float)a);A. 62.000000B. 62.800000C. 63.000000D. 627、设有说明double (*p1)[N];其中标识符p1是()。
A. N个指向double型变量的指针。
B. 指向N个double型变量的函数指针。
C. 一个指向由N个double型元素组成的一维数组的指针。
D.具有N个指针元素的一维指针数组,每个元素都只能指向double型量。
8、在C程序中有如下语句:char *func(int x,int y); 它是()。
A. 对函数func的定义。
B. 对函数func的调用。
C.对函数func的原型说明。
D. 不合法的。
9、以下程序的输出结果是()。
char str[15]=”hello!”;printf(“%d\n”,strlen(str));A. 15B. 14C. 7D. 610、分析以下程序的输出结果是()。
main(){ int a=5,b=-1,c;c=adds(a,b);printf(“%d”,c);c=adds(a,b);printf(“%d\n”,c); }int adds(int x,int y){static int m=0,n=3;n*=++m;m=n%x+y++;return(m); }A. 2,3B. 2,2C. 3,211、下列描述中不正确的是()。
A. 字符型数组中可能存放字符串。
B. 可以对字符型数组进行整体输入、输出。
C. 可以对整型数组进行整体输入、输出。
D. 不能在赋值语句中通过赋值运算符“=”对字符型数组进行整体赋值。
12、以下程序的输出结果是()。
#define f(x) x*xmain(){int a=6,b=2,c;c=f(a)/f(b);printf(“%d\n”,c);}A. 9B. 6C. 36D. 1813、设有如下定义: int x=10,y=3,z;则语句printf("%d\n",z=(x%y,x/y)); 的输出结果是()。
A. 1B. 0C. 4D. 314、定义如下变量和数组:int i;int 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 X[0][2] X[1][1]B. 1 4 7C. 3 5 7D. 3 6 915、以下对二维数组a进行正确初始化的是()A. int a[2][3]={{1,2},{3,4},{5,6}};B. int a[ ][3]={1,2,3,4,5,6};C. int a[2][ ]={1,2,3,4,5,6};D. int a[2][ ]={{1,2},{3,4}};16、两次运行下面的程序,如果从键盘上分别输入6和3,则输出结果是()。
int x;scanf("%d",&x);if(x++>5) printf("%d",x);else printf("%d\n",x - -);A. 7和5B. 6和3C. 7和417、设有如下定义:char *aa[2]={"abcd","ABCD"}; 则以下说法中正确的是()。
A)aa数组成元素的值分别是"abcd"和ABCD"B)aa是指针变量,它指向含有两个数组元素的字符型一维数组C)aa数组的两个元素分别存放的是含有4个字符的一维字符数组的首地址D)aa数组的两个元素中各自存放了字符'a'和'A'的地址18、下列程序的输出结果是()。
char *p1="abcd", *p2="ABCD", str[50]="xyz";strcpy(str+2,strcat(p1+2,p2+1));printf("%s",str);A. xyabcABB. abcABzC. ABabczD. xycdBCD19、下列程序的输出结果是()。
int a[5]={2,4,6,8,10},*p,* *k;p=a; k=&p;printf("%d",*(p++));printf("%d\n",* *k);A. 4 4B. 2 2C. 2 4D. 4 620、不能把字符串:Hello!赋给数组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!";三、读程序题1、float f=3.1415927;printf(“%f,%5.4f,%3.3f”,f,f,f);则程序的输出结果是___ _______ 。
2、int x=6, y=7;printf(“%d,”,x++);printf(“%d\n”,++y);程序的输出结果是_6 8_________ 。
3、a=3;a+=(a<1)?a:1;printf(“%d”,a);结果是___4_______。
4、for (a=1,b=1;a<=100;a++){ if(b>=20) break;if(b%3==1){b+=3; continue;}b-=5; }程序的输出结果a的值为_____8_____ 。
5、int y=1, x, *p, a[ ]={2,4,6,8,10};p=&a[1];for(x=0;x<3;x++)y + = * (p + x);printf("%d\n",y);程序的输出结果y的值是_____19_____ 。
四、程序填空题1、从键盘上输入10个数,求其平均值。
main(){int i;float f,sum;for(i=1,sum=0.0;i<11;i++){_ _scanf(“%f”,&f)________ ;__sum=sum+f________ ; }printf(“average=%f\n”,sum/10); }2、以下程序是建立一个名为myfile的文件,并把从键盘输入的字符存入该文件,当键盘上输入结束时关闭该文件。
#includemain(){ FILE *fp;char c;fp=_fopen(“myfile”,w)_________ ;do{c=getchar();fputs(c,fp);}while(c!=EOF);_fclose(fp)_________ }3、以下程序的功能是:从键盘上输入若干个学生的成绩, 统计并输出最高成绩和最低成绩,当输入负数时结束输入.请填空.main(){ float x,amax,amin;scanf("%f",&x);amax=x; amin=x;while(x>=0.0){ if(x>amax) amax=x;if(x<=amin) amin=x;scanf("%f",&x); }printf("\namax=%f\namin=%f\n",amax,amin); }五、编程题1.三个整数a、b、c,由键盘输入,输出其中最大的一个数。
2.输出1900~2000年中所有的闰年。
每输出3个年号换一行。
(判断闰年的条件为下面二者之一:能被4整除,但不能被100整除。
或者能被400整除。
)3.请编一个函数int fun(int a),它的功能是:判断a是否是素数,若a是素数,返回1;若不是素数,返回0。
a的值由主函数从键盘读入。
4.有N个学生,每个学生的信息包括学号、性别、姓名、四门课的成绩,从键盘上输入N 个学生的信息,要求输出总平均成绩最高的学生信息,包括学号、性别、姓名和平均成绩。
参考答案一、填空题(1)整型、实型、字符型。