C语言实验二 数据类型、运算符和表达式

简介: C语言实验二 数据类型、运算符和表达式

一、实验目的

(1)了解C 语言数据类型的意义,掌握基本数据类型变量的特点和定义方法。

(2)学会使用C 的算术运算符,以及包含这些运算符的算术表达式。

(3)掌握自加(++)和自减(--)运算符的使用。

(4)进一步熟悉C 程序的编辑、编译、连接和运行的过程。

二、实验要点

基本数据类型包括整型、字符型、实型。

三、实验要求

(1)上机前先阅读和编写以下要调试的程序。

(2)上机输入和调试程序并存在磁盘上。

(3)检查实验结果是否正确。

四、实验内容

第一次实验内容:

  1. 重新开始一个新的程序

关闭所有工作空间,点击Visual C++ 6.0窗口的关闭按钮即可退出Visual C++ 6.0集成环境,再次进入Visual C++ 6.0集成环境,输入以下程序:

1. /*   c1-3.c    C语言的第三个程序 */
2. #include "stdio.h"
3. void main( )
4. {   int a=38;
5. printf("%d,%5d,%-5d\n",a,a,a);
6. printf("%d,%o,%x,%u\n",a,a,a,a);
7. }

注意观察两个printf函数语句输出结果有何不同?

  1. 在Visual C++ 6.0集成环境,输入以下程序:
1. /*   c1-4.c    C语言的第四个程序 */
2. #include "stdio.h"
3. void main( )
4. {   long int a=32767;
5. printf("a=%ld\t",a);
6. printf("a=%u\t",a);
7. printf("a=%d\n",a);
8. }

将程序中的a改为a=65535,并再次运行程序,观察结果。

  1. 在Visual C++ 6.0集成环境,,输入以下程序:
1. /*   c1-5.c    C语言的第五个程序 */
2. #include "stdio.h"
3. void main( )
4. {   char c1=97,c2=98;
5. int a=97,b=98;
6. printf("%3c,%3c\n",c1,c2);
7. printf("%d,%d\n",c1,c2);
8. printf("\n%c %c\n",a,b);
9. }

观察程序运行结果,掌握int与char类型数据的互通性。

  1. 在Visual C++ 6.0集成环境,输入以下程序:
1. /*   c1-6.c    C语言的第六个程序 */
2. #include "stdio.h"
3. void main( )
4. {   int a,b;a=2;
5.     b=1%a;
6.     printf("%d\n",1/a);
7.     printf("b=%d\n",b);
8.     printf("%f  %f\n",(float)(1/a),(float)b);
9. }

观察程序运行结果,从中掌握类型转换运算符的使用。

  1. 在Visual C++ 6.0集成环境,输入以下程序:
1. /*   c1-7.c    C语言的第七个程序 */
2. #include "stdio.h"
3. void main( )
4. {   int i,j;
5.     i=3; j=4;
6.     printf("%d,%d\n",i++,++j);
7.     printf("%d,%d\n",i,j);
8.     printf("%d,%d\n",-i++,-++j);
9. }

观察程序运行结果,从中掌握自加自减运算符的使用。

  1. 在Visual C++ 0集成环境,输入以下程序
1. /*   c1-8.c    C语言的第八个程序 */
2. #include "stdio.h"
3. void main( )
4. {   int a,b;a=5;
5.     a-=a*a;
6.     printf("a=%d\n",a);
7.     b=(a=3*5,a*4,a+5);
8.     printf("a=%d, b=%d\n",a,b);
9. }

观察程序运行结果,从中掌握复合赋值运算符、逗号运算符的使用。

  1. 下面程序,计算输出当x=2.5,a=7,y=4.7时,表达式

x + a % 3 * (int) (x + y) % 2 / 4的运算结果z的值。

1. /*   c1-9.c    C语言的第九个程序 */
2. #include "stdio.h"
3. void main( )
4. {  int a=7;
5.    float x=2.5,y=4.7, z ;
6.    z= x + a % 3 * (int) (x + y) % 2 / 4;
7.    printf("z=%f\n",z);
8. }

第二次实验内容:

1. 调试程序,分析输出结果

(1)输入并运行以下程序。

1. main()
2. {   float a,b;
3. a=123456.789e5;
4. b=a+20;
5. printf("a=%f,b=%f\n",a,b);
6. }

将第二行改为:

double a,b;

重新运行该程序,分析运行结果。

说明:由于实型变量的值是用有限的存储单元存储的,因此其有效数字的位数是有限的。float型变量最多只能保证7 位有效数字,后面的数字是无意义的,不能准确表示该数。

(2)输入并运行以下程序。

1. main()
2. {  char c1,c2;
3. c1=97;c2=98;
4. printf("%c %c\n",c1,c2);
5. printf("%d %d\n",c1,c2);
6. }

① 将第二行改为:

int c1,c2;

再运行。

② 再将第三行改为:

c1=300;c2=400;

再运行,分析运行结果。

说明:字符型数据可作为整型数据处理,整型数据也可以作为字符型数据处理,但应注意字符数据只占一个字节,它只能存放0-255 范围的整数。

2.完成以下代码,并把程序调通,写出运行结果。

下面的程序计算由键盘输入的任意两个整数的平均值:

1. main()
2. {  int x,y ;
3.    float a;
4. scanf(“%d,%d”,&x,&y);
5. a=(x+y)/2;
6. printf("The average is :%f ",a);

目录
相关文章
|
4天前
|
C语言
c语言运算符
C的运算符有以下几种: 算术运算符:+、-、*、/、% 结合方向自左向右 关系运算符:>、<、==、>=、<=、!= 逻辑运算符:!、&&、|| 位运算符<<、>>、~、|、^、& 赋值运算符:=及符号扩展赋值运算符(+=、-=、*=、/=) 条件运算符:? : 逗号运算符:, 指针运算符:*、& 求字节运算符:sizeof 强制类型转换运算符:((类型)) 分量运算符:.、-> 下标运算符:[]
11 4
|
2月前
|
C语言
C语言判断和运算符联系
在 C 语言中,判断与运算符紧密相关,主要体现在条件表达式的使用上。
191 87
|
2月前
|
安全 C语言
C语言运算符的使用注意点
在C语言中,正确使用运算符能提升代码的可读性和效率。本文介绍了八大注意事项:运算符优先级和结合性影响运算顺序;自增/自减运算符分前缀和后缀形式;逻辑运算符有短路特性;位运算符直接操作二进制位需谨慎;条件运算符简洁但避免复杂嵌套;类型转换避免意外结果;使用括号明确运算顺序。掌握这些要点有助于编写更安全高效的代码。
183 72
|
25天前
|
存储 C语言
【c语言】数据类型和变量
本文介绍了C语言中的数据类型和变量。数据类型分为内置类型和自定义类型,内置类型包括字符型、整型、浮点型等,每种类型有不同的内存大小和取值范围。变量分为全局变量和局部变量,它们在内存中的存储位置也有所不同,分别位于静态区和栈区。通过示例代码和图解,详细阐述了这些概念及其应用。
34 1
|
1月前
|
存储 Java C语言
【一步一步了解Java系列】:了解Java与C语言的运算符的“大同小异”
【一步一步了解Java系列】:了解Java与C语言的运算符的“大同小异”
39 3
|
1月前
|
C语言
大学生期末C语言实验(学生成绩和鞍点)
大学生期末C语言实验(学生成绩和鞍点)
143 0
大学生期末C语言实验(学生成绩和鞍点)
|
1月前
|
C语言
C语言条件运算符详解
C语言条件运算符,也称为三元运算符,是一种简化if-else语句的表达式,形式为:条件?表达式1:表达式2。当条件为真时,计算并返回表达式1的值;否则计算并返回表达式2的值。它可用于快速实现简单的条件分支逻辑。
|
1月前
|
C语言
3.4 C语言基本数据类型2
在C语言中,声明一个整型(int)变量时,需先写入&#39;int&#39;关键字,后跟变量名并以分号结尾。若同时声明多个变量,可在&#39;int&#39;后用逗号分隔列出所有变量名。例如,`int erns;` 或 `int hogs, cows, goats;` 都是合法声明。变量声明后需通过赋值语句如 `cows = 112;` 或使用函数如 `scanf()` 来初始化其值。
43 10
|
1月前
|
存储 程序员 C语言
3.1 C语言基本数据类型
在C语言中,整数类型如`int`类型是很有用的,它属于有符号整型,意味着该类型的值必须是整数,并且可以是正整数、负整数或者零。`int`类型的数值范围依据计算机系统有所不同,通常取决于系统的位宽。例如,在早期16位的IBM PC兼容机上,`int`类型使用16位存储,取值范围为-32768至32767;而在当前32位系统中,使用32位存储,拥有更宽泛的取值范围。随着64位处理器的普及,`int`类型能够存储的整数范围将进一步扩大。根据ISO C标准,`int`类型的最小取值范围被规定为-32768到32767。系统通常会利用一个特殊的位来表示整数的正负。
34 10
|
1月前
|
C语言
3.1C语言基本数据类型
在C语言中,初始化变量是指为变量设定初始值,通常在声明时直接完成,例如 `int cows=32;`。应注意避免在同一语句中混合初始化与未初始化的变量,如 `int dogs, cats=94;` 这样的写法容易引起误解。此外,整型常量如21、32等在C语言中被视为int类型,但非常大的整数则不然,且带有小数点或指数的数值不属于整型常量。
27 9