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

(一)改错题
1.输出带框文字:在屏幕上输以下3行信息。
************
Welcome
*************

源程序:#include <stido.h>
int mian()
{
printf("*************\n");
printf(" Welcome\n")
printf("*************\n);

return 0;

}

源程序编译结果为1242350-20171021230633896-1601659170.png
错误信息1:1242350-20171022213929724-1273895849.png

编译结果:1242350-20171022003713599-2064815706.png
错误原因:i和d的位置错误
改正方法:stido-stdio
如图:1242350-20171022000647849-2004611031.png
错误信息2:1242350-20171022001118662-1437575820.png
编译结果:1242350-20171022003932318-582363738.png
错误原因:行末缺少分号
改正方法:在行末添加分号
如图:1242350-20171022001320412-195319795.png
错误信息3:1242350-20171022000748599-1584843959.png
编译结果:1242350-20171022004029896-304412175.png
错误原因:英文半角缺少双引号
改正方法:添加英文半角双引号
如图:1242350-20171022000909865-619567830.png
错误信息4:1242350-20171022001435646-1361344183.png
编译结果:1242350-20171022004203177-198588377.png
错误原因:主函数书写错误
改正方法:将"mian"改为"main"
如图:1242350-20171022001622006-545295505.png
则源程序改为:1242350-20171021233402193-750769076.png
编译结果1242350-20171021233448490-706420134.jpg
运行结果:1242350-20171021233521396-1263656972.png

  1. 计算某个数x的平方赋给y:分别以“y = xx” 和 “xx = y” 的形式输出x和y的值。注意不要删除源程序中的任何注释。
    输入输出示例(假设x的值为3)include
    9=33
    3
    3=9
    源程序为:
    int main()
    {
    int x,y;

y=xx;
printf("%d = %d
%d", x); /* 输出
printf("d * %d = %d", y);

return 0;
}
错误信息1:1242350-20171022004534677-1843488634.png
编译结果:1242350-20171022004624615-826178313.png
错误原因:预处理命令编写错误
改正方法:在“stdio”后加".h"
如图:1242350-20171022002118865-508305331.png
错误信息2:1242350-20171022005037474-1506674102.png
编译结果:1242350-20171022005143381-2038265717.png
错误原因:三个%d未分别对应“y,x,x”,输出后边应该加"/"
改正方法:在","和"x"之间加“y,x”,在“输出”后边加"
/"
如图:1242350-20171022012505896-1273041357.png
错误信息3:1242350-20171022010839771-1256473379.png
编译结果:1242350-20171022010928974-2020111555.png
错误原因:%d无对应的"x,y"的变量并且没有换行,d后缺少%
修改方法:在"y"前加上"x,x,"在后引号前加“\n”“d”后加“%”
如图:1242350-20171022012343193-1450750357.png
编译及运行结果1242350-20171022012718224-1378557248.png
1242350-20171022012732834-70136297.png
(二)学习总结 1.不 同的数据类型,在计算机中所占内存大小是不一样的,C语言提供了sizeof运算符,可以获取数据字节数。其基本语法如下:
1242350-20171022014908006-1212939592.jpg
示例:1242350-20171022015103193-332939470.jpg
运行结果1242350-20171022015815427-607501005.jpg
利用sizeof运算符编程求出int、long、float和double类型数据所占的字节大小

int字节

include <stdio.h>

int main()
{
printf("int: %d字节\n",sizeof(int));
return 0;
}
运行结果:1242350-20171022020137677-56562126.png
long字节

include <stdio.h>

int main()
{
printf("long: %d字节\n",sizeof(long));
return 0;
}
运行结果:
1242350-20171022020637365-730417281.png

float字节

include <stdio.h>

int main()
{
printf("float: %d字节\n",sizeof(float));
return 0;
}
运行结果1242350-20171022021138427-1966923662.png

double字节

include<stdio.h>

int main()
{
printf("double: %d字节\n",sizeof(double));
return 0;
}
运行结果:1242350-20171022022210740-492301371.png

2.(1)在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;
}
运行结果:1242350-20171022023233287-102325594.png
(2)修改程序,输出i+1,结果是什么?为什么?修改程序输出j-1,结果是什么?为什么?

答:原本的
运行结果:1242350-20171022024531521-2009653809.png
整数超出它的最大值或再加1依旧处于最大值状态int整形变量超出最小值时会导致溢出从最大值计数
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;
}
运行结果:1242350-20171022030304974-562311960.png
经网上查询%0为八进制%x为十六进制
对本章其他的总结:我认为我在写程序的时候,一定要做到注意力集中,每一个符号都十分重要,一个小符号就能影响全局,认真很重要。对于这门课程,我应该做到及时复习,提前预习。自己平时学的不怎样,以后还是要好好加油。多多练习,俗话说熟能生巧,我相信越努力,越幸运。
(三)1.求整数均值

(1)题目
本题要求编写程序,计算4个整数的和与平均值。题目保证输入与输出均在整型范围。
(2)流程图如下:1242350-20171022033214912-1625391080.png
(3)源代码

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);
}
(4)运行结果1242350-20171022033815349-1614651536.png
实验分析:总是忽略地址符,注意double的用法以后多多注意。
3.是不是太胖了
(1)流程图如下:
1242350-20171022035035068-474205719.png
(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)运行结果:1242350-20171022035555693-1364244227.png
实验分析:需要注意“f"前的”l
5.(1)计算物体自由下落的距离
流程图 如下:1242350-20171022040419162-325677821.png
(2)源代码#include <stdio.h>
int main()
{
int g,t,x;
g=10;
t=3;
x=gtt;
float height;
height=1.00/2x;
printf("height = %.2f",height);
return 0;
}
(3)运行结果如图:1242350-20171022041945662-172607415.png
(4)实验分析:注意保留两位小数的写法,需先声名double类。
9.逆序的三位数
(1)流程图1242350-20171022044017974-528141816.png
(2)源代码:#include<stdio.h>
int main()
{
int a,b,c,d,e,f;
scanf("%d",&a);
b=a%10;
c=a/10;
f=c%10;
d=a/100;
e=b
100+f*10+d;
printf("%d",e);
}

(3)运行结果1242350-20171022044520552-1996128685.png
(4)实验分析:由于e的式子书写有误造成运行错误,一定得注意中英文符号。
(四)PTA提交列表
1242350-20171022050143209-250346624.png

1242350-20171022050154271-255702393.png

1242350-20171022050215474-305501400.png

1242350-20171022050228256-1231552341.png

1242350-20171022050239974-2136607661.png

转载于:https://www.cnblogs.com/123456lxl/p/7707581.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值