码迷,mamicode.com
首页 > 编程语言 > 详细

C语言设计实验报告二

时间:2020-03-14 23:59:26      阅读:123      评论:0      收藏:0      [点我收藏+]

标签:输入   取整   目的   遇到   多少   main   ascii   语言   打印   

实验项目:2.3.3、2.3.4、2.3.5、3.3.1、3.3.2、3.3.3
姓名:王舒凯
实验地点:家
实验时间:2020.03.14

一、实验目的与要求

1、掌握自增++、自减--运算符的正确使用。
2、掌握基本的输入/输出函数的基本功能、调用方法、输入/输出格式控制规定等。
3、掌握结构化程序的算法描述方法
4、熟练掌握C语言的运算符,即运算符的优先级和结核性、运算规则、运算对象类型等。

二、实验内容

1、实验练习:2.3.3

1问题的简单描述:

从键盘输入一个大写字母,要求将其转换成小写字母并输出,同时输出这个小写字母相邻的两个字母,以及它们的ASCII值。

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\n",b,c,d);
printf("ASCII值为%d,%d,%d\n",b,c,d);
}

3问题分析:

1.定义字符型变量ch。
2.大写字母与小写字母的ASCII值差为32。
3.将字符型变量ch按整型输出,便可得到字符的ASCII值。

2、实验练习:2.3.4

1问题的简单描述:

从键盘输人一个3位正整数,要求输出该数的逆序数。例如,输人123,输出321。

2实验代码:

#include<stdio.h>
main()
{
int x,a,b,c,y;
printf("请输入一个三位整数 :\n");
scanf("%d",&x);
c=x/100;
b=(x-c*100)/10;
a=x%10;
y=a*100+b*10+c;
printf("%d",y);
}

3问题分析:

"%"为除取余数

"/"为除取整数

3、实验练习:2.3.5

1问题的简单描述:

编写一个程序,用于医院收费处出纳算账。要求输入所在医院费用(西药费、检查费、材料费、床位费、观察费和护理费),打印出应付钱数,再输入病人所付款数,打印出应找的钱数。

2实验代码:

#include<stdio.h>
main()
{
float a,b,c,d,e,f,x;
printf("请输入西药费,检查费,材料费,床位费,观察费,护理费:\n");
scanf("%f,%f,%f,%f,%f,%f",&a,&b,&c,&d,&e,&f);
x=a+b+c+d+e+f;
printf("应付款=%.2f\n",x);
{
float y,z;
printf("请输入病人付款:");
scanf("%f",&y);
z=y-x;
printf("病人付款=%.2f\n应付款=%.2f\n应找回=%.2f\n",y,x,z);
}
}

3问题分析:

注意要切换西文字符

4、实验练习:3.3.1

1问题的简单描述:

有一函数:y=x(x<1);y=2x-1(1<=x<10);y=3x-1(x>=10),请用C语言编写程序进行验证。

2实验代码:

#include<stdio.h>
main()
{
int a,b;
printf("请输入a的值:\n");
scanf("%d",&a);
if(a<1)
b=a;
else
if(a<10)
b=2*a-1;
else
b=3*a-1;
printf("%d",b);
}

3流程图:

 技术图片

 

 

4问题分析:

2乘a,不能写成2a,而要写成2*a,本人就犯了这个错误。

5、实验练习:3.3.2

1问题的简单描述:

将鸡和兔子关在同一笼子里,假如知道鸡和兔的总头数h,鸡和兔的总脚数f,请设计算法,计算出鸡和兔分别有多少只。

2实验代码:

#include<stdio.h>
main()
{
int h,f,x,y;
printf("请输入总头数和总脚数:\n");
scanf("%d,%d",&h,&f);
if(h>0&&f>0)
{
x=(4*h-f)/2;
y=(h-2*f)/2;
printf("鸡:%d,兔:%d",x,y);
}
else
printf("输入错误");
}

3流程图:

技术图片

 

 

4问题分析:

记得两数相乘时要打“*”

6、实验练习:3.3.3

1问题的简单描述:

有4个圆塔,圆心分别为(2,2)、(-2,2)、(2,-2),(-2,-2),圆半径为1。这四个塔的高度均为10m,塔以外无建筑物。现输入任一点坐标,若该点坐标在任一圆塔内,则输出圆塔的高度;若该点不在圆塔内,则输出0。

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);
}
else
h=10;
printf("%d",h);
}

3问题分析:

^2要写成两数相乘,同时还要加上#include<math.h>

三、实验小结

实验过程中一开始不是很懂,学的不扎实,做实验的时候一直在看上一次实验的代码,这次实验让我理解了编程的基本操作及怎么用。还有就是很多细节都容易被忽略,之后做实验时要细心,而且遇到问题要自己去思考,自己思考出来的东西才是自己的东西。

C语言设计实验报告二

标签:输入   取整   目的   遇到   多少   main   ascii   语言   打印   

原文地址:https://www.cnblogs.com/wangshukai/p/12495043.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!