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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

c语言习题答案.docx

1、c语言习题答案实验一(1) 编程求37+29的值,实习VC环境。#includevoid main() int a,b,sum;a=37; b=29;sum=a+b;printf(sum=%d,sum);(2) 从键盘输入三个整数,求出最大数并输出。#includevoid main() int a,b,c,y; int max(int x,int y); printf(input a,b,and c:); scanf(%d,%d,%d,&a,&b,&c); y=max(a,b); y=max(y,c); printf(nmax=%dn,y);int max(int x,int y)int z

2、;if(xy) z=x;else z=y;return(z);(3) 通过上机实践,运行下列程序并分析输出结果。A 程序代码#includevoid main() char ch=a; printf(%c对应的ASCII码是:%dn,ch,ch); 程序输出结果:a对应的ASC|码是:97 B 程序代码#includevoid main() int a=168; float b=123.456; float x=35.567,y; printf(a=%5dn,a); printf(a=%-5dn,a); printf(b=%6.2fn,b); printf(b=%en,b); y=(int)(

3、x*100+0.5)/100.0; printf(x=f,y=%fn,x,y);程序输出结果:a=168a=168b=123.46b=1.234560e+002x=f,y=35.567001C程序代码#includevoid main() int a=168; printf(十进制数%d对应的八进制数是%on,a,a); printf(十进制数%d对应的十六进制数是%xn,a,a);程序输出结果:十进制数168对应的八进制数是250十进制数168对应的十六进制数是a8实验二2.1顺序结构2.1.1已知a=1.5,b=5.3,c=2.9,计算s=-4ac的结果并输出。#includevoid m

4、ain() float a,b,c,s; a=1.5; b=5.3; c=2.9; s=b*b-4*a*c; printf(s的值是%fn,s);2.1.2输入某学生的三个科目的期末考试成绩,计算出该学生的成绩总分和平均分。#include void main() int math,english,c_program; float sum ,average; printf(input math,english,c_program:); scanf(%d,%d,%d,&math,&english,&c_program); sum=math+english+c_program; average=s

5、um/3; printf(sum=%.0f,average=%.5f,sum,average);2.1.3输入圆的半径,计算圆的面积,设圆周率为3.1416.#includeint main() float r,s; printf(请输入半径:); scanf(%f,&r); s=3.1416*r*r; printf(圆的面积为%.6f,s);2.1.4输入一个两位数,将其个位数和十位数互换后变成一个新的数,输出这个数。#include int main(void)int n,a,b;printf(input n:);scanf(%d,&n);b=n%10;a=n/10;n=b*10+a;pr

6、intf(%dn,n);return 0;2.1.5输入两个数a和b,将两数的值互换后输出新值。#include void main() int x,y,t; scanf(%d%d,&x,&y); t=x; x=y; y=t; printf(x=%d,y=%dn,x,y); 2.2简单分支结构2.2.1输入两个整数,求出其中的较小值输出。 #includeint main() int a,b,min; printf(请输入 a,b:n); scanf(%d,%d,&a,&b);if (ab)min=a;else min=b;printf(最小值是 %dn,min);return 0;2.2.2

7、 输入x的值并计算分段函数y的值。 +2x x=2#include int main(void) double x,y; scanf(%lf,&x); if(x2) y=x*x+2*x; else y=2*x-1; printf(%.6f,y); return 0;2.2.3 输入两个整数并判断两数是否相等,输出相应结论。 #includeint main() int a,b; printf(请输入两个整数:n); scanf(%d,%d,&a,&b); if(a=b) printf(a等于b); else printf(a不等于b); return 0;2.2.4 输入一个整数,若为负数,求

8、出它的平方;若为正数,求出它的立方,并输出结果。#includevoid main()printf(请输入一个整数:);double x,y;scanf(%lf,&x);if(x0) y=x*x;else y=x*x*x;printf(y=f(%f)=%fn,x,y);2.2.5 输入三个整数,用if-else结构求出其中的最大值。提示:首先求出两个数的较大值放在一个变量里,然后用这个变量和第三个数再进行一次比较。 #includeint main() int a,b,c,max; printf(请输入三个数); scanf(%d,%d,%d,&a,&b,&c); if(ab) max=a;

9、else max=b; if(cmax) max=c; else max=a; printf(最大值为%dn,max); return 0; 2.3简单循环结构2.3.1 计算1+4+7+301。 #include void main() int i,sum; sum=0; for(i=1;i=301;i=i+3) sum=sum+i; printf(sum=%dn,sum); 2.3.2 循环输入某学生八个科目期末考试成绩,计算出该学生成绩总分和平均分。 #includeint main(void) int i,a; float sum,average; sum=0; for(i=1;i=8

10、;i+) scanf(%d,&a); sum=sum+a; printf(成绩总分为%fn,sum); printf(平均分为%fn,sum/8); return 0;2.3.3 输入n的值,计算n! #includeint main(void) int n,i,a; a=1; printf(请输入n的值:%dn); scanf(%d,&n); for(i=1;i=n;i+) a=a*i; printf(积=%dn,a); return 0 ;2.3.4 显示110平方,输出结果如下图所示:1*1=12*2=43*3=94*4=165*5=256*6=367*7=498*8=649*9=811

11、0*10=100 #includeint main(void)int i,a;for(i=1;i=10;i+)a=i*i;printf(%d*%d=%dn,i,i,i*i);return 0;2.3.5 计算1-3/4+5/7-7/10+的前n 项之和。#include void main()int i,n;float item,flag,sum; sum=0; flag=1;printf(input n:); scanf(%d,&n);for(i=1;i=n;i+) item=flag*(2*i-1)/(3*i-2); sum=sum+item; flag=-flag; printf(%fn

12、,sum); 实验三3.1.1输入一个整数x,判定是否为5的倍数。#includeint main(void) int x; printf(x= ); scanf(%d,&x); if(x%5=0) printf(能整除5); else printf(不能整除5); return 0;3.1.2输入x,计算并输入下列分段函数对应的值。 -5 x0Y= 0=x1#includeint main(void) float x,y; printf(x= ); scanf(%f,&x); if(x1) y=x/2; else y=x*x+2;printf(对应值为%.2fn,y);return 0 ;3

13、.1.3某商场给顾客购物的折扣率如下:购物金额300元 不打折300=购物金额500元 9折500元=购物金额 7折要求输入一个购物金额(x),输出打折率(rate)以及购物实际付款金额(x*rate)#includeint main(void) int x,y; printf(x= ); scanf(%d,&x); if(x=300&x500) y=0.9*x; printf(打9折,付款%dn,y); else y=0.7*x; printf(打7折,付款%dn,y); return 0;3.1.4求解一元二次方程+b的实数解。#include#includeint main(void)

14、int a,b,c,d,x1,x2; printf(a= ,b= ,c= ); scanf(%d,%d,%d,&a,&b,&c); d=b*b-4*a*c; if(d0) double sqrt(double d); x1=(-b+sqrt(d)/(2*a); x2=(-b-sqrt(d)/(2*a); printf(x1=%dn,x2=%dn,x1,x2); else if(d=0) x1=(-b+sqrt(d)/(2*a); printf(x1=x2=%dn,x1); else printf(没有实数解); return 0;3.1.5从键盘输入10个字符,将所有的英文字母转换为大写后输出

15、。#includeint main(void)char i,ch;printf(请输入 );for(i=1;i=a&ch=z) ch=ch-32; putchar(ch);return 0;3.1.6从键盘输入10个字符,统计其中英文字母、空格、数字字符和其他字符的个数。#includeint main(void) char ch,i; int letter,space,digiter,other; letter=space=digiter=other=0; for(i=1;i=a&ch=A&ch=0&ch=9) digiter+; else other+; printf(letter=%d,

16、space=%d,digiter=%d,other=%dn,letter,space,digiter,other);return 0;3.2.1输入一个四位整数的年份,判断是否为闰年。#includeint main(void) int x,a,b,c; printf(输入年份:); scanf(%d,&x); a=x%4; b=x%100; c=x%400; if(a=0 & b!=0)|(c=0) printf(闰年); else printf(不是闰年); return 0;3.2.2假设自动售货机出售4种商品,薯片、爆米花、巧克力和可乐,售价分别是每份3.0元、2.5元、4.0元和3.

17、5元。在屏幕上显示以下菜单,用户可以连续查询商品的价格,当查询次数超过五次时,退出查询;不到五次时,用户可以选择退出。当用户输入编号14,显示对应商品的价格;输入0,退出查询;输入其他编号,显示价格为0。#includeint main(void) char price; int i; printf(请输入商品的名称:n); for(i=1;i=5;i+) price=getchar();getchar(); switch(price) case 1:printf(售价3.0元n);break; case 2:printf(售价2.5元n);break; case 3:printf(售价4.0

18、元n);break; case 4:printf(售价3.5元n);break; case 0:printf(退出查询n);break; default :printf(价格为0元n);break; return 0;3.2.3编写一个程序输入某人的身高(cm)和体重(kg),按下式确定其体重是否为标准、过胖或过瘦。判断标准为:标准体重=身高-110;超过标准体重5kg为过胖;低于标准体重5kg为过瘦。#includeint main(void) int x,y,z; printf(请输入身高和体重:n); scanf(%d,%d,&x,&y); z=x-110; if(y-z5) print

19、f(过胖); else if(y-z-5) printf(过瘦); else printf(标准); return 0;3.2.4编写一个程序,计算购买某物品的总金额,该物品的单价为5元/公斤,购买5公斤以上打九折,购买10公斤以上打八折,购买20公斤以上打7折,购买50公斤以上打6折,购买100公斤以上打5折。(用多分支if语句求解)#includeint main(void) float x,y; printf(购买量n); scanf(%f,&x); if(x=5 & x=10 & x=20 & x=50 & x100) y=0.5*5*x; else y=5*x; printf(付款%

20、.2fn,y); return 0;3.2.5编写一个程序,输出给定的某年某月的天数。#includeint main(void) int year,month,days,leap; printf(年,月:); scanf(%d,%d,&year,&month); switch(month) case 1: case 3: case 5: case 7: case 8: case 10: case 12: days=31; break; case 4: case 6: case 9: case 11: days=30; break; case 2: if(year%4=0 & year%100

21、!=0 | year%400=0) leap=1; else leap=0; if (leap) days=29; else days=28; printf(%d年%d月的天数为%d天n,year,month,days); 实验四4.1.1输入一批正整数(以零或负数为结束标志)求其中的奇数和。#include#includeint main(void) int data,sum; sum=0; printf(输入一批正整数(以零或负数为结束标志): ); scanf(%d,&data); while(data0) if(data%2=1) sum=sum+data; scanf(%d,&dat

22、a); printf(奇数和是%d.n,sum); return 0;4.1.2输入两个整数a和n,求a+aa+aaa+(n个a)之和。例如输入2和3,输出246(2+22+222)提示:可采用递推的方法计算当前项item=item*10+a#includeint main(void) int a,n,item,i,sum; i=1; sum=0; item=0; printf(请输入两个整数a和n: ); scanf(%d,%d,&a,&n);while(i=n)item=item*10+a;sum=sum+item;i=i+;printf(结果为%dn,sum);return 0;4.1.

23、3编写程序:计算2/1+3/2+5/3+8/5的 近似值。要求计算前n项之和,保留2位小数(该序列从第二项起,每一项的分子是前一项分子与分母的和,分母是前一项的分子)#includeint main(void) float n,i,sum,a,b,item; printf(请输入n的值:); scanf(%f,&n); sum=0; i=1; a=2; b=1; item=0;while(i=n) sum=sum+a/b; item=a; a=a+b; b=item; i=i+;printf(结果为%.2fn,sum);return 0;4.1.4编写一个程序,找出被2,3,5整除时余数均为1

24、的最小的10个自然数。#include int main(void)int x,i;i=0;x=1;while(i10) if(x%2=1 & x%3=1 & x%5=1) printf(%dn,x); i+; x+; return 0;4.1.5输入一个正整数,求它的位数以及各位数字之和,例如123的位数是3,各位数字之和是6.#includeint main(void) int number,digit,i,sum; i=0; sum=0; printf(输入一个正整数:); scanf(%d,&number); while(number!=0) digit=number%10; number=number/10; sum=sum+digit; i=i+; printf(n,digit); printf(该整数的位数是%dn,各位数字之和是%dn,i,sum); return 0;4.1.6猴子吃桃问题。猴子第一天摘下若干个桃子,当时就吃了一半,还不过瘾,就又吃了一个。第二天又将剩下的桃子吃掉一半,又多吃了一个。以后每天都吃前一天剩下的一半零一个。到第10天在想吃的时候就剩一个桃子了,求第一天共摘下来

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

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