C语言实验指导(不含答案) 下载本文

Clear all breakpoints 清除所有断点。

View next breakpoint 将光标移动到下一个断点处。

3.调试编译过程中的常见错误提示

(1) Statement missing; 语句缺少“;”

(2) Unable to open include file ? xxxxxxxx.xxx ? 不能打开包含文件

(常在第 1 句 #include 中的 stdio.h 拼写错误时出现)

(3) Undefined symbol ? xxxxxxxx ? 标识符“xxxx”未定义

(常见于拼写错误,如 main、printf 等拼写错误)

(4)Unexpected end of file in comment started on line

源文件在某个注释中意外结束.通常是由于注释结束标志(*/ )漏掉引起的。

(5) Unknown prepocessor directive ?xxx?

不认识的预处理命令:“xxx”(常见于 include 拼写错误)

(6) Function should return a value 函数应该返回一个值

源文件中声明的当前函数的返回类型既非int型也非void型,但编译程序未发现返回值。

实验2 数据类型、运算符和表达式

一、实验目的

1、掌握C语言数据类型,熟悉如何定义一个整型、字符型和实型的变量,以及对它们赋值的方法。

2、掌握不同类型数据之间赋值的规律。

3、学会使用C语言的有关算术运算符,以及包含这些运算符的表达式,特别是自加(++)和自减(--)运算符的使用。

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

二、实验内容和步骤

1、输入并运行下面的程序 #include void main() { char c1, c2; c1 = 'a'; c2 = ?b?; printf (“%c %c\\n”, c1, c2); }

(1)运行此程序。

(2)再此基础上增加一个语句:

printf(“%d%d\\n”,c1,c2); 再运行,并分析结果。 (3)再将第2行改为:

int c1,c2;

再使之运行,并观察结果。 (4)再将第 3、4行改为:

c1 = a; /* 不用单撇号 */ c2 = b;

再使之运行,分析其运行结果。 (5)再将第 3、4行改为:

c1 = ”a”; /* 用双撇号 */

c2 = ”b”;

再使之运行,分析其运行结果。 (6)再将第 3、4行改为:

c1 = 300; /* 用大于255的整数 */ c2 = 400;

再使之运行,分析其运行结果。 2、 输入并运行以下程序 #include void main() { char c1 = ?a?, c2 = ?b?, c3 = ?c?, c4 = ?\\101?, c5 = ?\\116?; printf (“a%c b%c\\tc%c\\tabc\\n”,c1, c2, c3); printf(“\\t\\b%c%c”, c4, c5); } 在上机前先用人工分析程序,写出应得结果,上机后将二者对照。

3、 输入并运行下面的程序 #include void main() { int a,b; unsigned c,d; long e,f; a = 100; b = -100; e = 50000; f = 32767; c = a; d = b; printf(“%d,%d\\n”, a, b); printf(“%u,%u\\n”, a, b); printf(“%u,%u\\n”, c, b); c = a = e; d = b = f; printf(“%d,%d\\n”, a, b); printf(“%u,%u\\n”, c, d); } 请对照程序和运行结果分析:

(1)将一个负整数赋给一个无符号的变量,会得到什么结果。 (2)将一个大于32767的长整数赋给整型变量,会得到什么结果。

(3)将一个长整数赋给无符号变量,会得到什么结果(分别考虑该长整数的值大于或等于65535 以及小于65535 的情况)。

同学们可以改变程序中各变量的值,以便比较。 例如: a = 65580, b = -40000, e = 65535, f = 65580。 4、 输入以下程序

#include void main() {

int i,j,m,n; i = 8; j = 10; m = ++i; n = j++;

printf(“%d,%d,%d,%d”, i, j, m, n); }

(1)运行程序,注意 i、j、m、n 各变量的值,分别作以下改动并运行。

(2)将第4、5行改为: m = i++; n = ++j; 再运行。 (3)将程序改为: #include void main() { int i,j; i = 8; j = 10; printf(“%d,%d”, i++, j++); } (4)在(3)的基础上,将printf 语句改为: printf(“%d,%d”, ++i, ++j); (5)再将printf 语句改为: