C语言程序第二次作业
(一)改错题
1.输出带框文字:在屏幕上输出以下3行信息。
Welcome
源程序
include <stido.h>
int mian()
{
printf("\n");
printf(" Welcome\n")
printf("\n);
return 0;
}
错误信息1:
错误原因1:stdio错写为stido,main错写为mian
改正方法1:将stdio和main拼对就可以了
错误信息2:
错误原因2:没有在句尾加分号
改正方法2:在句尾加分号
2.计算某个数x的平方赋给y:分别以“y = xx” 和 “xx = y” 的形式输出x和y的值。注意不要删除源程序中的任何注释。
输入输出示例(假设x的值为3)
9 = 3 * 3
3 * 3 = 9
源程序
include
int main()
{
int x,y;
y=x*x;
printf("%d = %d * %d", x); /* 输出
printf("d * %d = %d", y);
return 0;
}
错误信息1:
错误原因1:没有在stdio后面加上.h
改正原因1:在stdio后面加上.h
错误信息2:
错误原因2:数字没有与X或Y对应,并且分号后面没有那些输出,下一行中没有%
改正原因2:删掉那些输出,将X与Y对应数字,在下一行加上%
错误信息3:
错误原因3:因为加入/输出后下面都是蓝色,所以是/输出有问题
改正原因3:在/后面再加一个/
(二)学习总结
1.不 同的数据类型,在计算机中所占内存大小是不一样的,C语言提供了sizeof运算符,可以获取数据字节数。
(1)int字节
(2)long字节
(3)float字节
(4)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,结果是什么?为什么?
输出i+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是十六进制转换,%0是八进制转换,所有144和64都会转换为100
4.对本章其他你认为需要进行总结的内容进行总结。
(1)在写程序前要先有大概的流程图,注意拼写,stdio不要错拼写为stido,main不要错拼写为mian
(2)要在每一行最后面加上分号,不然编译时会出现错误
(3)要注意数学公式要写在大括号里面,不然会出错
(4)注意int是表示整型,而float和double则是表示浮点型,float要比double表示的范围小,int要用%d来表示,float和double要用%f来表示
(三)实验总结(我的学号是单数,总结1,3,5,9题)
1.求整数均值
(1)题目
本题要求编写程序,计算4个整数的和与平均值。题目保证输入与输出均在整型范围内。
(2)流程图
(3)源代码
include <stdio.h>
int main (void)
{
int a,b,c,d,sum;
double average;
scanf(" %d %d %d %d",&a,&b,&c,&d);
sum = a+b+c+d;
average = (double)(a+b+c+d)/4;
printf("sum=%d average=%.1f",sum,average);
return 0;
}
(4)测试数据及运行结果
(5)实验分析
问题1:第一次测试平均值不是小数点后两位
原因1:没有在平均值前加double
解决方法1:在平均值前加double
2.是不是太胖了
(1)题目
据说一个人的标准体重应该是其身高(单位:厘米)减去100、再乘以0.9所得到的公斤数。已知市斤是公斤的两倍。现给定某人身高,请你计算其标准体重应该是多少?
(2)流程图
(3)源代码
include <stdio.h>
int main (void)
{
int H;
double k,s;
scanf(" %d",&H);
k = (double)(H-100)0.9;
s = 2k;
printf(" %.1f",s);
return 0;
}
(4)测试数据及运行结果
(5)实验分析
问题1:测试结果不是小数点后一位
原因1:没有用%.1f
解决方法1:将%d改为%.1f
3.计算物体自由下落的距离
(1)题目
一个物体从100米的高空自由落下。编写程序,求它在前3秒内下落的垂直距离。设重力加速度为10米/秒2。
(2)流程图
(3)源代码
include <stdio.h>
int main (void)
{
double height;
height = 1/2.0(103*3);
printf("height=%.2f",height);
return 0;
}
(4)测试数据及运行结果
(5)实验分析
本题没有问题
4.逆序的三位数
(1)题目
程序每次读入一个正3位数,然后输出按位逆序的数字
(2)流程图
(3)源代码
include <stdio.h>
int main (void)
{
int a = 0,b = 0,c = 0,d = 0,e = 0;
scanf("%d=%d+%d10+%d100",&a,&b,&c,&d);
b = a%10;
c = (a/10)%10;
d = a/100;
e = d+c10+b100;
printf("%d",e);
return 0;
}
(4)测试数据及运行结果
(5)实验分析
问题1:结果与示例不符
原因1:求余和除法不知道哪个在前哪个在后
解决原因:求助了别的同学,现在明白了
(四)PTA提交列表
第一次提交结果:
第二次提交结果:
C语言程序第二次作业的更多相关文章
- C语言程序设计第二次作业--顺序结构
C语言程序设计第二次作业--顺序结构 1.输出带框文字:在屏幕上输出以下3行信息. ************* Welcome ************* 源程序 #include <stido ...
- C语言基础第二次作业
PTA第一次作业 题目7-1 统计学生成绩 1.实验代码 #include<stdio.h> int main(void){ ,B=,C=,D=,E=,f; scanf("%d ...
- C程序第二次作业
2-1删除字符串中数字字符 1.设计思路 (1)主要描述题目算法 第一步:遍历指针s所指的s数组. 第二步:如果 * (s+i)在0至9之间的话,则跳过此 * (s+i). 第三步:如果* (s+i) ...
- c语言:第二次作业,循环结构
1.本章学习总结(2分) 1.1 思维导图 1.2 本章学习体会及代码量学习体会 1.2.1 学习体会 循环相比分支和顺序结构难了许多,相对的来说我的c语言的基础比之前有提高,但是还是很多题想了很久也 ...
- C语言程序设计第二次作业
一.学习内容 掌握关系运算符.逻辑运算符.条件运算符 掌握常用数学函数的用法 if语句(单分支,双分支和多分支) 用switch语句实现多分支 理解多个if语句,if...else if... 和if ...
- C语言的第二次作业
一.PTA实验作业 题目1. 计算分段函数 本题目要求计算下列分段函数f(x)的值: 1.本题代码 #include<stdio.h> #include<math.h> int ...
- C语言程序设计第二次作业——顺序结构
(一)改错题 1.输出带框文字:在屏幕上输出以下3行信息. 错误信息1: 错误原因:i和d位置错误 改正方法:i和d位置互换 错误信息2: 错误原因:\n后缺了一个" 改正方法:\n后加一个 ...
- C语言程序设计第二次作业—————顺序结构改
1.输出带框文字:在屏幕上输出以下3行信息. ************* Welcome ************* 源程序 #include <stido.h> int mian() { ...
- C语言程序设计第二次作业1
(一)改错题 1.输出带框文字:在屏幕上输出以下3行信息. ************* Welcome ************* 源程序 include int mian() { printf(&q ...
随机推荐
- System V IPC 之消息队列
消息队列和共享内存.信号量一样,同属 System V IPC 通信机制.消息队列是一系列连续排列的消息,保存在内核中,通过消息队列的引用标识符来访问.使用消息队列的好处是对每个消息指定了特定消息类型 ...
- ZendStudio的使用技巧
为了使得ZendStudio支持volt模版可以在首选项中的ContentType加上.volt就行 在ZendStudio中的->help中有一个installNewssoftWare,然后会 ...
- React 深入系列2:组件分类
文:徐超,<React进阶之路>作者 授权发布,转载请注明作者及出处 React 深入系列2:组件分类 React 深入系列,深入讲解了React中的重点概念.特性和模式等,旨在帮助大家加 ...
- vue组件详解(二)——使用props传递数据
在 Vue 中,父子组件的关系可以总结为 props向下传递,事件向上传递.父组件通过 props 给子组件下发数据,子组件通过事件给父组件发送消息.看看它们是怎么工作的. 一.基本用法 组件不仅仅 ...
- 新概念英语(1-51)A pleasant climate
新概念英语(1-51)A pleasant climate Does it ever snow in Greece? A:Where do you come from? B:I come from G ...
- 搭建ssm框架,可实现登录和数据展示以及增删改查
需求: 后台使用ssm(spring-springMVC-mybatis)进行整合 前台使用bootstrap框架 前后台交互使用Ajax进行发送 表结构: 登录页面后显示所有用户信息,可对每条进行增 ...
- Extensions in UWP Community Toolkit - SurfaceDialTextbox
概述 UWP Community Toolkit Extensions 中有一个为TextBox 提供的 SurfaceDial 扩展 - SurfaceDialTextbox,本篇我们结合代码详细讲 ...
- Java Class文件格式详解
magic[4字节] 魔数,用来判断是否可以被虚拟机使用.固定值为0xCAFEBABE(咖啡宝贝)minor_version[2字节] 次版本号major_version[2字节] 主版本号,低版本的 ...
- Centos系统运行nodejs
这里我们需要先搭建一下运行的环境,直接yum安装就可以了! [root@iZwz9f80ph5u8tlqp6pi9cZ ~]# yum -y install nodejs 这里我们的环境就搭好了!安装 ...
- [Debug]测试环境Giraffe无法正确登录
BUG描述: 在测试环境192.168.2.72上的giraffe无法正确登录,输入正确的用户名.密码,点击登录无反应,输入错误的用户名密码会报错 原因: 2.72安装giraffe的磁盘空间已满,导 ...