ImageVerifierCode 换一换
格式:DOCX , 页数:123 ,大小:84.55KB ,
资源ID:9912971      下载积分:12 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/9912971.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C语言谭浩强第四版例题.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

C语言谭浩强第四版例题.docx

1、C语言谭浩强第四版例题例1.1要求在屏幕上输入以下一行信息.This is a C program.编写程序:include stdio。h / 这是编译预?处理命令int main( ) / 定义主函数 / 函数开始的标志 printf (”This is a C program。n”); / 输出所指定的一行信息 return 0; / 函数执行完毕时返回函数值0 例1.2求两个整数之和.编写程序:include / 这是编译预处理命令 int main( ) / 定义主函数 / 函数开始 int a,b,sum; / 本行是程序的声明部分,定义a、b、sum为整型变量 a = 123;

2、/ 对变量a赋值 b = 456; / 对变量b赋值 sum = a + b; / 进行a+b 的运算,并把结果存放在变量sum中 printf(sum is dn,sum); / 输出结果 return 0; / 使函数返回值为0 / 函数结束 例1.3求两个整数的较大者.编写程序:#include stdio.hint main( ) / 定义主函数 / 主函数体开始 int max(int x,int y); / 对被调用函数max的声明 int a,b,c; / 定义变量a,b,c scanf(”%d,%d”,&a,&b); / 输入变量a和b的值 c = max(a,b); / 调用

3、max函数,将得到的值赋给c printf(”max=%dn”,c); / 输出c的值 return 0; / 返回函数值为0int max(int x,int y) /定义max函数,函数值为整型, 形式参数x和y为整型 int z; / max函数中的声明部分,定义本函数中用到的变量z为整型 if (x y) z = x; else z = y; return(z); /将z的值返回,通过max带回到调用函数的位置例2.1求12345编写程序:include stdio.hint main( ) int i,t; t=1; i=2; while(iint main( ) int sign=

4、1; double deno=2.0,sum=1。0,term; / 定义deno,sum,term为双精度变量 while (deno=100) sign=sign; term=sign/deno; sum=sum+term; deno=deno+1; printf(”%fn,sum); return 0; 例3.1有人用温度计测量出用华氏法表示的温度(如 F,今要求把它转换为以摄氏法表示的温度(如 C) 。编写程序:include stdio.hint main ( ) float f,c; / 定义f和c为单精度浮点型变量 f=64.; / 指定f的值 c=(5。0/9)(f32); /

5、 利用公式计算c的值 printf(”f=%fnc=%fn,f,c); / 输出c的值 return 0; 例3。2 计算存款利息.有1000元,想存一年.有三种方法可选:(1)活期,年利率为r1 (2)一年期定期,年利率为r2(3)存两次半年定期,年利率为r3 请分别计算出一年后按三种方法所得到的本息和。编写程序:#include int main( ) float p0=1000,r1=0。0036,r2=0。0225,r3=0。0198,p1,p2,p3; p1 = p0 * (1 + r1); p2 = p0 (1 + r2); p3 = p0 (1 + r3/2) (1 + r3/2

6、); printf(”p1=fnp2=fnp3=fn”,p1,p2,p3); return 0; 例3.3 给定一个大写字母,要求用小写字母输出。编写程序:#include stdio。hint main ( ) char c1,c2; c1=A; / 将字符A的ASCII代码放到c1变量中 c2=c1+32; / 得到字符a的ASCII代码,放在c2变量中 printf(”cn”,c2); / 输出c2的值,是一个字符 printf(”%dn,c2); / 输出c2的值,是字符a的ASCII代码 return 0;例3。10 改写例3.3程序,使之可以适用于任何大写字母。从键盘输入一个大写字

7、母,在显示屏上显示对应的小写字母.编写程序:include int main ( ) char c1,c2; c1=getchar(); / 从键盘读入一个字符,赋给字符变量c1 c2=c1+32; / 得到字符a的ASCII代码,放在字符变量c2中 putchar(c2); / 输出c2的值,是一个字符 putchar(n); return 0; #include int main ( ) char c1,c2; c1=getchar(); / 从键盘读入一个大写字符,赋给字符变量c1 c2=c1+32; / 得到对应的小写字符的ASCII代码,放在字符变量c2中 printf(”大写字母:

8、%cn小写字母:%cn,c1,c2); / 输出c1,c2的值-大小写字符 return 0; 例3。4 给出三角形的三边长,求三角形面积.编写程序:include stdio.h#include math。hint main ( ) double a,b,c,s,area; / 定义各变量,均为double型 a=3.67; / 对边长a赋值 b=5。43; / 对边长b赋值 c=6.21; / 对边长c赋值 s=(a+b+c)/2; / 计算s area=sqrt(s(s-a)(sb)(s-c)); / 计算area printf(”a=ftb=%ftfn”,a,b,c); / 输出三边a

9、,b,c的值 printf(”area=%fn,area); / 输出面积area的值 return 0; 例3.5 求 方程的根。a、b、c由键盘输入 设 编写程序:include include math。h / 程序中要调用求平方根函数sqrt int main ( ) double a,b,c,disc,x1,x2,p,q; / disc是判别式sqrt(b*b-4ac) scanf(lflf%lf,a,b,&c); / 输入实型变量的值要用格式声明”%f disc=bb4*ac; if (disc0) printf(”This equation havt real rootsn”);

10、 else p=-b/(2.0*a); q=sqrt(disc)/(2.0*a); x1=p+q;x2=pq; / 求出方程的两个根 printf(x1=%7。2fnx2=%7.2fn,x1,x2); / 输出方程的两个根 return 0;例3.6 用%f输出实数,只能得到6位小数.编写程序:#include int main()double a=1.0; printf(%fn”,a/3); return 0;例 3。7 float型数据的有效位数。编写程序:include stdio.hint main()double a; a=10000/3。0; printf(%fn”,a); ret

11、urn 0;例3。8 先后输出BOY三个字符。 编写程序:#include stdio.hint main ( ) char a=B,b=O,c=Y; / 定义3个字符变量,并初始化 putchar(a); / 向显示器输出字符B putchar(b); / 向显示器输出字符O putchar(c); / 向显示器输出字符Y putchar (n); / 向显示器输出一个换行符 return 0; #include stdio。hint main ( ) char a,b,c; / 定义3个字符变量 a=B;b=O;c=Y; / 给3个字符变量赋值 putchar(a); / 向显示器输出字符

12、B putchar(b); / 向显示器输出字符O putchar(c); / 向显示器输出字符Y putchar (n); / 向显示器输出一个换行符 return 0; 例3.9 从键盘输入BOY三个字符,然后把它们输出到屏幕。编写程序:include int main ( ) char a,b,c; / 定义字符变量a,b,c a=getchar(); / 从键盘输入一个字符,送给字符变量a b=getchar(); / 从键盘输入一个字符,送给字符变量b c=getchar(); / 从键盘输入一个字符,送给字符变量c putchar(a); / 将变量a的值输出 putchar(b)

13、; / 将变量a的值输出 putchar(c); / 将变量a的值输出 putchar(n); / 换行 return 0; include stdio。hint main ( ) putchar(getchar()); / 将接收到的字符输出 putchar(getchar()); / 将接收到的字符输出 putchar(getchar()); / 将接收到的字符输出 putchar(n); return 0;例4。1 在例3。5的基础上对程序进行改进。题目要求是求 方程的根。由键盘输入a,b,c。假设a,b,c的值任意,并不保证 。需要在程序中进行判别,如果 ,就计算并输出方程的两个实根,

14、否则就输出“方程无实根的信息。 编写程序:include #include math.h / 程序中要调用求平方根函数sqrt int main ( ) double a,b,c,disc,x1,x2,p,q; / disc是判别式sqrt(bb4ac) scanf(”lf%lflf”,a,&b,c); / 输入双精度浮点型变量的值要用格式声明lf” disc=bb4a*c; if (disc0) printf(”This equation havt real rootsn); else p=b/(2。0*a); q=sqrt(disc)/(2。0a); x1=p+q;x2=pq; / 求出方

15、程的两个根 printf(”real roots:nx1=10.6fnx2=%10。6fn”,x1,x2); / 输出方程的两个根 return 0;例4.2 输入两个实数,按代数值由小到大的顺序输出这两个数。编写程序:#include int main() float a,b,t; scanf(%f,%f,a,b); if(ab) t=a; a=b; b=t; printf(%5.2f,%5。2fn”,a,b); return 0;例4。3 输入3个数a,b,c,要求按由小到大的顺序输出。编写程序:#include c) t=a; a=c; c=t; / 实现a和c的互换 if(bc) t=

16、b; b=c; c=t; / 实现b和c的互换 printf(”5.2f,5。2f,5.2fn,a,b,c); return 0;例4.4 输入一个字符,判别它是否大写字母,如果是,将它转换成小写字母;如果不是,不转换。然后输出最后得到的字符。编写程序:#include =A & ch=Z) ? (ch+32) : ch; printf(cn”,ch); return 0;例4。5有一函数:编一程序,输入一个x值,要求输出相应的y值。编写程序:程序1:include int main() int x,y; scanf(d”,x); if(x0) y=1; else if(x=0) y=0; e

17、lse y=1; printf(”x=%d,y=dn”,x,y); return 0;程序2:#include int main() int x,y; scanf(”%d,x); if (x=0) if (x0) y=1; else y=0; else y=-1; printf(x=d,y=dn,x,y); return 0;例4。6 要求按照考试成绩的等级输出百分制分数段,A等为85分以上,B等为7084分,C等为6069分 ,D等为 60分以下 。成绩的等级由键盘输入。编写程序:#include int main() void action1(int,int),action2(int,in

18、t); char ch; int a=15,b=23; ch=getchar(); switch(ch) case a: case A: action1(a,b);break; case b: case B: action2(a,b);break; default: putchar(a); return 0; void action1(int x,int y) printf(x+y=dn”,x+y);void action2(int x,int y) printf(x*y=dn,xy);例4。8 写一程序,判断某一年是否闰年。编写程序: 程序1: 程序2: include stdio.h in

19、clude int main() int main() int year,leap; int year,leap; scanf(d”,year); scanf(”%d,year); if (year4=0) if(year4!=0) leap=0; if(year%100=0) else if (year%100!=0) leap=1; if(year%400=0) else if(year%400!=0) leap=1; leap=0; else else leap=0; leap=1; if (leap) else printf(d is ”,year); leap=1; else pri

20、ntf(%d is not ,year); else printf(a leap year.n); leap=0; return 0; if (leap) printf(”%d is ,year); else printf(”%d is not ,year); printf(”a leap year。n”); return 0; include 程序3:int main() int year,leap; printf(”enter year:”); scanf(%d”,year); if(year%4=0 & year100!=0) | (year%400=0)) leap=1; else l

21、eap=0; if (leap) printf(”%d is ”,year); else printf(”%d is not ,year); printf(a leap year.n); return 0; 程序4:#include stdio.h include #include math。hint main() double a,b,c,disc,x1,x2,realpart,imagpart; scanf(%lf,%lf,%lf”,a,b,&c); printf(The equation ”); if(fabs(a)=3000) c=12; / 3000km以上为同一折扣 else c=s/250; / 3000km以下各段折扣不同,c的值不相同 switch(c) case 0: d=0; break; / c=0,代表250km以下,折扣d=0 case 1: d=2; break; / c=1,代表250到500km以下,折扣d=2% case 2: case 3: d=5; break; / c=2和3,代表500到1000km以下,折扣d=5% case 4: case 5: case 6: case 7: d=8; break; /

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1