第四堂课后作业
作业1
目标:了解自己常用的IDE
(提示:集成开发环境(IDE,Integrated Development Environment )是用于提供程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面工具。集成了代码编写功能、分析功能、编译功能、调试功能等一体化的开发软件服务套。所有具备这一特性的软件或者软件套(组)都可以叫集成开发环境。如微软的Visual Studio系列,主要用于C++、C#和VB语言的开发;IBM的Eclipse 也是一个IDE,主要用于Java开发。)
作业1 描述自己常用的IDE的特点
vs2010:代码片段;方便删除;Navigate to搜索对话框可以让我们方便地查找内容,并且可以模糊匹配;同名函数的高亮显示;在一个方法名上右击,会有View Call Hierarchy选项;
--------------------------题目分割线-----------------------------
作业2
目标:了解C 程序的加工和执行过程
提示:程序设计是一种智力劳动,编程序就是解决问题。初学程序设计时写的是很简单的程序,与做一道数学应用题或物理练习题有类似之处。编程序时面对的是一个需要解决的问题,要完成的是一个符合题目要求的程序。一般说,解决问题的过程可分为三步:第一步是分析问题,设计一种解决方案;第二步是通过程序语言严格描述这个解决方案;第三步,在计算机上试用这个程序,运行它,看是否真能解决问题。如果在第三步发现错误,那么就需要仔细分析错误原因,弄清后退到前面步骤去纠正错误。如果发现程序有问题,那就要修改它,然后重新编译运行和检查;最终得到可执行程序
作业2 参考下图描述的程序设计过程,说明每个过程的主要工作内容,如,由软件工程师分析问题....IDE负责编译程序代码....
.
(1)分析问题:确定要产生的输出,定义表示输出的变量
(2)编制程序:创建或修改C源程序文件
(3)编译:C语言有源程序生成目标程序
(4)链接:将目标程序与系统库文件进行链接,生成完整的可执行的程序
(5)调试运行:C源程序经过编译、连接后生成的可执行文件脱离编译系统直接执行
--------------------题目分割线-------------------------
作业3
目标:理解变量
提示:程序变量简称为变量。程序变量是表述数据存储的基本概念,是 C 语言以及各种常规程序设计语言中的一个重要概念。我们应该知道,电脑主要用于处理数据:如字符、整数和浮点数。处理前,你必须存储这些数据。大部分程序设计语言把数据存储在变量(variable)中。在计算机硬件层,程序运行中的数据存储靠内存、存储地址等一系列机制实现,这些机制在程序语言层的反映就是程序变量的概念。程序变量与数学中的变量是完全不同的概念。 一个程序变量可以看作一个容器,程序运行中可以将有关的数据存入变量中。程序里的每个变量都有一个名字,在程序中可以通过名字使用相应的变量,进而使用存储在这个变量里的数据。 对变量的基本操作有两个: 1. 将数据值存入变量中。这个操作称作给变量赋值。程序语言对于怎样给一个变量赋值,能赋什么值往往有一些限制,具体语言常有具体的规定;2. 取得变量里当时保存的值,以便在计算过程中使用。这个操作称为“取值”。
作业3.1下面的字符序列中哪些不是合法的变量名,为什么?
1) -abc
2) __aa
3) for
4) pp.288
5) tobe
6) IBM/PC
7) ms-c
8) #micro
9) m%ust
10) tihs
11) while
12) r24_s25
13) __a__b
14) a"bc
15) _345
(2)(5)(10)(12)(13)(15)是合法的变量名(1)(4)(6)(7)(8)(9)(14)变量只能有字母数字和下划线组成(3)(11)为C语言的基本字,所以也不是合法的变量名
(合法的变量名只能有字母、数字、下划线,还必须是基本字以外的合法变量名,基本字:struct、typedef、define、union、for、while、if、else)
---------------------题目分割线--------------------------
作业3.2题:
每个变量都必须先定义,然后才能使用。定义变量需要提供两方面信息:变量名和变量类型,下面是常用的变量类型,请描述每个类型的特点和使用场景,如int的特点是保存整数,常用于年龄、月份等数据的保存。
1) 整型 int :保存整数,常用于年龄、月份等数据的保存
2) 无符号整型unsigned int :占4字节数用于年龄
3) 短整型 short int :占4字节数用于年龄、月份,数字
4) 长整型 long int :表示较大数据,资金等
5) 无符号长整型 unsigned int :保存2倍于有符号类型的正整数数据
6) 字符型 char :C/C++整形数据中比较古怪的一个,其它的如int/long/short等不指定signed/unsigned时都默认是signed,但char在标准中是unsigned,编译器可以实现为带符号的,也可以实现为不带符号的 ; 字符或字符串输出
7) 无符号字符型 unsigned char: 除非声明为无符号型,否则在算术运算和比较运算中,字符型变量一般作为8位有符号整型变量处理。
8) 单精度 float :存放数据占用的内存为4字节;用于计算
9) 双精度double:用 64 位(8字节) 来储存一个浮点数;用于计算
10) 长双精度 long double:储存更长的浮点数,用于计算
-------------------题目分割线---------------------------
作业4
目标:熟悉字符数组与字符串
提示:字符数组以字符为元素的数组,用于保存符串和文本。字符数组的定义和初始化语句是:char tip[10] = "Good Job!";获取和输出某数组元素值的方法是:printf("%c\n",tip[5]);
作业4题:编写一段程序,将你的名字拼音保存到字符数组,并输出姓和名的第一个字母:
#include<stdio.h>
void main()
{
char tip[16]="huo wen xiao";
printf("%c%c%c\n",tip[0],tip[4],tip[8]);
}
--------------------题目分割线---------------------------
作业5
目标:了解简单的预处理指令
提示:预处理命令以独立的命令行形式出现。#符号是其特殊引导符号,预处理器指令总是以符号#开始,如果源程序里某行的第一个非空格符号是#,那么这行就是预处理命令行。预处理命令的作用是要求预处理程序完成一些操作,预处理命令只在编译程序时发生作用,不会在运行时产生任何行为。
其中,以 #include 开始的行,这就是文件包含命令,其作用是把指定文件的内容包含到当前源文件里来;
而以 #define 开始的行称为宏定义命令行。简单宏定义的形式是:“ #define 宏名字 替代正文” 。编译时,编译器发现正文中遇到已定义的宏名字,就用对应的替代正文替换它,这种操作称为宏展开或宏替换。
作业5题:对以下代码进行宏替换,使其看起来像编译后的效果
01.#include <stdio.h>
02.#define TEL5 139133 // 手机号码头五位
03.#define PI 3.1415926
04.int main()
05.{
06. printf("%d\n",TEL5);
07. printf("%f\n",PI);
08.}
-------------------任务分割线---------------------------
#include <stdio.h>
#define TEL5 139133 // 手机号码头五位
#define PI 3.1415926
int main()
{
printf("%d\n",TEL5);
printf("%f\n",PI);
}
作业6
目标:掌握C语言运算符和表达式
提示:C语言通过运算符和表达式进行运算,在 C 语言程序里,描述计算的最基本结构是表达式,表达式由被计算的对象(例如温度)和表示运算的特殊符号(+、-)按照一定的规则构造而成;
另,如果某个运算符的运算对象具有不同类型时,就出现了混合类型计算,例如表达式:3.27 + 201 这里的一个运算对象是浮点类型,而另一个运算对象是 int 类型,计算过程中发生了类型转换,类型转换也是“运算”是暂时将变量的数据类型改变为另一种;
作业6.1 题 利用程序计算下列表达式的值:
1) 25 + 0125
2) 24 * 3 / 5 + 6
3) 36 + - (5 - 23 ) / 4
4) 35 * 012 + 27 / 4 / 7 * (12 - 4)
#include<stdio.h>
void main()
{
int a,b,c,d;
a=25+0125;
b=24*3/5+6;
c=36 + -(5 - 23 ) / 4;
d= 35 * 012 + 27 / 4 / 7 * (12 - 4);
printf("a=%d\n b=%d\n c=%d\n d=%d\n",a,b,c,d);
}
--------------------任务分割线---------------------------
作业6.2题 在下面表达式的计算过程中,在什么地方将发生类型转换,各个转换是从什么类型转换
到什么类型,表达式计算的结果是什么?
1)3 * (2L + 4.5f) - 012 + 44 整型转换成浮点型
2)3 * (int)sqrt(144.0) 浮点型转换成整型
3)cos(2.5f + 4) - 6 *27L + 1526 - 2.4L 整型转换成浮点型
#include<stdio.h>
#include<math.h>
void main()
{
int a,b,c;
a=3 * (2L + 4.5f) - 012 + 44;
b=3 * (int)sqrt(144.0) ;
c=cos(2.5f + 4) - 6 *27L + 1526 - 2.4L;
printf("a=%d\n b=%d\n c=%d\n d=%d\n",a,b,c);
}
---------------------题目分割线-------------------------
作业7 阅读博客
"一个人的命运决定于每天晚上8点到10点之间:
http://www.cnblogs.com/zhoujie/archive/2013/03/27/article1.html
"
要求:针对“一个人的命运决定于每天晚上8点到10点之间”发表感慨、必须真实,感慨字数大于100,小于200!
总是走着走着就忘了脚下的路,走着走着就迷失了方向,总有一些时候会没有缘由的失落,所以在闲暇的时候多阅读,会潜移默化的改变着自己。每天应该学着有计划地做事,而不再是想起什么做什么。有计划,有目标的奋斗。
人生的路那么长,每个时刻都会有人与自己邂逅、同行、离开。感谢他们丰富了我的生命,懂得放下以前的,珍惜现在拥有的,争取未来想要的,然后就这样慢慢成长吧。。。。