C程序设计实验报告二
Posted zznhyy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C程序设计实验报告二相关的知识,希望对你有一定的参考价值。
C程序设计实验报告二
实验项目:2.3.3字符与ASCII码;2.3.4运输符与表达式的应用;2.3.5顺序结构应用程序;3.3.1数学函数的算法;3.3.2鸡兔同笼的算法;3.3.3坐标的算法
姓名:胡一阳
实验地点:家中
实验时间:2020.03.13
一、实验目的与要求
1、掌握自增++、自减--运算符的正确使用。
2、掌握基本的输入/输出函数的基本功能、调用方法、输入/输出格式控制规定等。
3、掌握结构化程序的算法描述方法。
4、熟练掌握C语言的运算符,即运算符的优先级和结合性、运算规则、运算对象类型等。
二、实验内容
1、实验练习:2.3.3字符与ASCII码
1问题的简单描述:输出的时候西文半角会搞错
2实验代码:
#include<stdio.h>
main()
{
char a,b,c,d;
printf("请输入一个大写字母:");
scanf("%c",&a);
b=a+31;
c=a+32;
d=a+33;
printf("小写字母为%c,%c,%c
",b,c,d);
printf("ASCLL为%d,%d,%d",b,c,d);
}
3问题分析:字符型变量用char,格式符用%c ; 大小写字母的ASCII码值相差32;
ASCII值为整型。
2、实验练习:2.3.4运输符与表达式的应用
1问题的简单描述:一个3 位的正整数去表达其各个位数数字。
2实验代码:
#include <stdio.h>
main()
{
int a,b,c,x,y;
printf("请输入一个3位数整数:
");
scanf("%d",&x);
a=x/100;
b=x%100/10;
c=x%100%10;
y=c*100+b*10+a;
printf("%d: %d
",x,y);
}
3问题分析:% 代表取余数, / 表示取整,再用乘法运算去表示。
3、实验练习:2.3.5顺序结构应用程序
1问题的简单描述:西文半角的切换
2实验代码:
#include<stdio.h>
main()
{
float a,b,c,d,e,f,g,h,i;
/*其中,a西药费;b检查费;c材料费;d床位费;e观察费;f护理费;g应付款;h病人付款额;i应找回的金额;*/
printf("请输入西药费,检查费,材料费,床位费,观察费,护理费:
");
scanf("%f,%f,%f,%f,%f,%f",&a,&b,&c,&d,&e,&f);
g=a+b+c+d+e+f;
printf("应付款:%.2f",g);
printf("病人付款:");
scanf("%f",&h) ;
i=h-g;
printf("计算结果:
");
printf("病人付款=%6.2f元
应收款=%6.2f元,应找回=%6.2f元
",h,g,i);
}
3问题分析:注意中英文的切换
4、实验练习:3.3.1数学函数的算法
1问题的简单描述:if else语句不太会用,不知道要不要大括号,
2实验代码:
#include<stdio.h>
main()
{
float a,b;
printf("请输入a的值:");
scanf("%f",&a);
if (a<1)
{
printf("a的值为%.2f
",a);
}
else
{
if (a<10)
{b=2*a-1;}
else
{b=3*a-1;}
printf("b的值为%.2f
",b);
}
}
流程图:
3问题分析:当if体的语句为一条简单的语句时,可以省略{ },多于一条时,要用{ }把这些语句括起来。
5、实验练习:3.3.2鸡兔同笼的算法
1问题的简单描述:注意不要漏掉了分号
2实验代码:
#include <stdio.h>
main()
{
int a,b,c,d;
printf("鸡兔总数,鸡兔脚总数:
");
scanf("%d,%d",&a,&b);
if(a>0&&b>0)
{
c=(4*a-b)/2;
d=(b-2*a)/2;
printf("鸡有%d 兔有%d
",c,d);
}
else
printf("输入错误!
");
}
流程图:
3问题分析:很容易漏掉乘号
6、实验练习:3.3.3坐标的算法
1问题的简单描述:根号和平方怎么表示。
2实验代码:
#include <stdio.h>
#include <math.h>
main()
{
int h;
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);
}
else
{
h=10;
printf("该塔的高度为%d
",h);
}
}
3问题分析:要认真审题,根号要用sqrt。
三、实验小结
这是第二次实验课,学习C语言已经有一个多月了。 通过本次实验基本掌握了简单的算法描述;用流程图的表达算法思想;运算符的优先级、运算规则、运算对象;算法的结构等。同时,在实验的过程中也有很多的问题,如if 语句不熟悉,经常在输出的时候没有注意西文半角。
以上是关于C程序设计实验报告二的主要内容,如果未能解决你的问题,请参考以下文章