C程序设计课程-第四堂课后作业

来源:互联网 发布:top域名多少钱 编辑:程序博客网 时间:2024/05/16 15:48

作业1:

    我的常用IDE是Visual Studio 2012。是一款优秀智能的开发工具,不仅能满足用户体验的需要,同时能够支持更多的新技术架构。

 

作业2:

1.编辑:编辑是创建或修改C源程序文件的过程,C源程序以文本的形式存储在磁盘上,文件名的拓展名为.c或.cpp。

2.编译:C语言是计算机高级语言,其源程序必须经过编译程序对其进行编译,生成目标程序,目标程序文件的拓展名为.obj。

3.连接:编译生成的目标程序机器可以识别,但不能直接执行,由于程序中使用到一些系统库函数,还需将目标程序与系统库文件进行连接,经过连接后,生成一个完整的可执行程序,可执行程序的拓展名为.exe。

4.运行:C源程序经过编译、连接后生成的可执行文件,可脱离编译系统直接执行,输入可执行文件名或在Windows资源管理器下双击可执行文件名即可。

 

作业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、3、4、6、7、8、9、11、13、14

 

作业3.2题:每个变量都必须先定义,然后才能使用。定义变量需要提供两方面信息:变量名和变量类型,下面是常用的变量类型,请描述每个类型的特点和使用场景,如int的特点是保存整数,常用于年龄、月份等数据的保存。
1) 整型 int :保存整数,常用于年龄、月份等数据的保存。
2) 无符号整型unsigned int :可以存放的正数范围比有符号整型中的范围大一倍,在一些不可能取值为负数的时候,可以定义为unsigned,在一些底层的嵌入式编程的数据一般都是无符号的。
3) 短整型 short  int  :用于存储整数,二进制位长是16,占用两个字节,所能表示的整数的值域为-32768~32767。
4) 长整型 long int  :用于存储整数,二进制位长是32,占用4个字节,所能表示的整数的值域为-2147483648~2147483647。
5) 无符号长整型 unsigned  int :存储整数,不代表正负,大小比普通长整大,但同时也失去了表示负数的功能。
6) 字符型 char  :用于存放字符常量,一个字符变量中只能存放一个字符,在内存中占一个字节的空间。
7) 无符号字符型 unsigned char :实际上是1个字节无符号整型,可以用来描述ASCII 字符编码0到255。

8) 单精度 float :在C++中,专指占用32位存储空间的单精度值。单精度在一些处理器上比双精度更快而且只占用双精度一半的空间,但是当值很大或很小的时候,它将变得不精确。当你需要小数部分并且对精度的要求不高时,单精度浮点型的变量是有用的。例如,当表示美元和分时,单精度浮点型是有用的。
9) 双精度double :用来表示带有小数部分的实数,一般用于科学计算,用8个字节(64位)存储空间,其数值范围为1.7E-308~1.7E+308,双精度浮点数最多有15或16位十进制有效数字,双精度浮点数的指数用“D”或“d”表示,如double i= 0d。所有超出人类经验的数学函数,如sin( ),cos( ) ,和sqrt( )均返回双精度的值。
10) 长双精度 long double:比double 更加精确的类型。

 

作业4编写一段程序,将你的名字拼音保存到字符数组,并输出姓和名的第一个字母

#include<stdio.h>void main(){char tip[]="wangchaoyu";printf("%c %c\n",tip[0],tip[4]);}

 

作业5:对以下代码进行宏替换,使其看起来像编译后的效果

#include <stdio.h>#define  TEL5  139133    // 手机号码头五位#define  PI  3.1415926int main(){   printf("%d\n",TEL5);   printf("%f\n",PI);}

替换后:

#include <stdio.h>#define  TEL5  139133    // 手机号码头五位#define  PI  3.1415926int main(){   printf("%d\n",139133);   printf("%f\n",3.1415926);}

 

作业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(){float 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("%f\n%f\n%f\n%f\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(){float 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("%f\n%f\n%f\n",a,b,c);}





 

原创粉丝点击