c语言第二次作业
(一)改错题
1.输出带框文字:在屏幕上输出以下3行信息。
源程序
输入编辑器
错误信息1:
错误原因:
改正:把sdtio改为stdio
错误信息2:
错误原因:\n后面缺少一个英文的双引号
改正:在\n加上英文引号
错误信息3:
错误原因:程序第6行依旧报错,第五行最后没加分号
改正:在第5行后面加英文引号
错误信息4:
错误原因:main写错
改正:用main替换mian
2.计算某个数x的平方赋给y:分别以“y = xx” 和 “xx = y” 的形式输出x和y的值。注意不要删除源程序中的任何注释。
输入输出示例(假设x的值为3)
源程序
输入编辑器
错误信息1:
错误原因:stdio.h不完整
改正:在stdio后面加.h
错误信息2:
错误原因:/......./不完整
改正:在输出后面加*/
错误信息3:
错误原因:格式化输出后面不完整,每个%d依次对应一个变量。
改正:第八行d前面缺少%补全x,y使得每个数据都能正常输出
错误信息4:
错误原因不符合题目要求格式
改正:在输出语句后面加/n
(二)学习总结
1.不 同的数据类型,在计算机中所占内存大小是不一样的,C语言提供了sizeof运算符,可以获取数据字节数。其基本语法如下:
示例:
运行结果:
利用sizeof运算符编程求出int、long、float和double类型数据所占的字节大小
int字节
#include <stdio.h>
int main()
{
printf("int: %d字节\n",sizeof(int));
return 0;
}
运算结果:
long字节
#include <stdio.h>
int main()
{
printf("long: %d字节\n",sizeof(long));
return 0;
}
运算结果:
float字节
#include <stdio.h>
int main()
{
printf("float: %d字节\n",sizeof(float));
return 0;
}
运算结果:
double字节
include <stdio.h>
int main()
{
printf("double: %d字节\n",sizeof(double));
return 0;
}
运算结果:
2.在C语言中,在头文件limits.h中,有关于各种基本数据类型的最大以及最小值的宏定义。例如,int型的最大值为INT_MAX,最小值为INT_MIN。运行下列程序,看一下结果是什么?
源程序:
运算结果:
修改程序,输出i+1
结果为:
原因:若int整形变量超出最大值时会导致溢出从最小值开始计起
修改程序,输出j-1
结果为:
原因:若int整形变量超出最小值时会导致溢出从最大值开始计起
3.运行下面的程序,输入100 144 64,看看运行结果是什么?为什么?
源程序:
运算结果:
因为输入时%d %x %o不一致,但在输出时统一用了%d都以十进制形式输出
4.对本章其他你认为需要进行总结的内容进行总结。
在编写程序时注意申明变量区分大小写,scanf后加&,大括号内每句结束加;,申明函数要写清楚完整,画出流程图后再编写程序,要先编译再运行,输出时要看清楚所给格式
(三)实验总结
1.求整数均值
(1)流程图
(2)源代码
#include<stdio.h>
int main()
{
int a,b,c,d,Sum;
double Average;
scanf("%d %d %d %d",&a,&b,&c,&d);
Sum=a+b+c+d;
Average = (a+b+c+d)/(double)4;
printf("Sum = %d; Average = %.1f",Sum,Average);
}
(3)测试数据及运行结果
(4)实验分析
问题:
原因:求平均值时自动按int类型算的导致Average的值不准确
解决:重新申明double average
3.是不是太胖了
(1)流程图
(2)源代码
#include<stdio.h>
int main()
{
int H;
double s,g;
scanf("%d",&H);
g=(H-100)*0.9;
s=g*2.0;
printf("%.1lf",s);
}
(3)测试数据及运行结果
(4)实验分析
问题:
原因:没有声明成double类型
解决:给s,g申明double类型
3.计算物体自由下落的距离
题目
一个物体从100米的高空自由落下。编写程序,求它在前3秒内下落的垂直距离。设重力加速度为10米/秒2。
(1)流程图
(2)源代码
(3)测试数据及运行结果
(4)实验分析
无出错分析
4.逆序的三位数
题目
程序每次读入一个正3位数,然后输出按位逆序的数字。注意:当输入的数字含有结尾的0时,输出不应带有前导的0。比如输入700,输出应该是7。
(1)流程图
(2)源代码
(3)测试数据及运行结果
(4)实验分析
无出错