C语言程序设计课后作业4

C程序设计课程-2012电子信息第四堂课后作业

作业1
目标:了解自己常用的IDE
提示:集成开发环境(IDEIntegrated Development Environment)是用于提供程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面工具。集成了代码编写功能、分析功能、编译功能、调试功能等一体化的开发软件服务套。所有具备这一特性的软件或者软件套(组)都可以叫集成开发环境。如微软的Visual Studio系列,主要用于C++、C#和VB语言的开发IBMEclipse也是一个IDE,主要用于Java开发。
作业1,描述自己常用的IDE特点

1、VS2012和VS2010相比,最大的新特性莫过于对Windows 8 Metro开发的支持。Metro天生为云+端而生,简洁、数字化、内容优于形式、强调交互的设计已经成为未来的趋势。不过对于开发者而言,要想使用这项新功能,必须要安装Windows 8 RP版。该版本中包含了新的Metro应用程序模板,增加了JavaScript功能、一个新的动画库,并提升了使用XAML的Metro应用程序的性能。

2、VS2012 RC在界面上,比Beta版更容易使用,彩色的图标和按照开发、运行、调试等环境区分的颜色方案让人爱不释手。

3、VS2012集成了ASP.NET MVC 4,全面支持移动和HTML5,WF 4.5相比WF 4,更加成熟,期待已久的状态极工作流回来了,更棒的是,现在它的设计器已经支持C#表达式(之前只能用VB.NET)。

4、VS2012支持.NET 4.5,和.NET 4.0相比,4.5更多的是完善和改进,4.5也是WindowsRT被提出来的首个框架库,.NET获得了和WindowsAPI同等的待遇。

5、VS2012+TFS2012实现了更好的生命周期管理,可以这么说,VS2012不仅是开发工具,也是团队的管理信息系统。

6、VS2012对系统资源的消耗并不大,不过需要Windows 7/8的支持。


------------------------------------题目分割线------------------------------------
作业2
目标:了解C程序的加工和执行过程
提示:程序设计是一种智力劳动,编程序就是解决问题。初学程序设计时写的是很简单的程序,与做一道数学应用题或物理练习题有类似之处。编程序时面对的是一个需要解决的问题,要完成的是一个符合题目要求的程序。一般说,解决问题的过程可分为三步:第一步是分析问题,设计一种解决方案;第二步是通过程序语言严格描述这个解决方案;第三步,在计算机上试用这个程序,运行它,看是否真能解决问题。如果在第三步发现错误,那么就需要仔细分析错误原因,弄清后退到前面步骤去纠正错误。如果发现程序有问题,那就要修改它,然后重新编译运行和检查;最终得到可执行程序
作业2,参考下图描述的程序设计过程,说明每个过程的主要工作内容,如,由软件工程师分析问题....IDE负责编译程序代码....


Step1由软件工程师分析问题

Step2软件工程师编制程序

Step3对程序进行编译,若编译错误,转回修改源程序, IDE负责编译程序代码

Step4连接,若连接错误,转回修改源程序

Step5对程序调试运行,若有错误重新分析问题

Step6程序设计完成

 

------------------------------------题目分割线------------------------------------

作业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

   不是合法的变量名的是:

   1)、(2)、(8)、(15)不是以字母或汉字开头。

   1)、(4)、(6)、(7)、(8)、(9)、(14)中含有字母、汉字、数字、下划线以外的符号。


------------------------------------
题目分割线------------------------------------
作业3.2:每个变量都必须先定义,然后才能使用。定义变量需要提供两方面信息:变量名和变量类型,下面是常用的变量类型,请描述每个类型的特点和使用场景,如int的特点是保存整数,常用于年龄、月份等数据的保存。


1)整型 int  的特点是保存整数,常用于年龄、月份等数据的保存。
2)
无符号整型unsigned int的特点是能保存2倍于有符号类型的正整数数据,能表达的整数范围变大,常用于高位正数的保存。
3)
短整型 short  int 的特点是所占字节和取值范围均于int相同。
4)
长整型 long int 的特点是在内存中占4个字节,其取值常为长整常数。
5)
无符号长整型 unsigned long  int的特点是取值范围: 0~4294967295 即 0~(2的32次方-1),常用于高为正数的保存。
6)
字符型 char 的特点是专门用于指以'\0'为结束的字符串,用于使用指定长度的固定长度表示的字符串的保存。
7)
无符号字符型 unsigned char的特点是不会对最高位进行扩展。
8)
单精度 float的特点是保存浮点数,用于小数的保存。
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[13]="Gu Pengcheng";
    printf("%c %c\n",tip[0],tip[3]);
}
运行结果


------------------------------------题目分割线------------------------------------
作业5
目标:了解简单的预处理指令
提示:预处理命令以独立的命令行形式出现。#符号是其特殊引导符号,预处理器指令总是以符号#开始,如果源程序里某行的第一个非空格符号是#,那么这行就是预处理命令行。预处理命令的作用是要求预处理程序完成一些操作,预处理命令只在编译程序时发生作用,不会在运行时产生任何行为。
其中,以 #include 开始的行,这就是文件包含命令,其作用是把指定文件的内容包含到当前源文件里来;
而以 #define 开始的行称为宏定义命令行。简单宏定义的形式是:“ #define 宏名字  替代正文 。编译时,编译器发现正文中遇到已定义的宏名字,就用对应的替代正文替换它,这种操作称为宏展开或宏替换。
作业5:对以下代码进行宏替换,使其看起来像编译后的效果


我的程序

#include<stdio.h>
#define  TEL5 139133
#define  PI 3.141592
int main()
{
     printf("%d\n",139133);
     printf("%f\n",3.141592);
}
运行结果


------------------------------------题目分割线------------------------------------

作业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>
int 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("%d %d %d %d",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 

解:(1)由混合类型转换到整型(2)由浮点型转换到整型(3)先是浮点型,后用长整型

用double进行定义输出结果分别是53.500000,36.000000,1362.576562

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值