C语言第二次作业 ,

一:修改错题

1输出带框文字:在屏幕上输出以下3行信息。
将源代码输入编译器

1242734-20171019200510959-179332442.jpg

运行程序发现错误
错误信息1:

1242734-20171019200814318-1335222137.png

错误原因:将stido.h拼写错误
改正方法:将stido.h改为stdio.h
错误信息2:

1242734-20171019201822912-1377141609.png

错误原因:第二行拼写错误
改正方法:mian改为main
错误信息3:

1242734-20171019201953427-1331404853.png

错误原因:第二行printf结束后没加;
改正方法:printf(" Welcome\n")后加上;
错误信息4:

1242734-20171019202330068-1238306837.png

错误原因:printf("*************\n);格式错误
改正方法:\n后加上”
2计算某个数x的平方赋给y:分别以“y = xx” 和 “xx = y” 的形式输出x和y的值。注意不要删除源程序中的任何注释。
将源代码输入编译器

1242734-20171019203523256-875493437.png

错误信息1:

1242734-20171019203835756-311969774.png

错误原因:第一行格式错误
改正方法:<stdio.h>改为<stdio.h>
错误信息2:

1242734-20171020115215177-2104803444.png

错误原因:格式不对
改正方法: /* 输出改为/* 输出 */
继续执行格式没问题,但是输出的并不是

1242734-20171020121846427-1067148401.png

输出的格式不对
错误信息3:

1242734-20171020123208552-806514931.png

错误原因:printf语句中缺少部分对应的函数值
改正方法:第一个printf括号中x换成y,x,x,第二个printf括号中y换成x,x,y
错误信息4:
发现结果为1242734-20171020124117943-1486965083.png
错误原因:第二个printf中d前没有%
改正方法: 在第二个printf后括号中第一个d前加%
错误信息5:
输出结果仍未标准1242734-20171020124852193-74797023.png
错误原因:printf中未加换行符号
改正方法:在两个printf中都加入加入\n

二:学习总结

1.不同的数据类型,在计算机中所占内存大小是不一样的,C语言提供了sizeof运算符,可以获取数据字节数。

(1)
1242734-20171020143732756-736780721.png
运行结果
1242734-20171020143807412-296231261.png
(2)
1242734-20171020144250177-1086366694.png
运行结果
1242734-20171020144316256-570989712.png
(3)
1242734-20171020144458443-2074722541.png
运行结果
1242734-20171020144516834-229482360.png
(4)
1242734-20171020144637146-575432967.png
运行结果
1242734-20171020144703365-1081007184.png

  1. 输入源代码
    1242734-20171020150520115-1094685788.png
    运行,结果为
    1242734-20171020150607287-565533117.png
    修改程序,输出i+1,结果是什么?为什么?
    1242734-20171020154128631-1670628360.png
    1242734-20171020154151099-747079452.png
    i+1超过int类型的最大值2147483647,将发生溢出,即整数溢出。当达到最大值时,它将溢出到最小值
    1242734-20171020154652912-1871438777.png
    1242734-20171020154757990-1470093447.png
    j-1超过了int类型最小值为-2147483648,j-1后整数的值小于它的最小值,当达到最小值时,它将溢出变成最大值。

    运行下面的程序,输入100 144 64,看看运行结果是什么?为什么?

    1242734-20171020160150084-1842461456.png
    1242734-20171020160221099-645469858.png

    输入格式 %x 格式化为16进制的字符串,%o 格式化为8进制的字符串,输出格式都为10进制所以会得到相同的结果
    4.对本章其他你认为需要进行总结的内容进行总结。
    总结:
    %o是八进制整数的形式;%d是十进制整数的形式;%x是十六进制整数的形式。变量的声明、赋值和初始化,整型常量和整型变量,实型常量和实型变量,算术运算符和赋值运算符,数据类型的转换,要灵活运用,整型常量和整型变量要使用正确,否则输出格式不正确。算术运算符和赋值运算符都要正确使用,否则不能正确进行

三 实验总结

本次实验总结,学号末位数是单数的同学完成顺序结构(2)中的1、3、5、9题,学号末位数是双数的同学完成顺序结构(2)中的2、4、7、8题。

格式如下:

1.求整数均值(10 分)
(1)本题要求编写程序,计算4个整数的和与平均值。题目保证输入与输出均在整型范围内。
(2)流程图

1242734-20171020164902693-236970740.png

(3)源代码
#include <stdio.h>
int main(void)

{

int a,b,c,d;
scanf("%d %d %d %d",&a,&b,&c,&d);
int Sum;
double Average;
Sum = a + b + c + d;
Average = Sum / 4.0;
printf("Sum = %d; Average = %.1f",Sum,Average);
return 0;

}

(4)测试数据及运行结果

1242734-20171020224649740-891415638.png

(5)实验分析
问题1:

用int 定义的average

原因:

因为整型和浮点型分不清楚

解决办法:

将int换成double

问题2:

第一次写的average=sum/4导致输出的是2.0

原因:

正确形式为average=sum/4.0 average=sum/4格式错误

解决办法:

将average=sum/4改成average=sum/4.0

3.是不是太胖了
(1)题目

据说一个人的标准体重应该是其身高(单位:厘米)减去100、再乘以0.9所得到的公斤数。已知市斤是公斤的两倍。现给定某人身高,请你计算其标准体重应该是多少?

(2)流程图

1242734-20171020223631443-1017719612.png

(3)源代码
#include <stdio.h>
int main(void)
{
int H;
double kg,jin;
scanf("%d",&H);
kg = (H-100) * 0.9;
jin = 2*kg;
printf("%.1lf",jin);
return 0;
}
(4)测试数据及运行结果
1242734-20171020224252709-1993796998.png
(5)实验分析
问题1:

输出的数字是整数

原因:kg定义时用的整型的,而不是浮点型
解决办法:重新定义int 换成double
5.计算物体自由下落的距离
(1)题目

一个物体从100米的高空自由落下。编写程序,求它在前3秒内下落的垂直距离。设重力加速度为10米/秒
​2
​​ 。

(2)流程图

1242734-20171020232133021-1013085569.png

(3)源代码

1242734-20171020232530802-1847284576.png

(4)测试数据及运行结果

1242734-20171020232734521-1270284867.png

(5)实验分析
问题1:

刚输出的时候答案一直为0

原因:

因为在公式计算时h = 1/2tt*g,但1/2得出的是0,所以格式错误

解决办法:

将公式改为1/2tt*g格式正确

9.逆序的三位数
(1)题目

程序每次读入一个正3位数,然后输出按位逆序的数字。注意:当输入的数字含有结尾的0时,输出不应带有前导的0。比如输入700,输出应该是7。

(2)流程图

1242734-20171020235152381-376658364.png

(3)源代码

1242734-20171020235324990-740530041.png

(4)测试数据及运行结果

1242734-20171020235450334-1423911519.png

(5)实验分析
问题1:

因为数学运算导致无法得出结果

原因:%无法熟练应用,导致结果错误
解决办法:对三个格式%修改进行

四 PTA提交列表

(1)第一次作业
1242734-20171021001859381-33414085.png
1242734-20171021001901693-356033283.png
1242734-20171021001909068-768411767.png
1242734-20171021001922209-885094257.png
1242734-20171021001927068-152568013.png
(2)第二次作业
1242734-20171021002207896-510882321.png
1242734-20171021002217771-1530996679.png
1242734-20171021002348318-1313644785.png
1242734-20171021002401771-383624913.png

转载于:https://www.cnblogs.com/lipan123/p/7694926.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值