c程实验习题答案

上传人:第*** 文档编号:38741339 上传时间:2018-05-07 格式:DOC 页数:21 大小:170.50KB
返回 下载 相关 举报
c程实验习题答案_第1页
第1页 / 共21页
c程实验习题答案_第2页
第2页 / 共21页
c程实验习题答案_第3页
第3页 / 共21页
c程实验习题答案_第4页
第4页 / 共21页
c程实验习题答案_第5页
第5页 / 共21页
点击查看更多>>
资源描述

《c程实验习题答案》由会员分享,可在线阅读,更多相关《c程实验习题答案(21页珍藏版)》请在金锄头文库上搜索。

1、第一章第一章C 语言概述语言概述问题与思考1若有源程序文件 t1.c,编译后生成的目标文件名是 _t1.obj_,连接后生成的文 件名是_t1.exe_,它们位于磁盘什么位置?默认情况下是 obj 和源文件在同一目录下, exe 在源文件目录下的 debug 目录下,可以在编译环境中设置到其他地方。2程序 1_3.c 中输出的 10!值是多少?3628800第第 2 章章 数据与数据类型数据与数据类型问题与思考1实验一的程序 1 中,语句 a=1+1/2+1/3+1/4;执行后变量 a 的值是_1_。怎样 修改程序才能得到正确的结果? 将 a=1+1/2+1/3+1/4 改为 a=1+1/2.

2、0+1/3.0+1/4.0; 2实验二中你用什么样的方式定义符号常量?还可以用什么方法定义符号常量? 可以通过 Define 宏定义和 const 常量定义两种方式定义符号常量3直接阅读实验四的程序,你认为三条输出结果是什么?程序运行得到的结果是什 么?能分析一下为什么是这样的结果? 4实验五的程序运行时,如果输入数据 10 20 40 ,运行时会出现什么结果?为什 么?息样避免这样的情况发生?面积出现不可预估值, pow 参数为负数,即两边之和不大于第三边,应在算面积 之前用 if 语句判断。 5下面程序段执行后,问:变量 a、b 在内存中所占字节数分别为 _4_、_4_,其值分别为_20_

3、、_40_。int a=-6.56; float b; b=(a=4*5,a*2),a+6; 6下列定义变量的语句中错误的是_。A) int _int; B) double int_; C) char For; D) float US$; 7若变量 x、y 已正确定义并赋值,下面符合 C 语言语法的表达式是_A_。A) +x,y=x- B) x+1=y C) x=x+10=x+y D) double(x)/10 8数字字符 0 的 ASCII 的值为 48,下面程序运行后输出结果是_。main() char a=1,b=2;printf(“%c,“,b+);printf(“%dn“,b-a);

4、A) 3,2 B) 50,2 C) 2,2 D) 2,509设有 int x=11; 则表达式 x+*1/3 的值是_。A) 3 B) 4 C) 11 D) 12第三章第三章 程序控制结构程序控制结构习题三第一部分:输入与输出1 1已有如下定义和输入语句,若要求已有如下定义和输入语句,若要求 a,b,c1,c2a,b,c1,c2 的值分别为的值分别为 5 5、6 6、A A 和和 B B,当从第一列,当从第一列 开始输入数据时,正确的数据输入方式是开始输入数据时,正确的数据输入方式是 _ (表示回车表示回车) )。int a,b; char c1,c2; scanf(“%d%c%d%c“, A

5、) 5 A 6 B B) 5 A6B C) 5A6B D) 5A6 B 2 2以下说法正确的是以下说法正确的是_。 A)输入项可以为一个实型常量,如 scanf(“%f”,3.5); B)只有格式控制,没有输入项,也能正确输入,如 scanf(“a=%d,b=%d”); C)当输入实型数据时,格式控制部分应规定小数点后的位数,如 scanf(“%4.2f”,D)当输入数据时,必须指明地址,如 scanf(“%f”, E)可以采用不同的格式符,实现对一个实型数据以八进制或十六进制形式输入/输 出。 F)整型数据不能使用%f 或%lf 格式符。 3若 a 是 int 型变量,则表达式(a=5*6,

6、a*3),a+8 的值是 _ 。 4 4若有定义:若有定义:intint b=7;b=7; floatfloat a=2.5,c=4.7;a=2.5,c=4.7; 则表达式则表达式 a+(int)(b/3*(int)(a+c)/2)%4a+(int)(b/3*(int)(a+c)/2)%4 的值为的值为_5.55.5_。 5 5输出长整型数据使用格式符输出长整型数据使用格式符_%ld%ld_,输出无符号的整数用格式符,输出无符号的整数用格式符_%u%u_ ,以指,以指 数形式输出单精实数用格式符数形式输出单精实数用格式符_%e_%e_。 6 6下面程序运行时输入:下面程序运行时输入:1010

7、11 ,输出,输出_a=8,b=17a=8,b=17_。#include void main() int a,b;scanf(“%o%x“,printf(“a=%d,b=%dn“,a,b); 7下面程序段执行时,怎样输入才能让 a=10,b=20 ?_a=10,b=20_ int a,b; scanf(“a=%d,b=%d“, 8 8若若 a a 和和 b b 均为均为 intint 变量,以下语句的功能是变量,以下语句的功能是_交换交换 a a 和和 b b 的值的值_。a+=b;b=a-b;a-=b;a+=b;b=a-b;a-=b; 9在 scanf 函数调用中,可以在格式字符和%之间加一

8、星号*,它的作用是_本输入项 在读入后不赋给相应的变量_。 1010a a+ + +、 + + +a a、 a a= =a a+ +1 1 都能实现使变量都能实现使变量 a a 的值增的值增 1 1,与之等效的表达式还有,与之等效的表达式还有_ a+=1a+=1_第二部分:分支结构1若执行下面的程序时从键盘上输入 5,则输出结果是_main()int x;scanf(“%d“, if(x+5)printf(“%dn“, x);else printf(“%dn“, x-);A)7B)6C)5D)4 2已知 a,b,m,n,c,d 变量的定义如下,则执行完下列表达式后 m,n 的值为_int a=

9、3,b=4,m=0,n=0,c=3,d=4; (m=a0+41 的运算结果和 a 的值分别是_ A) 0 和 2 B) 0 和 3 C) 1 和 2 D) 1 和 3 13假定所有变量均已正确定义,下列程序段运行后 x 的值是_ok1=1;ok2=2;ok3=3;x=15;if(!ok1) x-;else if(ok2) if(ok3) x=3;else x=4; A) 14B) 4C) 15D) 3 14下面程序的输出结果是_void main() int x=1,a=0,b=0;switch(x) case 0 :b+;case 1 :a+;case 2 :a+;b+;printf(“a=

10、%d,b=%dn”,a,b); A) a=2,b=1B) a=1,b=1C) a=1,b=0D) a=2,b=2 15. 两次运行下面的程序,如果从键盘上分别输入 6 和 4,则输出结果分别是_void main( ) int x;scanf(“%d“,if(x+5)printf(“%d“,x);else printf(“%dn“,x-); A) 7 和 5 B) 6 和 3 C) 7 和 4 D) 6 和 4 16有定义:int a=1,b=3,c=5,d=4,x; 则执行完下面一段程序后 x 的值是 _。if(a=0|b=0)if(abc) t=1;else if(ac,cb) t=b;b

11、=a;a=t;printf(“%d %d %dn“,a,b,c); 22. 以下程序运行后的输出结果是_2 1_。void main() int x=1,y=0,a=0,b=0;switch(x)case 1:switch(y) case 0:a+;break;case 1:b+;break;case 2:a+;b+;break;printf(“%d %dn“,a,b); 23有以下程序void main( ) int i=1,j=1,k=2;if(j+|k+) 执行后输出结果是_。 A) 1,1,2 B) 2,2,1 C) 2,2,2 D) 2,2,3 24以下程序执行后输出结果是_。voi

12、d main( ) int a=3,b=4,c=5,d=2;if(ab)if(bc)printf(“%d“,d+1);elseprintf(“%d“,+d+1);printf(“%dn“,d); A) 2 B) 3 C) 43 D) 44 25以下程序执行后输的结果是_-4_ 。main( ) int n=0,m=1,x=2;if(!n) x-=1;if(m) x-=2;if(x) x-=3; printf(“%dn“,x); 第三部分:循环控制1对下面程序段描述正确的是_。int k=10;while(k=0) k=k-1; A) while 循环执行 10 次 B) 循环是无限循环 C)

13、循环体语句一次也不执行 D) 循环体语句执行一次 2语句 while(!E);中的表达式!E 等价于_.A) E=0 B) E!=1 C) E!=0 D) E=1 3下面程序段的运行结果是_.int n=0; while(n+main()int num=0;while(num main()int y=10;doy-;while(-y);printf(“%dn“,y-); A) -1 B) 1 C) 8 D) 0 8若 i 为整型变量,则以下循环执行次数是_.for(i=2;i=0;)printf(“%d“,i-); A) 无限次 B) 0 次 C) 1 次 D) 2 次 9执行语句 for(i

14、=1;i+,则下面程序的运行结果是 _66277879_。#include 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; putchar(n); 12.下面程序段是从键盘输入的字符串中统计数字字符的个数,用换行符结束循环。请 填空。int n=0,c;c=getchar();while(_c!=n_)if(_c=0scanf(“%d%d“,if(mmain()int a,s,n,count;a=2;s=0;n=1;count=1;while(count_ ,若在程序中用到 “ strlen() ” 函数时,应

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 学术论文 > 毕业论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号