C语言第三章答案.pdf_第1页
C语言第三章答案.pdf_第2页
C语言第三章答案.pdf_第3页
C语言第三章答案.pdf_第4页
C语言第三章答案.pdf_第5页
已阅读5页,还剩10页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

第三章 数据类型和表达式 3.1 把数学算式或不等式表示成C+表达式 12x 2 3 4 5 6 70(x(20 8ax-byc 94x+7y-2=3ab 10(5同时3x+20 11age(55或者pay(820 12place=江苏同时sex=女 13a(ch(z或者A(ch(Z 14s2=0同时(s1=x 或者 s1=X) 参考解答: 12*x*(1+x*x/3.0) 2(1+exp(x)/(1-exp(x) 3(-b+sqrt(b*b-4*a*c)/(2*a) 41/(pow(3,x)*log(2*x+k) 5pow(sin(x+PI/4),3)/(3+pow(cos(x-PI/4),3) /其中PI常量为 3.14159 61/7.0*pow(1+exp(x+1),n) 7x=0 coutabc; if(a=0 | b=0 | c=0) cout数据有错! n; exit(1); if(a+bc | a+cb | b+ca) cout数据有错! n; exit(1); double s=(a+b+c)/2; cout三角形面积: sqrt(s*(s-a)*(s-b)*(s-c)endl; 2#include #include void main() int n=5; /用n表示年数 double x=0.1; /用x表示扩大招生的 年增长率 double y=3000*pow(1+x,n); /用y表示5年后招生人数 couty=yendl; 3#include #include void main() int a,b,c,d; coutabcd; double v1,v2; /用v1和v2分别保存算术和几何平 均值 v1=(a+b+c+d)/4.0; v2=pow(a*b*c*d,0.25); cout算术平均值:v1endl; cout几何平均值:v2endl; 4#include #include #include void main() double a,b,x,y,temp; coutab; if(a+b=0)cout分母为0!n; exit(1); temp=2/(3*(a+b); /用temp计算两个公式中公共部分的值 x=temp*a*sin(a); y=temp*b*cos(b); coutx=x, y=yendl; 3.3 填空题(补充) 1数据类型int、char、bool、float、double等的类型长度分别为 、 、 、 和 。 2短整型、标准整型和长整型的最简关键字分别为 、 和 。 3常数-4.205、1200和6.7E-9分别具有 、 和 位有效数字。 4数值常量46、0173和0 x62对应的十进制值分别为 、 和 。 5字符常量k、n、/052和x66对应的数值(即十进制 的ASCII码值)分别为 、 、 、 和 。 6字符串Its40an40apple.n中包含有 个字符。 7枚举类型中的每个枚举值都是一个 ,它的值是一个 ,值的类型关键字为 。 8实数340.0和0.0527E8对应的规格化浮点数分别为 和 。 9常数100、-25、3.62、1E5和-4.73f的数据类型分别为 、 、 、 和 。 10若x的值为10,则x+=5的值和运算后的 的值相同,等于 。 11若x=5,y=10,则计算y*=+x表达式后,x和y的值分别为 和 。 12若x=25,则计算y=x+表达式后,x和y的值分别为 和 。 13假定x和ch分别为int型和char型,则sizeof(x)和sizeof(ch)的值 分别为 和 。 14假定x=64,y=88,则x2的值分别为 和 。 15假定x是一个逻辑量,则逻辑表达式x void main() race ra; ra=Black;coutra,; ra=White;coutra,; ra=Yellow;coutra,; coutBlack+White+Yellowendl; 2#include using namespace std; #define PI 3.14159 const int R=10; void main() double p,s; p=2*R*PI; s=R*R*PI; coutp=pendl; couts=sendl; 3#include void main() int i=0,j=1,k; k=i+=j; couti j kendl; k=(i+)*(+j); couti j kendl; k*=i+*-j; couti j kendl; 4#include void main() coutsizeof(bool) sizeof(char) ; coutsizeof(short) sizeof(int) ; coutsizeof(long) sizeof(float) ; coutsizeof(double) sizeof(long double) ; coutsizeof(int*) sizeof(double*)endl; 5#include #include /提供对输出数据项setw(5)的支持, /使其后一数据值显示占5个字符的 位置宽度 using namespace std; const int w=30; void main() int x,y; x=w2; coutsetw(5)wsetw(5)xsetw(5)yendl; x=w y=w | 10; coutsetw(5)wsetw(5)xsetw(5)yendl; x=w10; y=x coutsetw(5)wsetw(5)xsetw(5)yendl; 6#include void main() int x=10, y=-1; couty) couty) | (y0) ; cout(x=0) ; cout(x=0) ; cout(x=y) cout(x=y) | y)endl; 7#include void main() int x=5, y=10, k; (k=x)+=y; coutx y kendl; k=x+=y; coutx y kendl; k=x*=y; coutx y kendl; k=(x+,y+); coutx y kendl; k=x+, y+; coutx y kendl; 8#include #include void main() double x=15.72; double y,z; y=ceil(x); z=floor(x); coutx y zendl; y=floor(x+0.5); z=floor(x*10+0.5)/10; coutx y zendl; y=ceil(x-0.5); z=ceil(x*10-0.5)/10; coutx y zendl; 参考解答: 1. 0,1,2,3 2. p=62.8318 s=314.159 3. 1 1 1 2 2 2 3 1 4 4. 1 1 2 4 4 4 8 8 4 4 5. 30 120 7 30 10 30 30 20 10 6. 1 1 0 0 0 1 7. 5 10 15 15 10 15 150 10 150 151 11 10 152 12 151 8. 15.72 16 15 15.72 16 15.7 15.72 16 15.7 3.8 上机实验题(补充) 假定使用“d:VC语言上机练习第三章”作为当前工作目录,每个程序 的文件名由用户自行决定。 1让计算机随机出10道两位整数加法题供用户计算,每道题10分,计 算完成后打印出得分。 #include #include #include const int N=10; void main() srand(time(0); int i,x,y,z,c=0; for(i=1; i=N; i+) x=rand()%90+10; y=rand()%90+10; coutx+yz; if(x+y=z) c+; cout得分:c*10endl; 2打印出0(90(之间每隔5(的正弦值和余弦值。 #include /该头文件包含iostream.h中的全部内 容,并且 /还包含一些输出格式操作符,如 setw(n) #include const double RAD=3.14159/180; void main() coutsetw(5)isetw(10)sinsetw(10)conn; int i=0; while(i=90) coutsetw(5)isetw(10)sin(i*RAD) ; coutsetw(10)cos(i*RAD)endl; /setw(n)使后面一个数据的输出宽度为n i+=5; 3把从键盘上输入的一个正整数按数字位的相反次序输出。 #include void main() int num,rem; coutnum; do rem=num%10; num/=10; cout0); coutendl; 4打印出af中每个大小写字母所对应的ASCII码。 #include void main() char c1=A, d1=a, c2=F, ch; for(ch=c1; ch=c2; ch+) coutch:int(ch), ; coutd1:int(d1)endl; d1+; 5从键盘上输入两个整数,由用户回答它们的和、差、乘、除和取余 运算的结果,并统计出正确答案的个数。 #include void main() int x,y,z,c=0; coutxy; coutx+yz; if(x+y=z) c+; coutx-yz; if(x-y=z) c+; coutx*yz; if(x*y=z) c+; coutx/yz; if(x/y=z) c+; coutx%yz; if(x%y=z) c+; cout共5道题,答对c道题endl; 参考解答: 1运行结果 37+55=92 14+18=32 17+67=84 48+79=127 10+80=90 20+58=78 21+75=96 12+45=57 20+70=90 40+26=66 得分:100 2运行结果 i sin con 0 0 1 5 0.0871557 0.996195 10 0.173648 0.984808 15 0.258819 0.965926 20 0.34202 0.93

温馨提示

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

评论

0/150

提交评论