1改错题

1.输出带框文字:在屏幕上输出以下3行信息
*************
Welcome
*************
源程序

#include <stdio.h>int mian(){
printf("*************\n");
printf("  Welcome\n")
printf("*************\n);return 0;
}

错误信息1:
错误原因:在格式化输出函数printf中*************\n未能全部用双引号引起来导致错误.
改正方法:在*************\n左右加上双引号即可,即"*************\n".
错误信息2:
错误原因:错误原因是我们大家开始学习编程是最常见的”面“问题,main函数被写错成了"mian",从而导致错误.
改正方法:把主函数中的"mian"改成"main"即可,即"int main()",
错误信息3:
错误原因:格式化输出函数printf 末尾未加";"导致程序编译出现错误.
改正方法:在printf后加上";"即可,
全部改正后运行正常,未出现错误,如图:
2.计算某个数x的平方赋给y:分别以“y = xx” 和 “xx = y” 的形式输出x和y的值。注意不要删除源程序中的任何注释。
输入输出示例(假设x的值为3)
9 = 3 * 3
3 * 3 = 9
源程序

#include <stdio>int main()
{
int x,y;y=x*x;
printf("%d = %d * %d", x);  /* 输出
printf("d * %d = %d", y); return 0;
}

错误信息1:
错误原因:头文件输入错误导致程序无法运行.
改正方法:输入正确的头文件"<stdio.h>"使程序正常运行
错误信息2:
错误原因:多行注释的输入有误导致运行出现错误.
改正方法:将"/* 输出" 改为"/* 输出 */即可,如图:
错误信息3:
错误原因:格式化输出函数printf中"d"未加"%"导致错误.但引号中的内容在运行是计算机不予以检查导致无法检查出错误,需要认真检查保证不出错.
改正方法:在"d"前加上"%"成为"%d"即可,如图:

2学习总结

(1).不 同的数据类型,在计算机中所占内存大小是不一样的,C语言提供了sizeof运算符,可以获取数据字节数。其基本语法如下:
sizeof(数据类型名称)

sizeof(变量名)
示例:

#include <stdio.h>int main()
{
printf("short:  %d字节\n",sizeof(short));
return 0;
}

运行结果:short:二字节
利用sizeof运算符编程求出int、long、float和double类型数据所占的字节大小:
1.int:

#include <stdio.h> int main()
{
printf("int:  %d字节\n",sizeof(int));
return 0;
}

运行结果:int:四字节. 如图:
2.long:

#include <stdio.h> int main()
{
printf("long:  %d字节\n",sizeof(long));
return 0;
}

运行结果:long:四字节.如图:
3.fioat:

#include <stdio.h> int main()
{
printf("float:  %d字节\n",sizeof(float));
return 0;
}

运行结果:float:四字节.如图:
4.double:

#include <stdio.h> int main()
{
printf("double:  %d字节\n",sizeof(double));
return 0;
}

运行结果:double:八字节.如图:
(2)在C语言中,在头文件limits.h中,有关于各种基本数据类型的最大以及最小值的宏定义。例如,int型的最大值为INT_MAX,最小值为INT_MIN。运行下列程序,看一下结果是什么?

#include <stdio.h> #include <limits.h>int main()
{
int i,j;
i = INT_MAX;
j = INT_MIN;
printf("int类型最大值max = %d\nint类型最小值min = %d\n",i,j);
return 0;
}

结果如图:
修改程序,输出i+1,结果是什么?为什么?修改程序输出j-1,结果是什么?为什么?
输入i+1结果是如图:
输入j-1结果是如图:

原因:整数超出它的最大值再加1或者其他数字就会发生溢出,并且溢出使其成为最小值,同时,还要注意整数溢出时,系统不会进行提示,编程时需要注意并自己处理.
3.运行下面的程序,输入100 144 64,看看运行结果是什么?为什么?

#include <stdio.h>int main()
{
int a,b,c;
scanf("%d%o%x",&a,&b,&c);
printf("%d %d %d\n",a,b,c);
return 0;
}

运行结果:如图:
原因:进行初步了解后知道,%x 格式化为16进制的字符串,%o 格式化为8进制的字符串,所以输入144 和 64 会得到100 和 100.
4.对本章其他你认为需要进行总结的内容进行总结。
第一,整形数据和实形数据,整形数据包括int类型,其中有short int ,long int 和long long int,还有unsigned int 类型用于非负场合,取值范围比有符号大一倍。实形数据包括实数或浮点型,其中有单精度浮点型float和双精度浮点型double.第二,如何避免使用幻数的问题:最好把幻数定义为宏常量-用标识符代表常量,格式:

#define

同时要注意宏常量在其作用范围内不能被改变,也不能被赋值.第三,const常量.须在定义时赋初值,如

#include <stdio.h>
int main()
{
int l;
const double Pi = 3.1415926
return 0;
}

第四,浮点数的表示:用%f和%e表示,%f表示小数形式,%e表示指数形式,同时可以指定输出小数位数,用%.af,a表示保留的小数位数,可在"."前加数字表示包括"."在内的小数总共占的列数(宽度),在输出时(printf)float double类型均用%f格式符,在输出函数(scanf)中float用%f表示,而double类型用%lf表示,与long int 类似.小数未指定位数时默认输出六位小数.要注意实型常量默认double类型,想变为float类型须在数字后加"f"

3实验总结

1.厘米换算英尺英寸
(1)流程图:

(2)源代码:

#include<stdio.h>int main(void)
{
int cm;
int foot, inch;
scanf("%d",&cm);
foot= cm / 30.48;
inch= 12 * (cm / 30.48 - foot);
printf("%d %d\n", foot, inch);
return 0;
}

测试数据和运行结果:
结果与预测结果相同,为验证正确性再进行一组测试如图:
结果正确.
实验分析:问题1.英尺英寸与厘米的换算公式计算出现错误,导致运行时在英尺英寸部分都出现错误.如图:

解决方法:通过两次赋值与正确的英尺英寸与厘米的换算公式使程序正确运行.
问题2.计算英尺英寸时英尺最开始的输入结果不为整数,导致之后英尺的输出出现错误.
解决方法:经过查询得知要去整须在赋值运算中加入 "floor"才可以取整.
问题3.在输出运算时出现的错误如图:
解决方法:通过询问同学和上网查询得知"+"连接之后输出的值,只需要将空格包含在引号中即可,而不需在两边加引号如图:

2.计算A乘以B的值:
(1)流程图:



(2)源代码:

#include<stdio.h>int main(void)
{
int A,B,C;
scanf("%d%d",&A,&B);
C=A*B;
printf("%d",C);
return 0;
}

数据的测试及运行:输入数据5,8得到40,如图:
继续进行负数测试,输入-5,8得到如图: 与预期猜想一致
问题1:在编写程序时变量C未注意大小写导致出现错误,输出函数的变量c与上边变量C不同.
解决方法:改正大小写问题,保持变量一致.
3.整数的运算(四则运算):
流程图:
2.源代码:

#include<stdio.h>int main(void)
{
int a,b,c,d,f,g;
scanf("%d%d",&a,&b);
c = a + b;
d = a - b;
f= a * b;
g= a / b;
printf("%d + %d = %d\n",a,b,c);
printf("%d - %d = %d\n",a,b,d);
printf("%d * %d = %d\n",a,b,f);
printf("%d / %d = %d\n",a,b,g);
return 0;
}

测试数据及运行结果:shu'ru
再进行一组测试输入8,6如图: 与预测结果一致.
实验问题:由于四则运算时按照顺序结构进行编程,所以在过程中未出现问题,不过如果为了避免在运行过程中出现错误,可以尝试在定义变量时赋值,也就是初始化,可以尽可能的减少错误,由于个人习惯原因,本人在此未进行初始化,但比较建议大家有初始化的习惯.同时还须注意,本人在raptor中赋值运算时发现e变量无法被赋值,此处需要大家注意.
4.整数152的各位数字:
1.流程图:

2.源代码:
(2)源代码:

#include<stdio.h>int main(void)
{
int a = 152,b = 0, c = 0,d = 0;
b = a % 10;
c = (a / 10) % 10;
d = a / 100;
printf ("152 = %d + %d*10 + %d*100",b,c,d);
return 0;
}

测试数据及运行结果:


问题1:在流程图制作过程中未再次忘记取整问题,导致求出的"c"是小数导致不符合结果
解决方法:在需要取整的数前加上"floor"使结果正确.
问题2.在输出a,b,c的值时无法输出结果,如图:

解决方法:应该在"a"后再加一个"+"表示输出a的值,与b,c相同.如图:
即可输出正确结果,使程序正常运行.

4 PTA 提交列表:

顺序结构1:


顺序结构2:




本次作业结果如上,希望老师同学给予意见建议,有利于我的改进与进步,谢谢!

转载于:https://www.cnblogs.com/1234569ss/p/7686260.html

C语言程序设计第二次作业相关推荐

  1. c语言程序设计第二章的答案,C语言程序设计第二章作业参考答案

    C语言程序设计第二章作业参考 <C语言程序设计>第2章作业 布置日期:2017-10-23 截止日期:2017-11-3 一.单选题(每小题4分,共100分) 1.以下说法中正确的是___ ...

  2. 川大c语言程序设计第二次作业答案,川大《C语言程序设计0008》19春在线作业1

    <C语言程序设计0008>19春在线作业2 7 _9 S7 n$ a& |( {  g/ o" R奥鹏作业答案可以联系QQ 761296021- T; u: w( [&a ...

  3. C语言程序设计第二次作业1

    (一)改错题 1.输出带框文字:在屏幕上输出以下3行信息. ************* Welcome ************* 源程序 include <stido.h> int mi ...

  4. 川大c语言程序设计第二次作业答案,川大《C语言程序设计0008》15秋在线作业1满分答案...

    럥Ꞥ胣䎊꿨肨꣧辺껨ꆮ〰㠰胣ㆋ讧鳥뾺뷤骸ꆻ裥钭ꇦඈഊ鮛럥Ꞥ귥₦胣䎊꿨肨꣧辺껨ꆮ〰㠰胣ㆋ讧鳥뾺뷤骸钭ꇦඈ肸胣閍胩颢볯놅㈠‵臩閯ꋩ貼藥₱〱‰裥芀볯ඉㄊ‮諦䎊 ...

  5. 交大c语言第二次作业答案,C语言程序设计第二次作业题及答案.doc

    C语言程序设计第二次作业题及答案 第2次作业一.单项选择题(本大题共60分,共 20 小题,每小题 3 分)1. #inlucde 是一条(?? ).A. 文件包含预处理命令B. 宏定义预处理语句C. ...

  6. c语言程序设计第二次网上作业,吉大21春《C语言程序设计》在线作业二题目【标准答案】...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 加用户名或VX513274704 吉大17秋学期<C语言程序设计>在线作业二-0001 试卷总分:100 得分:100 一.单选题 (共 10 ...

  7. 找到指针的奇数位置 c语言,(ppt)【C语言程序设计】上机作业2010.ppt

    (ppt)[C语言程序设计]上机作业2010 <C程序设计>上机作业 上机时间: 第6周周日上午8:30~11:30, 第8.10.12周周二晚上6:50~9:50 上机地点:科A506 ...

  8. 2020华师c语言程序客观题作业和答案,18秋华师C语言程序设计B在线作业-3辅导资料.docx-资源下载在线文库www.lddoc.cn...

    18秋华师<C语言程序设计B>在线作业-3辅导资料.docx 18秋华师C语言程序设计B在线作业-31.C 2.D 3.D 4.D 5.A 一.单选题共50题,100分1.以下关于运算符优 ...

  9. 西工大c语言程序设计,西工大18春《C语言程序设计》平时作业

    西工大18春<C语言程序设计>平时作业 x2 e2 Y9 J* Q8 H6 o6 k: k7 S核对题目下载答案q761296021西工大18春<C语言程序设计>平时作业8 f ...

最新文章

  1. SHOP++ JTM使用帮助
  2. 论文笔记:MobileNet v1
  3. NET问答: 为什么 IEnumerablestring 不能被初始化?
  4. ZZULIOJ 1097: 计算平均成绩(函数专题)
  5. css属性前浏览器厂商前缀
  6. MVC+EF+Linq 实例
  7. Eclipse-project 重命名问题(如何彻底修改Eclipse工程名),4种解法
  8. Linux学习笔记08—如何关闭防火墙
  9. dbf文件转excel_Excel批量转PDF,关键一步不能忘
  10. LeetCode刷题指南与答案
  11. 【谷粒商城】k8s、devops集群篇(4/4)
  12. 深入理解逻辑回归算法(Logistic Regression)
  13. Jsp中getParameter、getParameterValues、getParameterNames和getParameterMap用法详解
  14. 电脑从windows变成linux,从Windows换到Linux下来
  15. 关于解决“无法定位程序输入点于动态链接库”问题的思路
  16. 个人关于学习的一些总结
  17. java在360运行不了_电脑360安全卫士打不开如何解决_360安全卫士无法打开的处理方法...
  18. 核心概念——节点分组 Combo
  19. 学计算机c语言吗,学习C语言对学习计算机很重吗?
  20. 图片作为背景的相关方法

热门文章

  1. B站学习云开见明:Python数据分析入门到精通学习笔记
  2. 前端实现图片压缩上传功能
  3. 百度云“资源”被和谐,两行代码帮你解决
  4. 大工21春《船舶制图》大作业离线作业
  5. 晋拓股份上交所上市:市值26亿 张东家族企业色彩浓厚
  6. 新建销售群开场语句_新建群开场语句
  7. html自动刷新倒计时,javascript – 倒计时结束时刷新页面
  8. Python爬虫实战项目:简单的百度新闻爬虫
  9. Android 百度地图获取定位信息并实时传给后台
  10. elastica php yii,Yii 1.1.*集成elasticsearch php 客户端Elastica