C语言实验报告第12章答案.pdf_第1页
C语言实验报告第12章答案.pdf_第2页
C语言实验报告第12章答案.pdf_第3页
C语言实验报告第12章答案.pdf_第4页
C语言实验报告第12章答案.pdf_第5页
已阅读5页,还剩9页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

-1- 第一章答案: 1.3 拓展实验 1.程序分析,预测运行结果,并上机编译、连接、运行。 #include intmain( ) printf(“hello everyone!n”); return 0; 程序的运行结果是屏幕上显示:hello everyone!。 提示 printf( )函数将双引号内的普通字符按原样输出; “n”是转义字符,含义为换行。 思考 如果 printf(“hello everyone!n”);修改为 printf(“helloneveryone!n”); 则程序的运行结果是:helloeveryone!。 2.程序改错, 请查找并修改以下程序中的语法错误, 使程序运行后在屏幕上显示一行信息。 #include int mian( ) printf(“I can do it!n”) return 0; 提示 (1)要调试本程序,应先关闭之前运行程序的工作区。 (2)注意体会输出窗口的提示信息,依次双击出错信息,可快速定位到出错位置附近。 (3)应把程序中的 mian 改为 main。 (4)C 语言程序要以“;”结束,注意在英文状态下输入。 (4)C 语言程序要以“”结束。 3.程序设计。编写一个 C 程序,实现输出如下结果: 姓名:张三丰 性别:男 年龄:105 提示 注意中英文转换。C 程序的标点符号需在英文半角状态输入。 3. #include intmain( ) printf(“姓名:张三丰n”); printf(“性别:男n”); printf(“年龄:105n”); return 0; -2- 第二章答案第二章答案 2.2 基础实验 一、程序分析 1.以下程序的运行结果是:*very good!*_。 #include intmain( ) printf(“*nvery good!n*n”); return 0; 2.以下程序若输入 25 和 43,则运行结果是:_43,25_。 #include intmain( ) int a,b,t; printf(“enter a,b,”); scanf(“%d%d”, t=a; a=b;b=t; printf(“%d,%d”,a,b); 3.以下程序的运行结果是:_x=1.08333_。 #include intmain( ) float x; x=1.0/2+1.0/3+1.0/4; printf(“nx=%fn”,x); return 0; 如果代码中相应的表达式改为 x=1/2+1/3+1/4,则运行结果是_x=0.000000_, 原因是_整型除整型,结果为整型_。 二、程序填空 1.以下程序实现的功能是:分别定义 4 个变量 a,b,c,d,其中 a 为字符型,b 为整型,c 为 单精度实型,d 双精度实型,分别将 a、98、3.2、17.668 赋给 4 个变量并输出。请将程序补充 完整,并分析程序的运行结果。 #include intmain_( )_ -3- chara; intb; _float_ c; double d; a=a_;_ b=98; c=3.2; d=17.668_; printf(“%c,%d,%f,%lfn”,a,b,c,d); return 0; 运行结果:_a,98,3.200000,17.668000_。 2.以下程序实现的功能是计算(10+24)*3 的结果,请将程序补充完整,并分析程序的运 行结果。 #include intmain( ) int x; _ x=(10+24)*3_; printf(“x=%dn”,x); return 0; 运行结果:_x=102_。 3.以下程序实现的功能是计算半径为 1.5 的圆的面积,请将程序补充完整,并分析程序 的运行结果。 #include #include_ #define PI 3.14_ intmain( ) float r=1.5; doubles; s=PI*pow(r,2); printf(“n %lfn”,s); return 0; 运行结果:7.065000_。 2.3 拓展实验 一、程序改错(以下程序存在错误,请调试程序并将错误找出后改正,运行程序,填写结果) -4- 1.以下程序实现的功能是对 u,v 进行初始化,并输出 u,v 的值。 行号源程序 1 2 3 4 5 6 #include intmain( ) int u=v=89; printf(“u=%d,v=%dn”,u,v); return 0; 找错 错误在 2 行 应改为:int u=89,v=89; 调试正确后 的运行结果 运行结果: u=89,v=89 2.下面的程序试图计算由键盘输入的任意两个整数的平均值。 行号源程序 1 2 3 4 5 6 7 8 #include intmain( ) int x,y,a; scanf(“%x,%y”, a=(x+y)/2; printf(“The average is: %dn”, a); return 0; 找错 错误在 4 行 应改为:scanf(“%d,%d”, 调试正确后 的运行结果 输入数据 2,6 1,4 运行结果: The average is:4 The average is:2(5/2,整型除整型, 结果为整型) 二、程序设计 1.输入任一整数 x,计算 y=3x2+2x-10 的值。 2.将小写字符b、o、y转换为大写。 1. #include intmain( ) float x,y; scanf(“%f”, y=3*x*x+2*x-10; printf(“y=%fn”, y); 2. #include intmain( ) char x,y,z; x=b;y=o;z=y; x-=32;y-=32;z-=32; printf(“%c%c%cn”, x,y,z); -5- 2.4 习题 一、选择题 1. 一个算法应该具有“确定性”等 5 个特性,下面对另外 4 个特性的描述中错误的是 () 。 A. 有 0 个或多个输入B.有 0 个或多个输出 C.有穷性D.可行性 2. 以下叙述中正确的是() 。 A.用 C 程序实现的算法必须要有输入和输出操作 B.用 C 程序实现的算法可以没有输出但必须要有输入 C.用 C 程序实现的算法可以没有输入但必须要有输出 D.用 C 程序实现的算法可以既没有输入也没有输出 3. 针对简单程序设计,以下叙述的实施步骤顺序正确的是() 。 A.确定算法和数据结构、编码、调试、整理文档 B.编码、确定算法和数据结构、调试、整理文档 C.整理文档、确定算法和数据结构、编码、调试 D.确定算法和数据结构、调试、编码、整理文档 4. C 语言中用于结构化程序设计的 3 种基本结构是() 。 A.顺序结构、选择结构、循环结构 B.if、switch、break C.for、while、do-whileD.if、for、continue 5. 以下叙述中错误的是() 。 A.用户所定义的标识符允许使用关键字 B.用户所定义的标识符应尽量做到“见名知意” C.用户所定义的标识符必须以字母或下划线开头 D.用户定义的标识符中,大、小写字母代表不同标识 6. 以下选项中合法的用户标识符是() 。 A.longB._2TestC.3DmaxD.for 7. 以下 4 个用户定义标识符中,全部合法的一组是() 。 A._mainencludeIntB.ifmaxturbo -6- C.txtREAL3COMD.intk_2_001 8. 以下不是 C 语言提供的转义字符的是() 。 A.B.C.074D.0 9. C 语言中,定义 PI 为一个符号常量,正确的是() 。 A. #definePI3.14B.#define C. #definePI =3.14D.#include 10. 在定义变量时同时给 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.int a =5, b = 5, c =5; 11. 在 C 语言中,要求参加运算的数必是整数的运算符是() 。 A./ B.* C.%D.= 12. 若 int k=7,x=12;则能使值为 3 的表达式是() 。 A.x%=(k%=5) B.x%=(kk%5)C.x%=kk%5 D.(x%=k)(k%=5) 13. 若 a 是 int 型变量,则执行下面表达式 a=25/3%3 后 a 的值为()。 A. 2B.0C.2.3D.25 14. 若以下选项中的变量已正确定义,则正确的赋值语句是() 。 A.x1=26.8%3;B.1+2=x2;C.x3-=12;D.x4=1+2=3; 15. 已知 char a=B,b=O,c=Y;int i;则表达式 i=a+b+c 的值为() 。 A.BOYB.BOYC.a+b+cD.234 16. 定义:int a=8,b=5,c; ,执行语句 c=a/b+0.4;后,c 的值为() 。 A.1.4B.1C.2.0D.2 17. 假定 x 和 y 为 double 型,则表达式 x=2,y=x+3/2 的值是() 。 A.3.500000 B.3 C.2.000000 D. 3.000000 18. int x=11,表达式(x+*1/3)的值是() 。 3B.4C.11D.12 19. 假设 a=5,则 printf(“%d,%dn”,a,a+ );语句的执行结果为() 。 A. 5,5 B.5 5C.6,5D.6 5 20. 运行如下程序段 int a=5;printf(“%d%dn”,a,(a+)+( a+);后运行结果是() 。 A.714B.612C.510D.711 21. 运行如下程序段 int i=10,j=1; printf(“%d,%dn”,i-,+j);后运行结果是() 。 A.9,2B. 10,2C. 9,1D. 10,1 22. 以下为非法的赋值表达式是() 。 A.n=(i=2,+i)B.j+C. +(j+1)D. x=j0 23. 设 a 和 b 均为 double 型变量,a5.5,b=2.5 则表达式(int)a+b/b 的值是() 。 -7- A.6.500000B.6C.5.500000D.6.000000 24. 已知 x=3,y=2,则表达式 x*=y+8 的值为() 。 A.3B.2C. 30D.10 25. 若 a 为 int 类型,且其值为 3,则执行完表达式 a+=a-=a*a 后,a 的值是() 。 A.-3B.9C.-12D.6 26. 已知 ch 是字符型变量,下面不正确的赋值语句是() 。 A.ch=boy;B.ch=0;C.ch=98D.ch=; 27. 执行下列程序片段时运行结果是() 。 int x=13,y=5; printf(“%d”,x%=(y/=2); A.3 B.2 C.1 D.0 28. 假设所有变量均为整型, 且 num=7,sum=7;则表达式 sum=num+,sum+,+num 执行 后的值为() 。 A. 7B.8C.9D.10 29. 设 x,i,j,k 都是 int 型变量,表达式 x=(i=4,j=16,k=32)计算后,x 的值为() 。 A. 4B.16C.32D.表达式不正确 30. 执行下列程序片段时运行结果是() 。 int x=5,y; y=2+(x+=x+,x+8,+x); printf(“%d”,y); A.13 B.14 C.15 D.16 二、填空题 1. C 语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符必须是字 母或下划线。 2. 在 C 语言中的实型变量分为单精度实型 float 和双精度实型 double 两种类型。 3. 表达式m%=3+n等价于_m= m%(3+n)_。 4. 若有定义int a=5,n=2;则执行表达式a%=(n%=2)+1后a的值是0。 5. 如果a=3,b=0,c=-1,以表达式(a+c) | b float f;double i ;则表达式 10+a+i*f 值的数据类型是 double。 8. 假设所有变量均为整型,则表达式(a=2,b=5,a+,b+,a+b)的值为 9。 三、程序分析题 1. 以下程序的运行结果是:_(a+b)*3=66_。 #include -8- int main( ) int a,b,s; a = 4;b =18; s = (a + b)*3; printf(“(a+b)*3=%dn”,s); return 0; 2. 以下程序的运行结果是:_8,9,4,17_。 #include int main( ) int i, j, m, n; i=6; j=9; m=+i-3; n=j+(+i); printf(“%d,%d,%d,%dn”, i, j, m, n); return 0; 3. 数字字符 0 的 ASCII 值为 48,以下程序的运行结果是:_22_。 #include int main() char a=1,b=2; printf(“%c”,b+); printf(“%dn”,b-a); return 0; 4. 以下程序的运行结果是:_2,1_。 #include int main() int a,b,d=25; a=d/10%9; b=a printf(“%d,%dn”,a,b); return 0; -9- 5. 以下程序的运行结果是:_b=3_。 #include int main() int a,b; printf(“b=%d”,(a=3,a+5,a+); return 0; 四、程序填空题 1.输入 2 个整数 a,b,不通过增加变量的方法实现 a,b 交换。 #include int main() int _a,b_; printf(“enter a,b:”); scanf(“%d,%d”, a=a+b;b=a-b; a=a-b_; printf(“a=%d,b=%d”,a,b); return 0; 2.计算求(2x+3)/6 的值。 #include int main( ) int x=10,y ; y=_(2*x+3)/6_; printf(“y=%dn”,_y_); return 0; 五、程序设计题 1.输入一个三位数,将该数逆序输出。如,输入 123,则输出 321。 2.编写程序,把 560 分钟换算成用小时和分钟表示,然后进行输出。 1. #include intmain( ) int n,ge,shi,bai; scanf(“%d”, ge=n%10; shi=n/10%10; bai=n/100; n=ge*100+shi*10+bai; printf(“%dn”, n); 2. #include intmain( ) int x,y; x=560/60; y=560%60; printf(“560分钟为%d小时%d分钟n”,x,y); return 0; -10- -11- 1.4 习题 一、选择题 1. C 语言属于() 。 A.机器语言 B.低级语言 C.中级语言 D.高级语言 2. 以下叙述中正确的是() 。 A.C 语言程序将从源程序中第一个函数开始执行 B.可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行 C.C 语言规定必须用 main 作为主函数名,程序从此开始执行,在此结束 D.main 作为用户标识符,用以命名任意一个函数作为主函数 3. C 语言规定,在一个源程序中,main 函数的位置() 。 A.必须在最开始 B.必须在系统调用的库函数的后面 C.可以任意 D.必须在最后 4. 以下叙述中错误的是() 。 A.一个 C 程序中可以包含多个不同名的函数 B.一个 C 程序只能有一个主函数 C.C 程序在书写时,有严格的缩进要求,否则不能编译通过 D.C 程序中主函数必须用 main 作为函数名 5. 以下叙述中正确的是() 。 A.C 程序中的注释只能出现在程序的开始位置和语句的后面 B.C 语言程序书写时,不区分大小写字母 C.C程序书写格式自由,一个语句可以写在多行上

温馨提示

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

评论

0/150

提交评论