C语言程序设计实验指导书课后答案(共32页).doc
《C语言程序设计实验指导书课后答案(共32页).doc》由会员分享,可在线阅读,更多相关《C语言程序设计实验指导书课后答案(共32页).doc(32页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上实验一(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
2、)int z;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=
3、(int)(x*100+0.5)/100.0; printf(x=f,y=%fn,x,y);程序输出结果:a=168a=168b=123.46b=1.e+002x=f,y=35.C程序代码#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 main()floa
4、t 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=sum/3; printf(s
5、um=%.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;printf(%dn,n);return
6、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 输入x的值并计算分段函数y的值。 +2x
7、 x=2#include int main(void)double x,y;scanf(%lf,&x);if(x2) y=x*x+2*x;elsey=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 输入一个整数,若为负数,求出它的平方;若为正数,求出它的立方,并输出结果。#incl
8、udevoid main()printf(请输入一个整数:);double x,y;scanf(%lf,&x);if(x0)y=x*x;elsey=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; else max=b; if(cmax) max=c; els
9、e 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;i+) scanf(%d,&a); sum=sum+a; pri
10、ntf(成绩总分为%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=8110*10=100 #includeint main(void)in
11、t 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; scanf(%d,&n);for(i=1;i=n;i+) item=flag*(2*i-1)/(3*i-2);sum=sum+item; flag=-flag; printf(%fn,sum); 实验三3.1.1输入一个整数x,判定是否为5的倍数。#includeint main(v
12、oid)int x;printf(x= );scanf(%d,&x);if(x%5=0)printf(能整除5);elseprintf(不能整除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;elsey=x*x+2;printf(对应值为%.2fn,y);return 0 ;3.1.3某商场给顾客购物的折扣率如下:购物金额300元 不打折300=购物金额500元 9折500元=购物金额 7折要求输入一个购
13、物金额(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);elsey=0.7*x;printf(打7折,付款%dn,y);return 0;3.1.4求解一元二次方程+b的实数解。#include#includeint main(void)int a,b,c,d,x1,x2;printf(a= ,b= ,c= );scanf(%d,%d,%d,&a,&b,&c);d=b*b-4*a*c;i
14、f(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个字符,将所有的英文字母转换为大写后输出。#includeint main(void)char i,ch;printf(请输入 );for(i=1;i=a&ch=z)ch=ch-32;putchar(c
15、h);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+;elseother+;printf(letter=%d,space=%d,digiter=%d,other=%dn,letter,space,digiter,other);return 0;3.2.1输入一个四位整数的年份,判断是否为闰年
16、。#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(闰年);elseprintf(不是闰年);return 0;3.2.2假设自动售货机出售4种商品,薯片、爆米花、巧克力和可乐,售价分别是每份3.0元、2.5元、4.0元和3.5元。在屏幕上显示以下菜单,用户可以连续查询商品的价格,当查询次数超过五次时,退出查询;不到五次时,用户可以选择退出。当用户输入编号14,显示对应商品的价格;输入0,退出查询;输入其他编号,显示价格为0。
17、#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元n);break; case 4:printf(售价3.5元n);break; case 0:printf(退出查询n);break; default :printf(价格为0元n);break; return
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计 实验 指导书 课后 答案 32
限制150内