c语言试卷4

合集下载

C语言习题 (4)

C语言习题 (4)
表达式 表达式运算后的值
a+b>c && b==c
!(a>b) && !c || 1
!(a+b) + c –1 && b + c/2
4.写出数学式子 的C语言表达式 。
5.将条件“y能被4整除但不能被100整除,或y能被400整除”写成逻辑表达式 。
a=(--y=x++) ? –y : ++x ;
b=y++ ; c=x ;
printf(“%d,%d,%d”,a,b,c);
}
A)6,9,7 B)6,9,6 C)7,9,6 D )7,9,7
16.当a=1,b=3,c=5,d=4时,执行完下面一段程序后x的值是 。
5.C语言对嵌套if语句的规定是:else总是与 。
A)其之前最近的if配对 B)第一个if配对
C)缩进位置相同的if配对 D)其之前最近的且尚未配对的if配对
6.设:int a=1,b=2,c=3,d=4,m=2,n=2;执行(m=a>b) && (n=c>d)后n的值为 。
A)1 B)2 C)3 D)4
7.下面 是错误的if语句(设int x,a,b;)
A)if (a=b) x++; B)if (a=<b) x++;
C)if (a-b) x++; D)if ( x ) x++;
下程序片段 。
main ( )
二.填空题
1.C语言提供6种关系运算符,按优先级高低它们分别是 , , , , , 等。

C语言试卷4

C语言试卷4

C语言模拟考试学号:4 姓名:童蕊蕊得分:1 ..................................................................单项选择以下叙述正确的是()。

A.用do-while语句构成的循环,在while后的表达式为非零时结束循环.B.do-while语句构成的循环不能用其它语句构成的循环来代替.C.用do-while语句构成的循环,在while后的表达式为零时结束循环D.do-while语句构成的循环只能用break语句退出.【评分报告得分:1.0 之 1.0 】【参考答案】正确C【学生答案】C假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是()。

A.2B.6C.8D.7【评分报告得分:0.0 之 1.0 】【参考答案】错误C【学生答案】[未答此题]以下选项中合法的实型常数是()。

A.E-3B..2E0C.1.3ED.5E2.0【评分报告得分:0.0 之 1.0 】【参考答案】错误B【学生答案】[未答此题]下面错误的说明语句是( ).A.int *a[10];B.int (*a)[10];C.int a['a'];D.int a[ ][ ];【评分报告得分:0.0 之 1.0 】【参考答案】错误D【学生答案】[未答此题]打开文件时,方式"w"决定了对文件进行的操作是()。

A.追加写盘B.只写盘C.可读可写盘D.只读盘【评分报告得分:0.0 之 1.0 】【参考答案】错误B【学生答案】[未答此题]能将高级语言编写的源程序转换为目标程序的是()。

A.编译程序B.链接程序C.解释程序D.编辑程序【评分报告得分:0.0 之 1.0 】【参考答案】错误A【学生答案】[未答此题]下面程序段运行的结果是( ).x=-1;do{x=x*x;}while (!x);A.循环执行一次B.有语法错误C.死循环D.循环执行两次【评分报告得分:0.0 之 1.0 】【参考答案】错误A【学生答案】[未答此题]若有以下的定义:int t[3][2];能正确表示t数组元素地址的表达式是()。

《C语言程序设计》试卷4

《C语言程序设计》试卷4

《C语言程序设计》试卷四一、单项选择题(每小题1分,共35分)1、一个C程序的执行是从()。

A)本程序的main函数开始,到main函数结束B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C)本程序的main函数开始,到本程序文件的最后一个函数结束D)本程序文件的第一个函数开始,到本程序main函数结束2、下面四个选项中,合法的用户标识符是()A)P_#$ B)2ha C)goto D)_ab3、要把整数67523赋与整型变量I,则应说明I的类型是()A)int B)long C)short D)unsigned4、已知int I; float f; 正确的表达式是()A) (int f)%I B) int(f)%I C) int (f%I) D) (int)f%I5、判断char型变量c1是否为小写字母的正确表达式是()A)'a'<=c1<='z'B)(c1>=a) && (c1<=z)C)98<=c1&&123>=c1 D)c1>='a'&& c1<='z'6、在C语言中,字符型数据在内存中以何种形式存放?()A)原码 B)BCD码 C)ASCII码D)补码7、执行以下语句后b的值为()。

int a = 5 , b = 6 , w = 1 , x =2 , y = 3 , z = 4 ;( a = w > x ) && ( b = y > z ) ;A)6 B)0 C)1 D)48、以下能正确地定义整型变量a,b和c并为其赋初值5的语句是()。

A)int a=b=c=5; B)int a,b,c=5; C)int a=5,b=5,c=5; D)a=b=c=5;9、已知:char a; int b; float c; double d; 执行语句c=a+b+c+d;后,变量c的数据类型是()A) int B) char C) float D) double10、已知字母A的ASCII码为65,以下程序段的输出结果是()char c1=‟A‟,c2=‟Y‟;printf(″%d,%d″,c1,c2);A)65,90 B)A,Y C)65,89 D)输出格式不合法11、阅读以下程序,当输入数据的形式为:25,13,10<CR>,正确的输出结果为()。

C语言试题4

C语言试题4

14、下面描述正确的是( )。

A)字符串所包含的字符个数相同时,才能比较字符串B)字符个数多的字符串比字符个数少的字符串大C)字符串"stop "与"stop"相等D)字符串“That”小于字符串"The"15、在C语言中,引用数组元素时,其数组下标的数据类型允许是( )。

A、整型常量B、整型表达式C、整型常量或整型表达式D、任何类型的表达式16、函数调用结束后,形式参数( )。

A)继续占用相同大小的内存B)占用的内存减小 C)释放内存 D)不确定17、以下叙述错误的是()A)一个C程序总是从main函数开始执行的;B)C程序书写格式自由,一行内可以写几个语句,一个语句可以分写在多行上;C)每个语句和数据定义的最后必须有一个分号;D)C语言本身有输入输出语句。

18、条件运算符的结合方向是( )。

A)自右至左; B)自左至右; C)任意; D)前后顺序;19、下列正确定义一个文件指针pm的语句是()A)FILE pm; B)file *pm; C)FILE *pm; D)file pm;20、以下选项中属于C语言的数据类型是()A)复数型 B)逻辑型C)双精度型D)集合型二、填空题(10分)1、c语言中按函数的调用位置来分有函数语句、函数参数和。

2、请定义一个指向字符类型数据的指针变量p,3、如果被调用函数的实参列表包含多个实参,则各参数间用隔开。

4、设int a[10],*p=a;则对a[3]的引用可以是或5、定义一个整型数组a[10],则下标最大的数组元素为。

6、要使指针变量与变量之间建立联系,用运算符来建立指针变量与变量之间的联系。

7、若有以下定义和语句:int a[4]={0,1,2,3}, *p; p=&a[1]; 则++(*p)的值是8、运算符=的结合性是。

9、设有如下定义:int a[5]={0,2,4,6,8},*p1=&a[1],*p2=&a[4];则*p2-*p1的值为。

国家二级C语言(数组)机试模拟试卷4(题后含答案及解析)

国家二级C语言(数组)机试模拟试卷4(题后含答案及解析)

国家二级C语言(数组)机试模拟试卷4(题后含答案及解析)题型有:1. 选择题选择题1.若有定义:int x[10],*pt=x;,则对x数组元素的正确引用是( )。

A.pt+3B.*&x[10]C.*(pt+10)D.*(x+3)正确答案:D解析:没有A选项的引用形式。

*与&放在一起作用抵消,但x[10]下标10超出了数组下标范围,所以B选项错误。

最大只能引用到x[9],而*(pt+i)表示引用指针pt所指元素后的第i个元素,所以C选项错误,最大只能为*(pt+9)。

D 选项正确。

知识模块:数组2.有以下程序:#include<stdio.h>main( ){int i,s=0,t[]={1,2,3,4,5,6,7,8,9};for(i=0;i<9;i+=2)s+=*(t+i);printf(“%d\n”,s);}程序的运行结果是( )。

A.20B.25C.45D.36正确答案:B解析:统计1~9这9个数中的奇数和,此题考查指向数组的指针。

C语言规定数组名代表数组的首地址,也就是第一个元素的地址,因此*(t+i)代表数组的第i+1个元素。

程序的运行结果是1+3+5+7+9=25。

知识模块:数组3.有以下程序:#include<stdio.h>main( ){int s[12]={1,2,3,4,4,3,2,1,1,1,2,3},c[5]={0},i;for(i=0;i<12;i++)e[s[i]]++;for(i=1;i <5;i++)printf(“%d”,c[i]);printf(“\n”);}程序的运行结果是( )。

A.2 3 4 4B.4 3 3 2C.1 2 3 4D.1 1 2 3正确答案:B解析:在for(i=0;i<12;i++)c[s[i]]++中,数组元素s[i]的值作为数组c的下标,当退出循环时,数组c的4个元素的值分别为4、3、3、2,因此B选项正确。

知识模块:数组4.下列定义数组的语句中正确的是( )。

《C语言》试卷4

《C语言》试卷4

2017年下学期《C语言》期中试题(总分:100分时间:90分钟)一、单项选择题(每题4分,共80分)1、下列数据中,不属于字符型常量的是_________A. 'A'B. '\n'C. "B"D. '102'2、能将高级语言编写的源程序转换成目标程序的是_________A.编译程序B.编辑程序C. 链接程序D.解释程序3、若x和y为整型变量,对于scanf("a=%d,b=%d",&x,&y);语句,可使x和y的值分别为10和20的正确输入方法是_________。

A.10 20B.10, 20C.a=10 b=20D.a=10,b=204、下列标识符中,不合法的用户标识符为_________。

A.aBaB._11C.a_1D.a&b5、关于下面的程序,正确的说法是_________。

#include stdio.hvoid main(){ float a=b=2, result;result=a/b;printf("result=%f\n", result); }A. 程序可正常编译,结果为result=1.000000B. 共有1处语法错误C. 共有2处语法错误D. 共有3处语法错误6、若已定义char c='\010',则变量c所占的字节数为__________。

A.1B.2C.3D.47、下列整型常量,错误的是__________。

A.025B.285LC.-285uD.285lu8、以下程序运行后的输出结果是______。

#include <stdio.h>main(){ int m=12,n=34;printf("%d%d",m++,++n);printf("%d%d\n",n++,++m); }A.12353514B.12353513C.12343514D.123435139、以下程序运行后的输出结果是______。

C语言 程序设计基础试题四及答案

C语言 程序设计基础试题四及答案

《程序设计基础》考试试卷四班级姓名学号一、选择题(每题1分,共20分)题号一二三四五总得分评卷人审核人得分1.以下叙述中正确的是( )A. C程序中注释部分可以出现在程序中任意合适的地方B. 花括号"{"和"}"只能作为函数体的定界符C. 构成C程序的基本单位是函数,所有函数名都可以由用户命名D. 分号是C语句之间的分隔符,不是语句的一部分2.判断下面标识符中哪个是C语言中合法的用户定义标识符()A. 2a1bB. a%bdC. _123D. char3.设有以下定义int a=0; double b=1.25; char c=’A’; #define M 2则下面语句中错误的是( )A. a--;B. b--;C. c--;D. M--;4.有两条语句:static char x[]=”abcde”;static char y[]={‘a’,’b’,’c’,’d’,’e’};则下列说法中正确的是( )A. 数组x和数组y长度相同B.数组x长度大于数组y长度C. 数组x长度小于数组y长度D. 以上三种说法均错误;5.设整型变量a=13,则经运算a+= a/=a%=5后,a的值为()A. 17.333B. 17C. 0D. 26. 已知:int n,i=1,j=2;执行语句n=i<j?i++:++j;后,i和j的值是( ).A. 1,2B. 1,3C. 2,2D. 2,37.有函数定义如下:当自变量x<0时y=-1;当x=0时y=0;当x>0时y=1;以下程序片段能实现该函数功能的是( ):A. if(x>=0)B. y=-1;C. if(x>=0)D. y=0;if(x>0) y=1; if(x!=0) if(x>0) y=1; if(x>=0) else y=-1; if(x>0) y=1 ; else y=0; if(x>0) y=1;else y= 0; else y=0; else y= -1; else y=-1;8.当a=2,b=1,c=3,d=4,m和n值为1时,(m=a>b)||(n=c>d)的值是( )A. TRUEB. FALSEC. 1D.09.在C语言程序中,以下说法正确的是( )A. main函数内部可嵌套定义子函数B. main函数必须出现在所有函数之前C. main函数必须出现在所有函数之后D. main函数是程序执行的入口10.关于局部变量和全局变量说法正确的是():A. 在main函数中定义的变量都为全局变量B. 当全局变量与局部变量同名时,全局变量起作用C. 当全局变量与局部变量同名时,局部变量起作用D. 以上说法都不正确11.下列关于switch和break语句的讨论中,只有()是正确的。

C语言习题4

C语言习题4

第五章选择结构程序设计5.1 选择题【题5.1】逻辑运算符两侧运算对象的数据类型。

A)只能是0或1B)只能是0或非0正数C)只能是整型或字符型数据D)可以是任何类型的数据【题5.2】以下关于运算符优先顺序的描述中正确的是。

A)关系运算符<算术运算符<赋值运算符<逻辑与运算符B)逻辑与运算符<关系运算符<算术运算符<赋值运算符C)赋值运算符<逻辑与运算符<关系运算符<算术运算符D)算术运算符<关系运算符<赋值运算符<逻辑与运算符【题5.3】下列运算符中优先级最高的是。

A)< B)+ C)&& D)!=【题5.4】能正确表示“当x的取值在[1,10]和[200,210]范围内为真,否则为假”的表达式是。

A)(x>=1)&&(x<=10)&&(x>=200)&&(x<=210)B)(x>=1)||(x<=10)||(x>=200)||(x<=210)C)(x>=1)&&(x<=10)||(x>=200)&&(x<=210)D)(x>=1)||(x<=10)&&(x>=200)||(x<=210)【题5.5////////Xa b cA)(x<=a)&&(x>=b)&&(x<=c)B)(x<=a)||(b<=x<=c)C)(x<=a)||(x>=b)&&(x<=c)D)(x<=a)&&(b<=x<=c)【题5.6】判断char型变量ch是否为大写字母的正确表达式是。

A)‘A’<=ch<=‘Z’B)(ch>=‘A’)&(ch<=‘Z’)C)(ch>=‘A’)&&(ch<=‘Z’) D)(‘A’<=ch)AND(‘Z’>=ch)【题5.7】设x、y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0的是。

全国计算机等级考试二级-基础知识和C语言程序设计 模拟考试试卷及答案(四)

全国计算机等级考试二级-基础知识和C语言程序设计  模拟考试试卷及答案(四)

全国计算机等级考试二级-基础知识和C语言程序设计模拟考试试卷及答案(四)一、选择题(1)通常所说的主机主要包括A)CPU B)CPU和内存C)CPU、内存与外存 D)CPU、内存与硬盘(2)在微机系统中,最基本的输入输出模块BIOS存放在A)RAM中 B)ROM中 C)硬盘中 D)寄存器中(3)一个24*24点阵的汉字字形信息所占的字节数为A)2 B)24 C)32 D)72(4)bit的意思是A)字 B)字长 C)字节 D)二进制位(5)某学校的工资管理程序属于A)系统程序 B)应用程序C)工具软件 D)文字处理软件(6)与十六进制数BB等值的十进制数是A)187 B)188 C)185 D)186(7) 设一张软盘已染上病毒,能清除病毒的措施是A)删除该软盘上的所有文件 B)格式化该软盘C)删除该软盘上的所有可执行文件 C)删除该软盘上的所有批处理文件(8)一张3.5英寸双面高密度软盘片的容量为A)360KB B)720KB C)1.44MB D)1.2MB(9)与二进制小数0.1等值的十六进制小数为A)0.1 B)0.2 C)0.4 D)0.8(10)DOS系统的热启动与冷启动的不同之处为热启动时A)不检测键盘、处设接口与内存 B)不提示用户输入日期与时间C)不用装入文件 D)不能从软盘启动(11)为了将磁盘上的文件K1,K2,K3,依次连接在文件K4的后面,应使用命令A)COPY K1+K2+K3 K4 B)COPY K1+K2+K3+K4C)COPY K1+K2+K3+K4 K4 D)COPY K4+K1+K2+K3(12)下列文件名中可以作为批处理文件名的是A)AUTOEXC.C B)AUTOEXECC)ATX.BAT D)AUTO.TXT(13)要打印输出当前盘的根目录下所有文件与子目录清单,应使用命令A)DIR \ PRN B)TYPE \ PRNC)DIR PRN C)TYPE PRN(14)设可执行文件 ABC.EXE 所需要的本该由键盘输入的数据已经按格式存放在文件XYZ 中,并要求执行结果放在文件 XYZ 中输入数据的后面. 下列命令中正确的是A) ABC XYZ B) ABC XYZC) ABC <XYZ(15)设当前盘中某一目录路径为 \A\B\C,当前目录为\A.下列命令中肯定出错的是A)MD \A\C B) CD C) MD \A\B\A D) MD \A\B(16)设 A 盘的目录结构如下:根目录│┌─────┬┴──┬───┬───┬────┐│ │ │ │ │ │ABC D1子目录 DX.C Q.DAT D2子目录A.FOR│ │┌────┬─┴──┬───┐┌───┬───┐│ │ │ │ │ │ │B.PAS D3子目录 Y.BAS A.C A1.C D4子目录XYZ.C│┌────┬────┬────┐│ │ │ │QR.C NA.C A.TXT B.C如果当前盘为 C 盘,A 盘的当前目录为\D2,则下列对 A 盘上文件QR.C 的指定中,合法的是A)\D2\D4\QR.C B)D4\QR.CC)A:D4\QR.C D)A:D2\D4\QR.C(17)下列DOS命令中,有错误的是A)TYPE AAB.FORCON B)TYPE ?AB.FORC)COPY *.C CON D)COPY CON PRN(18)设当前盘为A盘,为了将当前盘当前目录下的文件AB1.TXT连接在C 盘根目录下的文件XYZ.TXT的后面,正确的命令是A)COPY C:\XYZ.TXT+AB1.TXTB)COPY AB1.TXTC:\XYZ.TXTC)TYPE AB1.TXTC:\XYZ.TXTD)AB1.TXT+C:\XYZ.TXTC:\XYZ.TXT(19)下列命令中合法的是A)DISKCOPY A: A: B)DISKCOPY A: C:C)DISKCOPY C: A: D)DISKCOPY C: D:(20)设当前盘中某一目录路径为\A\B\C\D\XU,当前目录为\A.要将根目录下扩展名为.C的所有文件复制到当前目录下,并将扩展名改为.FOR,应使用命令A)COPY \*.C *.FOR B)COPY *.C \A\*.FORC)COPY *.FOR \*.C D)COPY \A\*.C *.FOR(21)下列不正确的转义字符是A)'\\' B)'\" C)'074' D)'\0'(22)若有以下定义:char a; int b;float c; double d;则表达式a*b+d-c值的类型为A) float B) int C) char D) double(23)表示关系x<=y<=z的c语言表达式为A) (X<=Y)&&(Y<=Z) B) (X<=Y)AND(Y<=Z)C) (X<=Y<=Z) D) (X<=Y)&(Y<=Z)(24)设a=1,b=2,c=3,d=4,则表达式:a<b?a:c<d?a:d的结果为A) 4 B) 3 C) 2 D) 1(25)设x为int型变量,则执行以下语句后,x的值为x=10; x+=x-=x-x;A) 10 B) 20 C) 40 D) 30(26)下列可作为C语言赋值语句的是A) x=3,y=5 B) a=b=6C) i--; D) y=int(x);(27)设x,y,z,t均为int型变量,则执行以下语句后,t的值为x=y=z=1;t=++x||++y&&++z;A) 不定值 B) 2 C) 1 D) 0(28)设i是int型变量,f是float型变量,用下面的语句给这两个变量输入值:scanf("i=%d,f=%f",&i,&f);为了把100和765.12分别赋给i和f,则正确的输入为A) 100765.12 B) i=100,f=765.12C) 100765.12 D) x=100y=765.12(29)设x和y均为int型变量,则执行下的循环后,y值为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) 8(30)给出以下定义:char x[ ]="abcdefg";char y[ ]={'a','b','c','d','e','f','g'};则正确的叙述为A) 数组X和数组Y等价 B) 数组x和数组Y的长度相同C) 数组X的长度大于数组Y的长度 D) 数组X的长度小于数组Y的长度(31)以下叙述中不正确的是A) 在不同的函数中可以使用相同名字的变量B) 函数中的形式参数是局部变量C) 在一个函数内定义的变量只在本函数范围内有效D) 在一个函数内的复合语句中定义的变量在本函数范围内有效(32)假定a和b为int型变量,则执行以下语句后b的值为a=1; b=10;do{ b-=a; a++; }while (b--<0);A) 9 B) -2 C) -1 D) 8(33)设j为int型变量,则下面for循环语句的执行结果是for( j=10;j3;j--){ if(j%3)j--;--j; --j;printf("%d ",j);}A) 6 3 B) 7 4 C) 6 2 D) 7 3(34)设有以下宏定义:#define N 3#define Y(n) ( (N+1)*n)则执行语句:z=2 * (N+Y(5+1));后,z的值为A) 出错 B) 42 C) 48 D)54(35)设P1和P2是指向同一个int型一维数组的指针变量,k为int 型变量,则不能正确执行的语句是A)k=*P1+*P2; B)p2=k;C)P1=P2; D)K=*P1 * (*P2);(36)设有如下定义:int arr[]={6,7,8,9,10};int * ptr;则下列程序段的输出结果为ptr=arr;* (ptr+2)+=2;printf ("%d,%d\n",*ptr,*(ptr+2));A)8,10 B)6,8 C)7,9 D)6,10(37)以下程序的输出结果是main(){ int i,k,a[10],p[3]:K=5;for (i=0;i<10;i++) a[i]=i;for (i=0;i<3;i++) p[i]=a[i*(i+1)];for (i=0;i<3;i++) k+=p[i]*2;printf("%d\n",k);}A) 20 B) 21 C) 22 D)23(38)执行以下程序段后,m的值为int a[2][3]={ {1,2,3},{4,5,6} };int m,*p;p=&a[0][0];m=(*p)*(*(p+2))*(*(p+4));A) 15 B) 14 C) 13 D) 12(39)有以下程序段char arr[]="ABCDE";char *ptr;for(ptr=arr;ptr<arr+5;ptr++)printf("%s\n",ptr);输出结果是A) ABCD B) A C) E D)ABCDEB D BCDEC C CDED B DEE A E(40)有以下程序main(){ int x,i;for(i=1;i<=50;i++){ x=i;if(++x%2==0)if(x%3==0)if(x%7==0)printf("%d,i);}}输出结果是A) 28 B) 27 C) 42 D) 41(41)有下列程序#include<stdio.hmain(){ union{ int k;char i[2];} *s,a;s=&a;s-i[0]=0x39; s-i[1]=0x38;printf("%x\n",s-k);}输出结果是A) 3839 B) 3938 C) 380039 D) 390038(42)有以下程序#include <stdio.hmain(){ int a,b,c=246;a=c/100%9;b=(-1)&&(-1);printf("%d,%d\n",a,b);}输出结果是A) 2,1 B) 3,2 C) 4,3 D) 2,-1(43)设有如下定义:int (*ptr)*();则以下叙述中正确的是A) ptr是指向一维组数的指针变量B) ptr是指向int型数据的指针变量C) ptr是指向函数的指针,该函数返回一个int型数据D) ptr是一个函数名,该函数的返回值是指向int型数据的指针(44)有以下程序#include <stdio.hstruct stu{ int num;char name[10];int age;};void fun(struct stu *p){ printf("%s\n",(*p).name); }main(){struct stu students[3]={ {9801,"Zhang",20},{9802,"Wang",19},{9803,"Zhao",18} };fun(students+2);}输出结果是A) Zhang B)Zhao C) Wang D) 18(45)设有以下说明和定义:typedef union{ long i; int k[5]; char c; }DATE; struct date{ int cat; DATE cow; double dog; } too;DATE max;则下列语句的执行结果是printf ("%d",sizeof (struct date ) +sizeof(max));A) 26 B) 30 C) 18 D) 8(46)有以下程序main(){ char a[]="programming", b[]="language";char *p1,*p2;int i;p1=a; p2=b;for(i=0;i<7;i++)if(*(p1+i)==*(p2+i)) printf("%c",*(p1+i));}输出结果是A) gm B) rg C) or D) ga(47)有以下程序viod fun (int a,int b,int c){ a=456; b=567; c=678;}main(){ int x=10, y=20,z=30;fun (x,y,z);printf("%d,/%d\n",c,d);}输出结果是A)30,20,10 B)10,20,30C)456,567,678 D)678,567,456(48)有以下程序int fun(int x,int y,int *cp,int *dp){ *cp=x+y; *dp=x-y; }main(){ int a, b, c, d;a=30; b=50;fun(a,b,&c,&d);printf("%d,%d\n", c, d);}输出结果是A)50,30 B)30,J50 C)80,-20 D)80,20(49)有以下程序main(){ int i, j;for(j=10;j<11;j++){ for(i=9;i<j; i++)if (!(j%i))break;if(i=j-1)printf("%d",j);}}输出结果是A) 11 B) 10 C) 9 D) 10 11(50)有以下程序#include "atdio.h"int abc(int u,intv);main (){ int a=24,b=16,c;c=abc(a,b);printf('%d\n",c);}int abc(int u,int v){ int w;while(v){ w=u%v; u=v; v=w }return u;}输出结果是A) 6 B) 7 C) 8 D) 9二、填空题(1)自动批自理文件名为_______.(2)DOS命令分为内部命令与外部命令,COMP命令属于_______命令.(3)设当前为C盘,现要用一条DOS命令在打印机上输出A盘当前目录下所有扩展名为.DAT的文件内容.这一条DOS命令应为__ _ (4)要将当前盘当前目录下的子目录XYZ中所有扩展名为.BAK 的文件名改成扩展名为.FOR,应使用的DOS命令为__ _(5)设DOS外部命令文件所在的路径均已用PATH命令打通.现要将当前盘当前目录下的文件WST.TXT设置为只读属性,应使用的DOS命令为___(6)设x和y均为int型变量,且x=1,y=2,则以下表达式的值为___ 1.0+x/y(7)设i,j,k均为int型变量,则执行完下面的for循环后,k的值为___for(i=0,j=10;i<=j;i++,j--) k=i+j;(8)设有以下定义的语句:int a[3][2]={10,20,30,40,50,60}, (*p)[2];p=a;则 *(*(p+2)+1)值为___(9)以下程序的输出结果是___#include <stdio.hint fun(int x,int y){ static int m=0,i=2;i+=m+1;m=i+x+y;return m}main(){ int j=4,m=1,k;k=fun(j,m); printf("%d,",k);k=fun(j,m); printf("%d\n",k);}(10)函数fun的功能是:使一个字符串按逆序存放,请填空void fun (char str[]){ char m; int i,j;for(i=0,j=strlen(str);i<____;i++,j--){ m=str[i];str[i]=__ _;str[j-1]=m;}printf("%s\n",str);}(11)以下程序的功能是:从键盘上输入一行字符,存入一个字符数组中,然后输出该字符串,请填空.#include"ctype.h"#include"stdio.h"main(){ char str[81],*sptr;int i;for(i=0;i<80;i++){ str[i]=getchar();if(str[i]=='\n') break;}str[i]=____;sptr=str;while(*sptr) putchar(*sptr____(13));}(12)以下程序用来对从键盘上输入的两个字符串进行比较,然后输出两个字符串中第一个不相同字符的ASCII码之差.例如:输入的两个字符串分别为abcdef和abceef,则输出为-1.请填空.#includemain(){ char str[100],str2[100],c;int i,s;printf("\n input string 1:\n"); gest(str1);printf("\n input string 2:\n"); gest(str2);i=0;while((strl[i]==str2[i]&&(str1[i]!=____))i++;s=____;printf("%d\n",s);}(13)以下程序的功能是:从键盘上输入一个字符串, 把该字符串中的小写字母转换为大写字母,输出到文件test.txt中,然后从该文件读出字符串并显示出来.请填空.#include<stdio.hmain(){ FILE *fp;char str[100]; int i=0;if((fp=fopen("text.txt",__ __))==NULL){ printf("can't open this file.\n");exit(0);}printf("input astring:\n"); gest(str);while (str[i]){ if(str[i]='a'&&str[i]<='z')str[i]=___ _;fputc(str[i],fp);i++;}fclose(fp);fp=fopen("test.txt",____);fgets(str,100,fp);printf("%s\n",str);fclose(fp);}(14) 以下程序可以把从键盘上输入的十进制数(long型)以二到十六进制形式输出,请填空.#include.<stdio.hmain(){charb[16]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};int c[64],d,i=0,base;long n;printf("enter a number:\n"); scanf("%ld",&n);printf("enter new base:\n"); scanf("%d",&base);do{ c[i]=____;i++; n=n/base;} while(n!=0);printf("transmite new base:\n");for(--i;i=0;--i){ d=c[i];printf("%c",b____;}}_答案一、选择题(1)B (2)B (3)D (4)D (5)B(6)A (7)B (8)C (9)D (10)A(11)D (12)C (13)A (14)B (15)D(16)C (17)B (18)A (19)A (20)A(21)C (22)D (23)A (24)D (25)B(26)C (27)C (28)B (29)C (30)C(31)D (32)D (33)B (34)C (35)B(36)D (37)B (38)A (39)D (40)D(41)A (42)A (43)C (44)B (45)B(46)D (47)A (48)C (49)B (50)C二、填空题(1)AUTOEXEC.BAT(2)外部(答外部命令不扣分)(3)COPY A:*.DAT PRN(在 COPY 后面与A:*.DAT后面都至少要有一个空格)(4)RENXYZ\*.BAK *.FOR 或RENAME XYZ\*.BAK*.FOR(在REN 或RENAME 后面与XYZ\*.BAK 后面都至少要有一个空格) (5)ATTRIB+R WST.TXT(在ATTRIB 后面与+R后面都至少有一个空格)或ATTRIBWST.TXT+R(在ATTRIB后面与WST.TXT后面都至少要有一个空格)(6)1.0或1(7)10(8)60(9)8,17(10)strlen(str )/2或strlen(str)/2.0或0.5*strlen(str)或j或j-1str[j-1]或*(str+j-1)(11)'\0' 或0++(12) '\0'或0strl[i]-str2[i](13) "w"或"w+"或"wt"或"w+t"或"""wt+"str[i]-32 或str[i]-('a'-'A'或str[i]-'a'+'A'"r"或"r+"或"r+t"或"rt+"(14)n%base[d]。

C语言练习题4

C语言练习题4

一、单项选择题(共20小题;每小题1分,共20分)
1、一个C语言程序由()组成。

A.子程序B.过程C.函数D.主程序
2、若以下选项中的变量已正确定义,则正确的赋值语句是()。

A.x1=26.8%3 B.1+2=x2 C.x3=0x12 D.x4=1+2=3;
3、以下符合C语言语法的实型常量是()。

A.1.2E0.5 B.3.14159E C.E15 D.0.5E-3
4、以下不能正确表示代数式2ab/(cd) 的C语言表达式是()。

A.2*a*b/c/d B.a*b/c/d*2 C.a/c/d*b*2 D.2*a*b/c*d
5、设有定义:int k=0;,以下选项的四个表达式中与其他三个表达式的值不相同的是()。

A.k++ B.k+=1 C.++k D.k+1
6、若有以下函数首部int fun(double x[10],int *n)则下面针对此函数声明语句中正确
的是()。

A.int fun(double x,int *n); B.int fun(double ,int);
C.int fun(double*x,int n); D.int fun(double *,int*);
7、若i为整型变量,则以下循环体执行次数是()。

for(i=2;i==0;) printf("%d",i--);
A.无限次 B. 0次 C. 1次 D. 2次
南京工程学院试卷共8 页第2 页
南京工程学院试卷共8页第6 页。

c语言4

c语言4
test(&n,m);
printf("%d %d", m,n);// 输出结果2}
输出结果2是:
A、15 9
B、6 15
C、9 15
D、15 6
(图片文件:C:\C语言2011-2012-2期末考试考生端\picture\;// 输出结果2}
( c ) 1、 下列哪个标识符是C语言合法的标识符
A、a*b
B、-xyz
C、ba2
D、5i
( C ) 2、 设int c=5和int a; a=2+(c+=c,c+8,++c), 则a=
A、15
B、14
C、13
D、16
( B ) 3、 以下标识符中,不能作为合法的C用户定义标识符的是
(对 ) 2、 printf函数中用到格式符%5s ,其中数字5表示输出的字符串占用5列。如果字符串长度大于5,则输出按原字符长从左向右全部输出。
(错 ) 3、 当输入数值数据时,对于整型变量只能输入整型值;对于实型变量只能输入实型值。
( 错) 4、 若要表示if( a不等于0 )这一关系式,则能正确表示这一关系的表达式为if ( a<>0)
2-3)
( ) 19、 下面程序的输出是
# include <stdio.h>
void test(int *u,int v)
{ *u=*u+v;
;
}
main()
{ int m=3,n=6;
test(&m,n);
printf("%d %d", m,n);//输出结果1

C语言4-5真题

C语言4-5真题

(17)若要求从键盘读入含有空格字符的字符串,应使用函数(B)。

A)getc( ) B)gets( ) C)getchar( ) D)scanf( )(19)若有定义:float x=1.5;int a=1,b=3,c=2;则正确的switch 语句是(C )。

A)switch(x) B)switch((int)x);{ case 1.0:printf("*\ n"); {case 1:printf("*\n");case 2.0:printf("**\ n");} case 2:printf("**\n");} C)switch(a+b) D)switch(a+b){ case 1:printf("*\n"); { case 1:printf("* \n");case 2+1:printf("** \n");} case c:printf("** \n");} (21)在下列给出的表达式中,与while(E)中的(E)不等价的表达式是( C )。

(为什么呢?是判断E是否为真真就执行假就不会执行)A)(!E= =0) B)(E>0‖E<0) C)(E= =0) D)(E! =0) (22)要求通过while 循环不断读入字符,当读入字母N 时结束循环。

若变量已正确定义,下列正确的程序段是(A)。

A)while( (ch=getchar( ))! ='N') printf("%c",ch);B)while(ch=getchar( )! ='N') printf("%c",ch);C)while(ch=getchar( )= ='N') printf("%c",ch);D)while((ch=getchar( ))= ='N') printf("%c",ch);(29)有下列程序:#include <stdio.h>main( ){ char c1,c2,c3,c4,c5,c6;scanf("%c%c%c%c",&c1,&c2,&c3,&c4);c5=getchar( ); c6=getchar( );putchar(c1);putchar(c2);printf("%c%c\n",c5,c6); }程序运行后,若从键盘输入(从第1列开始)123<CR>45678<CR>则输出结果是( D )。

C语言模拟试卷(4)

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语言程序设计考试试卷及参考答案4

武汉工程大学大二计算机专业C语言程序设计考试试卷及参考答案4

武汉工程大学C语言程序设计考试试卷及参考答案4一、单项选择题(5’)1、以下哪个不是关系运算符()。

A、=B、<C、<=D、!=答案:A2、若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系的表达式为()。

A、a<>0B、!aC、a=0D、a答案:D3、能正确表示a≥10或a≤0的关系表达式是()。

A、a>=10 or a<=0B、a>=10│a<=0C、a>=10││a<=0D、a>=10 ││a<=0答案:D4、a=1,b=2,c=3,d=4,下列条件表达式的值为()。

a>b?a:c>d?c:dA、1B、2C、3D、4答案:D5、下列运算符中优先级最低的是()。

A、?:B、+=C、>=D、==答案:B6、以下程序的运行结果是()。

main( ){int k=4,a=3,b=2,c=1;Printf(“\n%d\n”,k<a? k:c<b? c:a);}A、4B、3C、2D、1答案:D7、若已定义x为int类型变量,下列语句中说明指针变量p的正确语句是()。

A、int p=&x;B、int *p=x;C、int *p=&x;D、*p=*x;答案:C8、在C语言中()。

A、实参和与其对应的形参各占用独立的存储单元B、实参和与其对应的形参共占用一个存储单元C、只有当实参和与其对应的形参同名时才共占用存储单元D、形参是虚拟的,不占用存储单元答案:A9、以下对二维数组a 的正确说明是()。

A、int a[3][]B、float a(3,4)C、double a[1][4]D、float a(3)(4)答案:C10、若有以下定义,则能使值为3的表达式是()。

int k=7,x=12;A、x%=(k%=5)B、x%=(k-k%5)C、x%=k-k%5D、(x%=k)-(k%=5)答案:D11、经过以下语句定义后, 表达式z+=x>y?++x:++y 的值为()。

C语言习题4

C语言习题4
习题4
1、 单选题 1. 逻辑运算符两侧运算对象的数据类型是( )。 A.只能是0或1 B.只能是0或非0正数 C.只能是整型或字符型数据 D.可以是任何类型的数据 2. 选择出合法的if语句(设int x,a,b,c;)( )。 A.if(a=b) x++; B.if(a=<b) x++; C.if(a<>b) x++; D.if(a=>b) x++; 3. 能正确表示“当x的取值在[l,10]或[200,210]范围内为真,否则 为假”的表达式是( )。 A.(x>=1)&&(x<=10)&&(x>=200)&&(x<=210) B.(x>=1)||(x<=10)||(x>=200)||(x<=210) C.(x>=1)&&(x<=l0)||(x>=200)&&(x<=210) D.(x>=1)||(x<=10)&&(x>=200)||(x<=210) 4. 判断char型变量ch是否为大写字母的正确表达式是( )。 A. 'A'<=ch<='Z' B.(ch>='A')&(ch<='Z') C.(ch>='A')&&(ch<='Z') D.( 'A'<=ch)AND('Z'>=ch) 5. 为了避免在嵌套的条件语句 if - else 中产生二义性,C语言规定: else子句总是与( )配对。 A. 缩排位置相同的if B. 同层之前最近的if C. 同层其之后最近的if D. 同一行上的 6. 下列运算符中,不属于关系运算符的是( )。 A. < B. >= C. == D. ! 7. 若希望当A的值为奇数时,表达式的值为“真”,A的值为偶数 时,表达式的值为“假”。则以下不能满足要求的表达式是( )。 A.A%2==1 B.!( A%2==0) C.!(A%2) D.A%2 8. 两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果 是( )。 #include<stdio.h> void main() { int x; scanf("%d", &x);

C语言试卷与答案

C语言试卷与答案
A、循环 A、2.5 A、x==0 A、j=3, k=3 B、递归 B、 2.0 B、x==1 B、j=3, k=4 C、转移 C、 3 C、x != 0
注: 请将答案写在答卷纸上
1.C 语言程序的三种基本结构是顺序结构、选择结构和______结构。 D、嵌套 D、 2 2.若 x 是单精度实型变量,表达式 (x = 10/4) 的值是_____ 。 3. 表达式 !x 等价于_____。 D、x != 1 D、j=4, k=3 4.若变量已正确定义且 k 的值是 4,计算表达式 ( j = k--) 后,_____。 C、j=4, k=4 5. 算术运算符、赋值运算符和关系运算符的运算优先级按从高到低的顺序依次为_____。 A、算术运算、赋值运算、关系运算 C、算术运算、关系运算、赋值运算 A、 auto A、float f, *pf = f; B、static B、float B、关系运算、赋值运算、算术运算 D、关系运算、算术运算、赋值运算 C、 register f, *pf = &f; C、float D、extern *pf = &f, f; D、float f, pf
1999~2000学年下《程序设计基础—C》答卷
下框由教师填写: 题号 得分 阅卷人
试题一、选择题 (每小题2分,共20分) 题号 1 2 3 4 5 选择 A B A D C 试题二、填空题 (每小题3分,共24分) 1 4 7 18,14,A 0, 1, 3, g=4, g=3, k=6 2 5 7, -13 10, 41, 70 8 3 6 typedef int 0BC 3, 7, 11, NUM[10]
6.C语言中,形参的缺省的存储类说明是______。 7.下列语句定义 pf 为指向 float 类型变量 f 的指针,_____是正确的。 = f; 8.表达式 sizeof(“key”) 的值是______。 A、1 A、’p’ A、~a B、2 B、‘-‘ B、 1 C、 3 –nla hello C、‘h’ C、0 D、 4 world 则 *(*(argv+2)) 是______。 D、‘w’ D、2 9.将程序 prog.c 编译后运行:prog

练习4

练习4

试卷编号:82所属语言:C语言试卷方案:练习_4试卷总分:100分共有题型:5种━━━━━━━━━━━━━━━一、判断共20题(共计20分)━━━━━━━━━━━━━━━第1题(1.0分)题号:1114 难度:中第1章在C语言程序设计中,"/*"和"*/"之间的内容是C语言的注释.答案:Y第2题(1.0分)题号:1124 难度:中第1章#include "文件名"可以将另外一个源文件的全部内容包含进来.答案:Y第3题(1.0分)题号:1140 难度:中第2章常量M取值10.6可用#define M 10.6 来定义.答案:Y第4题(1.0分)题号:1147 难度:中第2章在C语言中,变量必需先定义后使用.答案:Y第5题(1.0分)题号:1174 难度:中第3章在C程序中,赋值运算符的优先级最低.答案:N第6题(1.0分)题号:1172 难度:中第3章关系运算符<= 与 == 的优先级相同.答案:N< 小于;<= 小于等于;> 大于;>= 大于等于以上四个优先级相同(高)== 等于;!= 不等于这两个优先级相同(低)关系运算符的优先级低于算术运算符关系运算符的优先级高于赋值运算符第7题(1.0分)题号:1176 难度:中第4章a=(b=4)+(c=6) 是一个合法的赋值表达式.答案:Y第8题(1.0分)题号:1179 难度:中第4章若a和b的类型相同,在执行了a=b;后,b中的值将丢失.答案:N第9题(1.0分)题号:1200 难度:中第5章int i=20;switch(i/10){case 2:printf("A");第10题(1.0分)题号:1190 难度:中第5章if语句后面的控制表达式只能使用关系表达式或逻辑表达式.答案:N选D,任何表达式都可以,只要值为非0或非空,如if(a==b),if(a)a可以是整型、字符型变量,if(a+b),if(p),if(0),等等第11题(1.0分)题号:1215 难度:中第6章三种循环(while语句、 for语句、 do-while语句)都可以用来处理同一个问题,一般它们可以相互代替.答案:Y第12题(1.0分)题号:1209 难度:中第6章for(i=0,k=-1;k=1;k++,i++)printf("*\n"); 循环体一次也不执行.答案:N赋值语句永远为真,构成了无限循环第13题(1.0分)题号:1254 难度:中第7章static char a[2];scanf("%s",a);是正确的.答案:Y第14题(1.0分)题号:1234 难度:中第7章数组定义 int a[10]; 占内存10个字节.答案:N看你机器,int占多少位,a[10]的大小就是10个int的大小。

C语言程序设计模拟试题4

C语言程序设计模拟试题4

C语言程序设计模拟试题4 说明:1. 本卷共五大题,共6页。

2. 本试卷时间120分钟,满分100分。

一、项选择题(每小题2分,共20分, 每小题只有一个正确答案,请将你认为正确的答案填在对应的括号内。

)1. 组成C程序的基本单位是()。

A.函数B.标识符C.表达式D.语句2. 在C语言中,正确的字符类型的常量是()A.‘b‘ B.“ab” C.’ab’ D.”a”3. 在C语言中,逻辑值“真”是用()表示的。

A.预定义为真值的宏B.非零数C.正数D.非零整数4.下列描述中不正确的是()A.字符型数组中可以存放字符串B.可以对字符型数组进行整体输入、输出C.可以对整型数组进行整体输入、输出D.不能在赋值语句中通过赋值运算符“=”对字符型数组进行整体赋值5.设有如下定义:int x=1,y=-1;,则语句:printf(“%d\n”,(x--&++y));的输出结果是()A.1 B.0 C.-1 D.26.当c的值不为0时,在下列选项中能正确将c的值赋给变量a、b的是()A.c=b=a;B.(a=c)||(b=c);C.(a=c)&&(b=c);D.a=c=b;7.以下程序的输出结果是()A.10192 B. 9876C. 10990D.10109 1main(){int x=10,y=10,i;for(i=0;x>8;y=++i)printf(“%d %d”,x--,y);}8.以下程序的输出结果是()A.5 2 B.5 1 C.5 3 D.9 7main(){int i,x[3][3]={9,8,7,6,5,4,3,2,1},*p=&x[1][1];for(i=0;i<4;i+=2) printf(“%d”,p[i]);}9.以下程序的输出结果是( )A.6B.6789C.’6’D.789{char a[10]={‘1’,’2’,’3’,’4’,’5’,’6’,’7’,’8’,’9’,0},*p;int i;i=8;p=a+i;printf(“%s\n”,p-3);}10.C语言提供的合法的数据类型关键字是( )A. DoubleB. shortC. integerD. Char二、读程序(每小题3分,共27分)1、以下程序的输出结果为:()main(){int a,b,d=241;a=d/100%9;b=(-1)&&(-1);printf("%d,%d\n",a,b);}A.2,1B.2,0C.0.25,0D.程序有错2、以下程序的输出结果为:()#include "stdio.h"main(){int i;for(i=1;i<=5;i++){if(i%2)printf("*");elsecontinue;printf("#");}printf("$\n");}A.#*#*#$B.*#%*#$C.*#*#*#$D.*#*#*$3、有以下程序:#include "stdio.h"main(){char c[6];int i=0;for(;i<6;c[i]=getchar(),i++);for(i=0;i<6;putchar(c[i]),i++);}输入以下三行,每行输入都是在第一列上开始,<CR>代表一个回车键:a<CR>cdef<CR>程序输出结果为:()A.abcdefB. aC.aD.ab b bcdef c cddef4、以下程序的输出结果为:#include "stdio.h"main(){int c;while((c=getchar())!='\n'){switch(c-'2'){case 0:case 1:putchar(c+4);case 2:putchar(c+4);break;case 3:putchar(c+3);default:putchar(c+2);break;}}printf("\n");}每行输入在第一列上开始,<CR>代表一个回车键:2473<CR>程序输出结果为:()A.6696B. 668977C.666965D.6698555、以下程序的输出结果为:( )A.19,59,5B.29,59,5C.2,9,5,9,5D.17,4,8,5main(){int i=1,j=3;printf("%d",i++);i+=j++*2;printf("%d,%d",++i,++j)printf("%d,%d\n",i,j);}6、以下程序的输出结果为:( )main(){ int a=2,i;for (i=0;i<3;i++)printf("%4d",f(a++));}f(int a){ int b=0;static int c=3;b++;c++;return a+b+c;}A. 7 8 9B. 7 7 7C.8 9 10D.7 9 117、下列程序,分别选择3条printf语句行的正确输出结果。

(完整版)C语言程序设计试题与答案-4

(完整版)C语言程序设计试题与答案-4

《C语言程序设计》试题(闭卷)得分评卷人一、单项选择题:(每题 2 分,共 30 分)1. C 语言规定:在一个源程序中,main函数的位置_____________。

A. 必须在最开始B. 必须在系统调用的库函数的后面C. 可以任意D. 必须在最后2. 下列说法中错误的是_____________。

A. 主函数可以分为两个部分:函数头和函数体B. 主函数可以调用任何非主函数的其他函数C. 任何非主函数可以调用其他任何非主函数D. 程序可以从任何非主函数开始执行3. 用 C 语言编写的源文件经过编译,若没有产生编译错误,则系统将_____________。

A. 生成目标文件B. 生成可执行目标文件C. 输出运行结果D. 自动保存源文件4. 以下选项中,不正确的 C 语言浮点型常量是_____________。

A. 160.B. 0.12C. 2e4.2D. 0.05. 以下用户标识符中,合法的是_____________。

A. intB. nitC. 123D. a+b6. 算术运算符、赋值运算符和关系运算符的运算优先级按从高到低依次为_____________。

A. 算术运算、关系运算、赋值运算B. 算术运算、赋值运算、关系运算C. 关系运算、赋值运算、算术运算D. 关系运算、算术运算、赋值运算7. 设整型变量m,n,a,b,c,d 均为1,执行(m=a>b)&&(n=c>d)后, m,n 的值是_____________。

A. 1,1B. 0,1C. 1,0D. 0,08. sizeof (char)的结果值是_____________。

A. 4B. 2C. 1D.出错9. 设a 为整型变量,不能正确表达数学关系:10<a<15的 C 语言表达式是_____________。

A. 10<a<15B. a= =11|| a= =12 || a= =13 || a= =14C. a>10 && a<15D. !(a<=10) && !(a>=15)10. 要为字符型变量 a赋初值,下列语句中哪一个是正确的_____________。

湖北经济学院2018年C语言期末模拟试卷(四)及完整答案

湖北经济学院2018年C语言期末模拟试卷(四)及完整答案

湖 北 经 济 学 院 2018年C 语言期末模拟试卷(四) 考试方式:【闭卷】 总分: 【100分】 考试时间:【120分钟】 出题人 :【马玉华】A) break 语句只能用于switch 语句体中B) continue 语句的作用是使程序的执行流程跳出包含它的所有循环 C) break 语句只能用在循环体内和switch 语句体内D) 在循环体内使用break 语句和continue 语句的作用相同4. 以下程序运行后的输出结果是 _______ 。

main( ){int i=0,s=1;for (;;){………………………………………密…………………………………………………封……………………………………………………………………线……………………………………………………………………………………….. 学号-----------------------------姓名----------------------if (i==5) break;i++;s+=i;};printf("%d\n",s);}A)死循环B)16C)15D)115.下列程序的运行结果是________。

#include<stdio.h>void fun(int*s,int*p) static int t=3;*p=s[t];t--;void main() int a[]=2,3,4,5,k;int x;for(k=0;k<4;k++) fun(a,&x);printf("%d,",x);A)5,4,3,2B)2,3,4,5,C)2,2,2,2,D)5,5,5,5,6.设x、y、z和k都是int型变量,则执行表达式:x=(y=4,z=16,k=32)后,x的值为______。

A)4B)16C)32D)527.二维数组a的成员是6个字符组成的串,行下标i的范围从0到8,列下标j的范围从1到10,则存放a至少需要(44) 个字节。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3.在C程序中对用到的所有数据都必须指定其数据类型()
4.可以对字符型数组进行整体输入、输出()
5.函数中的静态变量在函数每次调用时,都会重新设置初值()
6.实参和与其对应的形参共占用一个存储单元()
7.一个实型变量的值肯定是精确的()
8.在不同函数中可以使用相同名字的变量()
9.函数调用:strcat(strcpy(str1,str2),str3)的功能是将串str2连接到串str1之后再将串str1复制到串str3中( )
char fun(char ch)
{
if(ch= ='Z')ch=__________;
else if(ch>='A'&&ch<='Y')ch=__________;
return ch;
}
五、编程题(本题共2道小题,共20分。)
1.从键盘输入一个一维数组,将这个数组逆序输出。
2.编写一个函数,该函数可以统计一个长度为2的字符串在另一个字符串中出现的次数。例如,假定输入的字符串为:asd asasdfg asd as zx67 asd mklo,子字符串为:as,则应输出6。
}
A)7B)6
C)5 D)4
20.以下程序运行后,输出结果是int d=1;
fun(int p)
{
int d=5;
d+=p++;
printf("%d",d);
}
main()
{
int a=3;
fun(a);
d+=a++;
printf("%d\n",d);
}
A)84B)99 C)95 D)44
二、填空题(每空1分,共10分。)
printf("%d %d %d %d\n",my,your,his,her);}
A) 0 1 2 3 B) 0 4 0 10C) 0 4 5 15 D) 1 4 5 15
19.以下程序输出结果是
main( )
{
int m=5;
if(m++>5)printf("%d\n",m);
else printf("%d\n",m--);
printf("n=%d\n",n);
}
10.系统不允许用户重新定义标准库函数()
四、程序填空(本题共5道小题,每题4分,共20分。)
1. 22、下面程序的运行结果是________。
#include <stdio.h>
main()
{int i=5;
char c[6]="abcd";
do
{
c[i]=c[i―1];
}while(――i>0);
int a[12]={0}, *p[3], **pp, i;
for(i=0; i<3; i++)
p[i]=&a[i*4];
pp=p;
则对数组元素的错误引用是
A) pp[0][1]B) a[10]C) p[3][1]D) *(*(p+2)+2)
3.若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系的表达式为
20. A
二、填空题(每空1分,共10分。)1.数 Nhomakorabea结构,算法
2.先后,结合性
3. strcpy(s2,s1)
4.顺序,选择,循环
5. x++或++x
6. 3
三、判断题(本题共10道小题,共10分。)
1.错
2.错
3.对
4.错
5.错
6.错
7.错
8.对
9.错
10.对
四、程序填空(本题共5道小题,每题4分,共20分。)
{ int x=10,y=10,I;
for(i=0;x>8;y=++i)
printf("%d,%d ",x--,y);
}
A) 10 1 9 2 B) 9 8 7 6 C) 10 9 9 0D) 10 10 9 1
6.下面程序的输出是(超纲)
void prtv(int *x)
printf("%d\n", ++*x);}
江苏省计算机等级考试
-学年 第学期c程序设计试卷(参考答案)
题号









总 分
得分
一、选择题(本题共20道小题,共40分。)
1. B
2. C
3. D
4. D
5. D
6. D
7. C
8. C
9. B
10. A
11. C
12. B
13. B
14. B
15. C
16. A
17. C
18. C
19. B
8.设x,y,z,t均为int型变量,则执行以下语句后,t的值为
x=y=z=1;t=++x||++y&&++z;
A)不定值B)2C)1D)0
9.设p1和p2是指向同一个int型一维数组的指针变量,k为int型变量,则不能正确执行的语句是(超纲)
A)k=*p1+*p2;
B)p2=k;
C)p1=p2;
D)k=*p1 *(*p2);
A)int
B)float
C)double
D)不确定
12.若执行下面的程序时从键盘上输入3和4,则输出是
main()
{ int a,b,s;
scanf("%d %d",&a,&b);
s=a;
if(a<b)s=b;
s=s*s;
printf("%d\n",s);}
A) 14B) 16C) 18 D) 20
1. aabcd
2. s=15
3. 4
4. *t++
5. 'A',ch+1
五、编程题(本题共2道小题,共20分。)
1. #define N 5
main()
{ int a[N]={9,6,5,4,1},i,temp;
printf("\n original array:\n");
for(i=0;i<N;i++)
n++;
return n;
}
main()
{
char str[81],substr[3];
int n; clrscr();
printf("enter 1:");
gets(str);
printf("enter 2:");
gets(substr);
puts (str);
puts(substr);
n=fun(str,substr);
13.以下程序的输出结果是(超纲)
# include <stdio.h>
main()
{ printf("%d\n",NULL); }
A)不确定的(因变量无定义)B)0C)-1 D)1
14.请读程序:(超纲)
#include<stdio.h>
f(char *s)
{ char *p=s;
while( *p!='\0') p++;
1.程序由主要由__________、_________组成。
2.在C语言中,不同运算符之间运算次序存在_________的区别,同一运算符之间运算次序存在________的规则。
3.欲将字符串S1复制到字符串S2中,其语句是____________。
4.结构化程序设计中的三种基本结构是_________、__________、___________。
#include "string.h"
#include "conio.h"
int fun(char *str,char *substr)
{ int i,n=0,s=strlen(str);
for(i=0;i<s;i++)
if((str[i]==substr[0])&&(str[i+1]==substr[1]))
{ while(*s++=_____________);}
main( )
{ char str1[100],str2[]="abcdefgh";
sstrcpy(str1,str2);
printf("%s\n",str1);
}
5. 14、以下fun函数把ch中的大写字母转换成字母序列中的下一个大写字母,字母Z转换成字母A,其它字符不变,返回转换后的字母或其它字符。请填空。
printf("%4d",a[i]);
for(i=0;i<N/2;i++)
{temp=a[i];
a[i]=a[N-i-1];
a[N-i-1]=temp;
}
printf("\n sorted array:\n");
for(i=0;i<N;i++)
printf("%4d",a[i]);
}
2. #include "stdio.h"
相关文档
最新文档