《c程序设计实验手册》由会员分享,可在线阅读,更多相关《c程序设计实验手册(44页珍藏版)》请在金锄头文库上搜索。
1、前言实验一 C程序的运行环境实验二 数据类型、运算符和表达式1、实验目的通过本次实验要求学生掌握以下知识:(1)熟悉数据和运算符的基本概念(2)掌握数据类型、常量、变量的概念,以及常量、变量的定义方法(3)熟练地应用常量、变量和运算符构成表达式,对数据进行处理2、实验步骤(1)分析下列程序的结果,思考输出结果的原因#includevoid main() char a,b,c; a=a;b=b;c=c; a=a+1;b=b-1;c=c-32; printf(%c,%c,%cn,a,b,c); int a1,b1,c1; a1=a-1;b1=b+1;c1=c+32; printf(%d,%c,%d
2、n,a1,b1,c1);#includevoid main() int a,b,p,q; a=1;b=2; p=a+; q=+b; printf(%d,%d,%d,%dn,a,b,p,q); int c,d,e,f;c=d=e=f=2; c*=2+3;d+=d-=d*=d; e=(e+,+e,e%=2); f=(f+) + (+f); printf(%d,%d,%d,%dn,c,d,e,f);(2)编写程序实现以下问题1、求任意两个数的加法、减法、乘法、除法2、编写一个程序将“I love you”这个字符串进行加密,密码规律自定义。(可参照恺撒密码的方式)实验三 顺序程序设计1、实验目的通过
3、本次实验要求学生掌握以下知识:(1)能读懂简单的程序,并对顺序程序设计有初步的认识(2)可以编写简单的顺序程序(3)通过上机调试,了解顺序程序设计中常见的错误,掌握基本的调试技术(逐步分析程序)。2、实验步骤(1) 已知摄氏温度与华氏温度的换算公式 C=5/9(F-32) 编写一个程序求华氏温度为30,70,100。 #includevoid main() float f; float c; scanf(%f,&f); c=(f-32)*5/9; printf(%fn,c);(2) 已知地球半径为6371.0km,编写一个程序计算地球表面积的近似值,并打印输出地球的半径、的近似值、地球的表面积
4、。 void main()float r=6371,s;float pi=3.14;s=pi*r*r;printf(地球的半径是:%.2fn,r);printf(pi的值为:%.2fn,pi);printf(地球的表面积为:%en,s);(3) 已知三角形的三条边a,b,c,求三角形面积的公式为: 编写一个程序读入a,b,c的值,计算出面积F,并输出三条边及面积的值。(开平方根函数为sqrt,在math.h文件中)#include #include void main() float a,b,c,s,F; scanf(%f,%f,%f,&a,&b,&c); s=1.0/2*(a+b+c); F
5、=sqrt(s*(s-a)*(s-b)*(s-c); print(三角形的面积为:%f,F);(4)设圆半径r=2,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆柱体积。编写程序,用scanf输入数据,输出计算结果,输出时要求有文字说明,取小数点后2位数字。编写程序实现。输出结果如右图所示:#define PI 3.14#includevoid main()float r,h,l,s,ss,v;printf(请输入圆半径:);scanf(%f,&r);printf(请输入圆柱高:);scanf(%f,&h);l=2*PI*r;s=PI*r*r;ss=4*s;v=PI*r*r*h; printf
6、(圆的面积为:%.2fn,s);printf(圆的周长为:%.2fn,l);printf(圆球的表面积为:%.2fn,ss);printf(圆柱的体积为:%.2fn,v); (5)分析下列程序的结果,并看懂程序。#includevoid main() char c1; printf(请输入一个字符:); c1=getchar(); if(c1=a&c1=A&c1=1&c1=9) printf(你输入的是数字:); putchar(c1); else printf(你输入的是其它东东:); putchar(c1); 实验四 选择结构程序设计(一)实验内容1、实验目的通过本次实验要求学生掌握以下知
7、识:(1)清楚的掌握if语句、switch语句的各种使用方法,并灵活运用(2)能读懂if语句、switch语句的流程走向(3)通过上机调试,了解选择程序设计中常见的错误,掌握基本的调试技术(逐步分析程序)。2、实验步骤(1)编程求:void main()int x,y;scanf(%d,&x);if(x!=0)y=x*x-5;elsey=3*x+2;printf(x=%d,y=%dn,x,y);(2)编写一个按月收入额计个人收入调节税的应用程序。记税公式如下: 0 pay=1000或离退休 (pay-1000)*0.05 1000pay=1500 (pay-1500)*0.1+25 1500p
8、ay=2000 (pay-2000)*0.15+75 2000pay=2500Tax= (pay-2500)*0.2+150 2500pay=3000 (pay-3000)*0.25+250 3000pay=3500 (pay-3500)*0.3+375 3500pay=4000 (pay-4000)*0.35+525 4000pay=4500 其中:pay 为纳税人的月收入#includevoid main()float tax,pay;scanf(%f,&pay);if(pay=1000)tax=0;else if(pay=1500)tax=(pay-1000)*0.05;else if(
9、pay=2000)tax=(pay-1500)*0.1+25;else if(pay=2500)tax=(pay-2000)*0.15+75;else if(pay=3000)tax=(pay-2500)*0.2+150;else if(pay=3500)tax=(pay-3000)*0.25+250;else if(pay=4000)tax=(pay-3500)*0.3+375;else if(pay 30中度肥胖 : 体重指数 35重度肥胖 : 体重指数 40void main()float weight,height,t;printf(请输入体重(公斤));scanf(%f,&weigh
10、t);printf(请输入身高(米));scanf(%f,&height);t=weight/(height*height);printf(%fn,t);if(t18)printf(偏瘦); else if(t=25)printf(正常体重);else if(t=30)printf(超重);else if(t=35)printf(轻度肥胖);else if(t=40)printf(中度肥胖);elseprintf(中度肥胖);(4)任意输入3个数,将之从大到小排序并输出void main() int a,b,c,min,mid,max; printf(请输入三个整数:); scanf(%d%d%d,&a,&b,&c); min=a;max=a;mid=a; if(a=b&a=c) min=a; if(b=c) mid=b; max=c; else mid=c; max=b; else if(c=a&c=b) min=c; if(a=b) mid=a; max=b; else mid=b; max=a; else min=b; if(a=c) mid=a; max=c; else mid=c; max=a; printf(%d %d %d,max,mid,min);(5)给出一个不多于