安徽大学2014年c语言平时作业_第1页
安徽大学2014年c语言平时作业_第2页
安徽大学2014年c语言平时作业_第3页
安徽大学2014年c语言平时作业_第4页
安徽大学2014年c语言平时作业_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、作业一 C语言基本概念选择:17题窗体顶端 能将高级语言编写的源程序转换成目标程序的是_。A) 编辑程序 B) 编译程序 C) 解释程序 D) 链接程序您的答案为:B参考答案为:B 以下选项中合法的用户标识符是_。A) long B) _2Test C) 3Dmax D) A.dat您的答案为:B参考答案为:B 以下叙述正确的是A) 可以把define和if定义为用户标识符 B) 可以把define定义为用户标识符,但不能把if定义为用户标识符 C) 可以把if定义为用户标识符,但不能把define定义为用户标识符 D) define和if都不能定义为用户标识符您的答案为:B参考答案为:B 以

2、下叙述正确的是A) C语言比其他语言高级B) C语言可以不用编译就能被计算机识别执行C) C语言以接近英语国家的自然语言和数学语言作为语言的表达形式D) C语言出现的最晚、具有其他语言的一切优点您的答案为:C参考答案为:C 在一个C语言程序中A) main函数必须出现在所有函数之前B) main函数必须出现在所有函数之后C) main函数可以在任何地方出现D) main函数必须出现在固定位置您的答案为:C参考答案为:C 一个C语言程序是由_组成的。A) 一个主程序和若干子程序 B) 若干子程序 C) 函数 D) 若干过程您的答案为:C参考答案为:C 以下叙述中正确的是()A) C语言的源程序不

3、必通过编译就可以直接运行B) C语言中的每条可执行语句最终都将被转换成二进制的机器指令C) C源程序经编译形成的二进制代码可以直接运行D) C语言中的函数不可以单独进行编译您的答案为:B参考答案为:B 下列关于C语言用户标识符的叙述中正确的是A) 用户标识符中可以出现下划线和数字,它们都可以放在用户标识符的开头B) 用户标识符中可以出现下划线,但不可以放在用户标识符的开头C) 用户标识符中不可以出现中划线,但可以出现下划线D) 用户标识符中可以出现下划线和中划线(减号)您的答案为:C参考答案为:C 以下说法中正确的是A)C语言程序总是从第一个定义的函数开始执行B)C语言程序中,要调用的函数必须

4、在main()函数中定义C)C语言程序总是从main()函数开始执行 D)C语言程序中的main()函数必须放在程序的开始部分您的答案为:C参考答案为:C 默认情况下,一个C程序的执行是从A)本程序的main函数开始,到main函数结束B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C)本程序的main函数开始,到本程序文件的最后一个函数结束D)本程序文件的第一个函数开始,到本程序main函数结束您的答案为:A参考答案为:A C语言编程整个操作的过程是A)编辑、编译、链接、执行B)编译、编辑、链接、执行C)链接、编译、编辑、执行D)编辑、链接、编译、执行您的答案为:A参考答案为:

5、A 下列说法不正确的是A)链接操作将生成扩展名为.lnk的文件B)编辑过程将生成扩展名为.cpp或.c的文件C)编译过程将生成扩展名为.obj的文件C)C编程最终要生成扩展名为.exe的文件您的答案为:A参考答案为:A C语言提供了丰富的结构化语句,直接支持_、_和_三种基本程序结构。A)顺序、分支、过程B)顺序、分支、循环C)分支、过程、循环D)顺序、过程、循环您的答案为:B参考答案为:B 下列说法正确的是A)C语言版本众多,但这些版本大多不能兼容B)C语言只能在固定的操作系统上运行。C)C语言不包含依赖硬件的输入/输出语句,其输入/输出功能语句需要手工来编写。D)C语言允许对位、字节、地址

6、这些计算机功能中的基本成分进行操作。您的答案为:D参考答案为:D 当用户用编辑器将C语言程序录入到计算机后,就建立一个源文件,则A)源文件可以直接被计算机执行B)源文件需要编译后就可执行C)源文件经过编译链接后生成的可执行程序和源程序是独立的D)错误调试一般在执行过程进行您的答案为:C参考答案为:C 下列说法中正确的是( )A由于C源程序是高级语言程序,因此一定要在VC+软件中输入B由于C源程序是字符组成,因此可以作为文本文件在任何文本编辑的软件中输入C由于C程序是高级语言程序,因此输入后即可执行D由于C程序是高级语言程序,因此它由命令组成您的答案为:B参考答案为:B 下列说法中错误的是( )

7、A. 主函数可以分为两个部分:主函数说明部分和主函数体B. 主函数可以调用任何非主函数的其它函数C. 任何非主函数可以调用其它任何非主函数D. 程序可以从任何非主函数开始执行您的答案为:D参考答案为:D作业二 C基本数据类型及运算窗体底端选择:21题 下列不正确的C语言用户标识符是_。 A) int B) a_1_2 C) ab1exe D) _x您的答案为:A参考答案为:A 下列正确的C语言标识符是_。 A) #define B) _123 C) %d D) n您的答案为:B参考答案为:B 下列四组字符串中都可以用作语言程序标识符的一组是_ 。 A) print _123 Pxq str_l

8、 B) _3d one_half My->book Cpp C) oodb start$it line# pow D) aBc 3pai His.age while您的答案为:A参考答案为:A 下面各选项组中,均是C语言关键字的组是_ 。 A) auto,enum,include B) switch,typedef,continue C) signed,union,scanf D) if,struct,type您的答案为:B参考答案为:B 下列不属于C语言关键字的是_ 。 A) default B) register C) enum D) external您的答案为:D参考答案为:D 执

9、行语句 printf("%x",-1);屏幕显示_。 A) -1 B) 1 C) -ffff D) ffffffff您的答案为:D参考答案为:D 已知 int a=2,b=1,c;执行语句c=b/a+2.5后, c的值_。 A) 2.5 B) 3 C) 3.0 D) 2您的答案为:D参考答案为:D 有关变量已经定义,以下合法的数值表达式是_。 A) a=1/b=2 B) +(a+b) C) b=b/(a=6) D) c=int(a)+b您的答案为:C参考答案为:C 将字符g赋给字符变量c,正确的表达式是_ 。 A) c=147 B) c="147" C)

10、 c='147' D) c='0147'您的答案为:C参考答案为:C 下列转义字符中错误的一个是_。 A) '000' B) '014' C) 'x111' D) '2'您的答案为:C参考答案为:C 将空格符赋给字符变量c,正确的赋值语句是_。 A) c='0' B) c=NULL C) c=0 D) c=32您的答案为:D参考答案为:D 已知:char a='70';则变量a中 。 A)包含1个字符 B)包含2个字符 C)包含3个字符 D)说明非法您的答案为:A参考

11、答案为:A 字符串""EOFn=-61""的长度是_。 A) 8 B) 9 C) 14 D) 非法字符串您的答案为:B参考答案为:B 字符串""的长度是_。 A) 0 B) 1 C) 2 D) 非法字符串您的答案为:A参考答案为:A 已知:char a;int b;float c;double d;执行语句"c=a+b+c+d;"后,变量c的数据类型是 。 A) int B) char C) float D) double您的答案为:C参考答案为:C 逗号表达式"(a=3*5,a*4),a+15"

12、;的值是_。 A) 15 B) 60 C) 30 D) 不确定您的答案为:C参考答案为:C 如果int a=1,b=2,c=3,d=4;则条件表达式a<b?a:c<d?c:d的值是_。 A) 1 B) 2 C) 3 D) 4您的答案为:A参考答案为:A 已知int i=10;表达式"20-5<=i<=9"的值是_。 A) 0 B) 1 C) 19 D) 20您的答案为:B参考答案为:B 已知int x=1,y;执行下述语句后变量x的值是_。 y=+x>5&&+x<10; A) 1 B) 2 C) 3 D) 4您的答案为:B

13、参考答案为:B 为判断字符变量c的值不是数字也不是字母时,应采用下述表达式_。 A) c<=48|c>=57&&c<=65|c>=90&&c<=97|c>=122 B) !(c<=48|c>=57&&c<=65|c>=90&&c<=97|c>=122) C) c>=48&&c<=57|c>=65&&c<=90|c>=97&&c<=122 D) !(c>=48&&a

14、mp;c<=57|c>=65&&c<=90|c>=97&&c<=122)您的答案为:D参考答案为:D 已知int x=5,y=5,z=5;执行语句x%=y+z;后,x的值是_。 A) 0 B) 1 C) 5 D) 6您的答案为:C参考答案为:C作业三 输入和输出选择:15题 设a=3,b=4, 执行“printf(“a=%d,B=%d",a,b);”的输出是( )A. a=3,b=4 B. 3,4 C. a=3,B=4 D.a=3 B=4您的答案为:C参考答案为:C 设a=1234,b=12,c=34 执行“printf(

15、“|%3d%3d%-3d|n”,a,b,c); ”的输出是( )A.|12341234 |B.|1231234| C.|123412-34| D.|2341234|您的答案为:A参考答案为:A 使用“scanf(“x=%f,y=%f”,&x,&y);”,要使x,y均为1.25,正确的输入是( )A. 1.25,1.25B. 1.251.25 C. x=1.25,y=1.25D. x=1.25 y=1.25您的答案为:C参考答案为:C 要使double x; long a; 获得数据,正确的输入语句是( )A. scanf(“%d,%f”,&a,&x); B. s

16、canf(“%f,%ld”,&x,&a); C. scanf(“%d,%lf”,&a,&x); D. scanf(“%ld,%lf”,&a,&x); 您的答案为:D参考答案为:D 设有int a=255,b=8;则printf(“%x,%on”,a,b);的输出的是( )A. 255,8 B. ff,10 C. 0xff,010 D. 输出格式错您的答案为:B参考答案为:B 设a、b为字符型变量,执行“scanf(“a=%c,b=%c”,&a,&b);”后使a为A,b为B,从键盘上的正确输入是( )A. AB B. A,B C.

17、A=A,B=B D. a=A,b=B您的答案为:D参考答案为:D 语句printf(“%f%”,1.0/3);的输出结果为:(注:的输出结果是一个)A.0.333333 B.0.333333%C.0.333333% D.出错您的答案为:B参考答案为:B 已有定义int x ;float y;且执行scanf("%3d%f",&x,&y);输入数据为12345 678<回车>,则x和y的值为:A.123 45.000000 B.123 678.000000C.12345 678.000000 C.345 678.000000您的答案为:A参考答案为

18、:A 有如下的定义和输入语句:int a1,a2;char c1,c2;scanf("%d%d",&a1,&a2);scanf("%c%c",&c1,&c2);若要求a1,a2,c1,c2的值分别为10、20、A和B,则正确的数据输入方式为( )A. 1020AB B. 10 20<CR>AB<CR>C. 10 20 AB<CR> D. 10 20AB<CR>您的答案为:D参考答案为:D 已有定义:float f1,f2;程序运行时输入数据为4.52 3.5 ,则输入语句正确

19、的为( )A.scanf("%f,%f",&f1,&f2);B.scanf("%f%f",&f1,&f2);C.scanf("%f%fn",&f1,&f2);D.scanf("%3f%f",&f1,&f2);您的答案为:B参考答案为:B 下列数据中属于“字符串常量”的是( )A“a” B. ABCC. abc0 D. a您的答案为:A参考答案为:A 在PC机中,n在内存占用的字节数是( )A. 1 B. 2 C. 3 D. 4您的答案为:A参考答案为:

20、A 在PC机中,“axff” 在内存占用的字节数是( )A. 5 B. 6 C. 3 D. 4您的答案为:C参考答案为:C 在C语言中,合法的长整型常数是( )A. 0L B. 4962710 C. 0.054838743 D. 2.1869e10您的答案为:A参考答案为:A 下列数据中不属于“字符常量”的是( )A. a B. 160C. 070 D. 070您的答案为:D参考答案为:D作业四 C程序控制结构选择:20题 结构化程序设计的3种结构是A)顺序结构、选择结构、转移结构B)分支结构、等价结构、循环结构C)多分支结构、赋值结构、等价结构D)顺序结构、选择结构、循环结构您的答案为:D参

21、考答案为:D 已知int t=0;while (t=1).则以下叙述正确的是A)循环控制表达式的值为0B)循环控制表达式的值为1C)循环控制表达式不合法D)以上说法都不对您的答案为:B参考答案为:B 有如下程序:main() int x=1,a=0,b=0; switch(x) case 0: b+; case 1: a+; case 2: a+;b+; printf("a=%d,b=%dn",a,b);该程序的输出结果是A)a=2,b=1B)a=1,b=1C)a=1,b=0D)a=2,b=2您的答案为:A参考答案为:A 有以下程序main() int i=1,j=1,k=

22、2; if(j+|k+)&&i+) printf("%d,%d,%dn",i,j,k);执行后输出结果是 A)1,1,2B)2,2,1C)2,2,2D)2,2,3您的答案为:C参考答案为:C 有如下程序main() float x=2.0,y; if(x<0.0) y=0.0; else if(x<10.0) y=1.0/x; else y=1.0; printf("%fn",y);该程序的输出结果是A)0.000000B)0.250000C)0.500000D)1.000000您的答案为:C参考答案为:C 有如下程序:mai

23、n() int n=9; while(n>6) n-; printf("%d",n); 该程序的输出结果是A)987B)876C)8765D)9876您的答案为:B参考答案为:B 在下列选项中,没有构成死循环的是 A)int i=100; while(1) i=i%100+1; if(i>100) break; B)for(;);C)int k=10000; do k+; while(k>10000);D)int s=36; while(s) -s;您的答案为:D参考答案为:D 有如下程序段 #include "stdio.h" mai

24、n() int a=10,b=50,c=30; a=a>30?1:2; b=b>30?1:2; c=c>30?1:2; printf("%d,%d,%dn",a,b,c);则执行结果为A)2,1,2B)1,2,1C)1,1,2D)2,1,1您的答案为:A参考答案为:A 阅读如下程序段#include "stdio.h"main() int a=45,b=40,c=50,d; d=a>30?b:c; switch(d) case 30 : printf("%d,",a); case 40 : printf(&qu

25、ot;%d,",b); case 50 : printf("%d,",c); default : printf("#"); 则输出的结果是 A)40,50,B)50,#C)40,#D)40,50,#您的答案为:D参考答案为:D 若有定义int k=10;则下列程序的输出结果为do printf("%d",k-); while(!k);A)9B)10C)10987654321D)没有输出您的答案为:B参考答案为:B 阅读下列程序段,则程序的输出结果是 #include "stdio.h"main() int

26、 a=10,b=10,k; for(k=0;a>8;b=+k) printf("%d,%d,",a-,-b); printf("n");A)10,10,10,0,B)10,9,9,0,C)10,10,9,1,D)9,9,9,1,您的答案为:B参考答案为:B 下列程序的运行结果是 #include "stdio.h"main() int a,b,m; for(a=5;a>=1;a-) m=0; for(b=a;b<=5;b+) m=m+a*b; printf("%dn",m);A)30B)15C)2

27、0D)10您的答案为:B参考答案为:B 若int i,j;,则for(i=j=0;i<10&&j<8;i+,j+=3)控制的循环体执行的次数是 A)9B)8C)3D)2您的答案为:C参考答案为:C 下列程序的输出结果是 #include "stdio.h"main() int i=6; while(i-) printf("%d",-i); printf("n");A)531B)420C)654321D)死循环您的答案为:B参考答案为:B 阅读下列程序,则执行结果是 #include "stdio.

28、h"main() int a=0,b=0,c=0,i; for(i=0;i<4;i+) switch(i) case 0:a=i+; case 1:b=i+; case 2:c=i+; case 3:i+; printf("%d,%d,%d,%dn",a,b,c,i);A)0,1,3,4B)1,2,3,4C)0,1,2,5D)0,2,3,4您的答案为:C参考答案为:C 下面程序的运行结果是 #include "stdio.h"main() int j,i; for(j=50;j<=60;j+) for(i=2;i<j;i+)

29、if(!(j%i) break; if(i=j) printf("%d",j); A)5359B)5953C)3595D)9535您的答案为:A参考答案为:A 已知char ch='C';则以下表达式的值是 ch=(ch>='A && ch<='Z)?(ch+32):ch;A)AB)aC)ZD)c您的答案为:D参考答案为:D 下列程序的运行结果是 #include "stdio.h"main() int x=-9,y=5,z=8; if(x<y) if(y<0) z=0; else

30、z+=1; printf("%dn",z);A)6B)7C)8D)9您的答案为:D参考答案为:D 现有定义int k=1;则执行语句while(+k<4);后,k的值为 A)4B)5C)6D)8您的答案为:A参考答案为:A 以下程序的运行结果为 #include "stdio.h"main() int m,n; for(m=0,n=10;m<n;m+=3,n-); printf("%d,%dn",m,n);A)6,7B)7,6C)9,7D)7,9您的答案为:C参考答案为:C作业五 数组选择:21题 1、若有以下数组说明,则

31、数值最小和最大元素的下标分别是( )。 int a12=1,2,3,4,5,6,7,8,9,10,11,12; A.1,12 B.0,11 C.1,11 D.0,12您的答案为:B参考答案为:B 2、若有以下数组说明,且i=10;则aai元素数值是( )。 int a12=1,4,7,10,2,5,8,11,3,6,9,12; A.10 B.9 C.6 D.5您的答案为:C参考答案为:C 3、设有定义:char s12=“string”;,则printf(“%dn”,strlen(s);的输出是( )。 A.6 B.7 C.11 D.12您的答案为:A参考答案为:A 4、以下对数组描述正确的是

32、( )。 A.数组一旦定义其大小是固定的,但数组元素的类型可以不同 B.数组一旦定义其大小是固定的,且数组元素的类型必须相同 C.数组一旦定义其大小是可变的,且数组元素的类型可以不同 D.数组一旦定义其大小是可变的,但数组元素的类型必须相同您的答案为:B参考答案为:B 5、以下叙述中错误的是( )。A.不可以用数组名对数组整体进行操作 B.数组名代表的是数组所占存储区的首地址,其值不可改变 C.当程序执行中,数组元素的下标超出所定义的下标范围时,系统将给出“下标越界”的出错信息 D.可以通过赋初值的方式确定数组元素的个数您的答案为:C参考答案为:C 6、下列定义的字符数组中,printf(“%

33、sn”,str2);语句的输出是( )。 char str320=“basic”,“foxpro”,“windows”; A.basic B.foxpro C.windows D.输出语句出错您的答案为:C参考答案为:C 7、以下能正确将字符串“Boy”进行完整赋值操作的是( )。 A.char s3=B,oy; B.char s=“Boy”; C.char s3=“Boy”; D.char s3;s0=B;s1=o;s2=y;您的答案为:B参考答案为:B 8、定义: char a="China" 则数组 a所占的空间为( )。 A.4个字节 B.5个字节 C.6个字节 D

34、.7个字节您的答案为:C参考答案为:C 9、若有int a4=1,2,3,4;,则aa0+2*a2-a3的值( )。 A.1 B.2 C.3 D.4您的答案为:D参考答案为:D 10、设变量定义为char format=“s=%dn”;则数组format中有( )个元素。 A.4 B.5 C.6 D.7您的答案为:C参考答案为:C 11、静态整型数组不赋初值时,其各元素的值是( )。 A.不定值 B.-1 C.0 D.1您的答案为:C参考答案为:C 12、有以下程序段的输出结果是( )。char a=“abcdefgh”;int m,n;m=sizeof(a);n=strlen(a);prin

35、tf(“%d,%dn”,m,n); A.9,9 B.8,9 C.8,8 D.9,8您的答案为:D参考答案为:D 13、以下程序段的输出结果是( )。int i,a10; for(i=9;i>=0;i-) ai=10-i; printf(“%d%d%d”,a2,a5,a8); A.258 B.741 C.852 D.369您的答案为:C参考答案为:C 14、以下程序运行后的输出结果是( )。main() int p8=11,12,13,14,15,16,17,18,i=0,j=0; while(i+<7) if(pi%2) j+=pi; printf("%dn",

36、j); A.42 B.45 C.56 D.60您的答案为:B参考答案为:B 15、以下程序执行后输出结果是( )。main() int p7=11,13,14,15,16,17,18,i=0,k=0; while(i<7&&pi%2) k=k+pi; i+; printf("%dn",k);A.58 B.56 C.45 D.24您的答案为:D参考答案为:D 16、设int x10=0,2,4;,假定在VC编译环境下,int类型变量占用四个字节,则数组x在内存中所占字节数是( )。A.6 B.12 C.20 D.40您的答案为:D参考答案为:D 17、定

37、义: int a22; 则数组 a在内存中的存放顺序为( )。 A.a00、a10、a01、a11 B.a00、a01、a10、a11 C.a00、a11、a01、a10 D.a00、a11、a10、a01您的答案为:B参考答案为:B 18、以下数组定义中不正确的是( )。 A.int a23; B.int b3=0,1,2,3; C.int c100100=0; D.int d3=1,2,1,2,3,1,2,3,4;您的答案为:D参考答案为:D 19、以下程序的输出结果是( )。main() int a33=1,2,3,4,5,6,i,j,s=0; for(i=1;i<3;i+) fo

38、r(j=0;j<=i;j+) s+=aij; printf(“%dn”,s); A.18 B.19 C.20 D.21您的答案为:A参考答案为:A 20、数组定义为int a32=1,2,3,4,5,6,数组元素( )的值为6。 A.a32 B.a21 C.a12 D.a23您的答案为:B参考答案为:B 21、以下程序的输出结果是( )。main() int i,x33=1,2,3,4,5,6,7,8,9; for(i=0;i<3;i+) printf(“%d,”,xi2-i); A.1,5,9 B.1,4,7 C.3,5,7 D.3,6,9您的答案为:C参考答案为:C作业六 指针

39、选择:15题 1.执行以下程序后,a的值为( ). main() int a,k=4,m=6,*p1=&k,*p2=&m; a=p1=&m; printf("a=%d",a); A)-1 B)1 C)0 D)4您的答案为:C参考答案为:C 2.以下程序中调用scanf函数给变量a输入数值的方法是错误的,其错误的原因是( ). main() int *p,*q,a,b; p=&a; printf("ninput a:"); scanf("%d",*p); A)*p表示的是指针变量p的地址. B)*p表示的是变量a的值,而不是变量a的地址. C)*p表示的是指针变量p的值 D)*p只能用来说明p是一个指针变量您的答案为:B参考答案为:B 3.已有定义 int k=2;int *ptr1,*ptr2;且ptr1 、ptr2均已指向变量k,下面不能正确执行的赋值语句是( ) A) k=*ptr1+*ptr2 B) prt2=k; C) ptr1=ptr2 D) k=*ptr1*(*ptr2);您的答案为:B参考答案为:B 4.变量的指针,其含义是指变量的( ) A) 值

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论