C程序设计实验报告第二次实验
C程序设计实验报告第二次实验
实验项目: "字符与ASCLL码" "运算符与表达式的应用" "顺序结构应用程序" "数学函数" "鸡兔同笼" "确定坐标"
姓名:胡俊 实验地点:家中 实验时间2020.3.10
一、实验目的与要求
1、掌握自增++、自减-运算符的正确使用。
2、掌握基本的输入/输出函数的基本功能、调用方法、输入/输出格式控制规定等。
3、掌握结构化程序的算法描述方法。
4、熟练掌握C语言的运算符,即运算符的优先级和结核性、运算规则、运算对象类型等。
二、实验内容
1、实验练习:字符与ASCII
1、问题的简单描述:从键盘中输入一个大写字母,要求将其转换成小写字母并输出,同时输出这个小写字母相邻的两个字母,以及它们的ASCII值
2实验代码:
#include<stdio.h>
main()
{
char ch;
printf("输入一个大写字母:\n");
scanf("%c",&ch);
printf("小写字母为: %c %c %c\n",ch+31,ch+32,ch+33);
printf("ASCII码为:%d %d %d\n",ch+31,ch+32,ch+33);
}
3问题分析:无
2、实验练习:运算符与表达式的应用
1问题的简单描述:从键盘输入一个3位正整数,要求输出该数的逆序数。例如,输入123,输出321.
2实验代码:
#include<stdio.h>
int main()
{
int a,b,c,x,y;
printf("请输入一个3位正整数:\n");
scanf("%d",&x);
c=x%10;
b=(x/10)%10;
a=(x/100)%10;
y=c*100+b*10+a;
printf("%d:%d\n",x,y);
return 0;
}
3问题分析:通过对输入3位整数的乘除和取余来取得个位,十位以及百位的数。
3、实验练习:计算医药费
1.问题的简单描述:无
2、实验代码
#include<stdio.h>
int main()
{
float x,j,c,cw,g,f,hj,fk,zh;
/*其中,x代表西药费;j代表检查费;c代表材料费;cw代表床位费;g代表观察费;
f代表护理费;hj代表应付款;fk代表病人付款额;zh代表应找回的金额 ;*/
printf("请输入西药费,检查费,材料费,床位费,观察费,护理费:\n");
scanf("%f,%f,%f,%f,%f,%f",&x,&j,&c,&cw,&g,&f);/*此处为变量输入语句,输入西药费、检查费、材料费,
及床位费,观察费,护理费并存放在相应的变量中*/
hj=x+j+c+cw+g+f;
printf("应付金额(元):%.2f",hj);
printf("病人付款(元):");
scanf("%f",&fk);
zh=fk-hj;/*得出应找回给病人的金额*/
printf("计算结果:\n");
printf("病人付款=%6.2f元\n 应收款=%6.2f元,应找回=%6.2f元\n",fk,hj,zh);
return 0;
}
3.问题分析:无
4、实验练习:数学函数
1.问题描述:
2.实验代码:
#include<stdio.h>
main()
{
float x,y;
printf("请输入x的值: ");
scanf("%f",&x);
if(x<1){
y=x;
}else if(1<x<10){
y=2*x-1;
}else y=3*x-1;
printf("y的值为%.2f\n",y);
}
3.问题分析:在计算y=2x-1的时候输入代码应该是y=2x-1,不能漏掉!
流程图
5、实验练习:鸡兔同笼
2.问题描述:已知鸡兔总头数,鸡兔总脚数,求鸡多少只,兔多少只。
#include<stdio.h>
main()
{
int h,f,x,y;
printf("鸡兔总数,鸡兔脚总数:");
scanf("%d,%d",&h,&f);
if(h>0&&f>0)
{
x=(4*h-f)/2;
y=(f-2*h)/2;
printf("鸡有%d 兔有%d\n",x,y);
}
else
printf("输入错误!\n");
}
3.问题分析:同实验4
流程图
6、实验练习:确定坐标的算法描述
1、问题描述:
2、实验代码:
#include<stdio.h>
#include<math.h>
main()
{
int h=10;
float x1=2,y1=2,x2=-2,y2=2,x3=-2,y3=-2,x4=2,y4=-2,x,y,d1,d2,d3,d4;
printf("请输入一个点(x,y):");
scanf("%f,%f",&x,&y);
d1=sqrt((x-x1)*(x-x1)+(y-y1)*(y-y1));
d2=sqrt((x-x2)*(x-x2)+(y-y2)*(y-y2));
d3=sqrt((x-x3)*(x-x3)+(y-y3)*(y-y3));
d4=sqrt((x-x4)*(x-x4)+(y-y4)*(y-y4));
if(d1>1&&d2>1&&d3>1&&d4>1)
h=0;
printf("该塔高度为%d",h);
}
3.问题分析:注意加入头文件math.h
流程图
三、实验小结
目前部分所学过的函数能够比较熟练的应用,在写代码前要注意头文件,不要用错或没有用到导致代码的错误。
稍微了解了if函数的使用,但是格式还有比较大的问题。经常因为if函数的格式而导致函数编码错误。