当前位置:文档之家› C实验指导

C实验指导

C实验指导
C实验指导

实验四基本输入输出语句

4.1目的和要求

1. 掌握标准输出函数printf的调用形式。

2. 掌握printf函数中常用的格式说明。

3. 掌握简单的输出格式设计。

4. 掌握标准输入函数scanf的调用格式。

5. 掌握scanf函数中常用的格式说明。

6. 掌握使用scanf函数进行数据输入的方法。

4.2知识回顾

1. printf()函数的一般调用形式

printf()函数是C语言提供的标准输出函数,用来在标准输出终端设备上按指定格式进行输出。在函数调用后加“;”构成输出语句。

例如:printf(“a=%d, b=%d”,a,b);

以上输出语句中,printf是函数名,用双引号括起来的字符串部分是输出格式控制,决定了输出数据的内容和格式。a,b为输出项,是printf函数的实参。

输出语句输出结果:

printf("%s\n","Hello!"); //Hello!

printf("%10s\n","Hello!"); //####Hello!

printf("%10.3s\n","Hello!"); //#######Hel

printf("%c\n",'A'); //A

printf("%5c\n",'A'); //####A

(1)给输出项提供输出格式说明:将要输出的数据按照指定的格式说明。

(2)提供需要原样输出的文字或字符:除了格式转换说明外,字符串中的其他字符将按原样输出。

2. printf()函数中常用的格式说明

(1)格式字符及其功能。

(2)长度修饰符:在%和格式字符之间,可以加入长度修饰符,以保证数据输出格式的正确和对齐。

例如:假如有如下定义:

float f=12345.678;

double d=12345.6789056789;

通过实验验证以下的printf与相应的运行结果:

输出语句输出结果

printf("%f\n",f); //12345.677734

printf("%f\n",d); //12345.678906

printf("%10.2f\n",f); // 12345.68

printf("%e\n",d); //1.234568e+004

(3)输出数据所占的宽度说明,输出数据带“+,—”号。

3. scanf()函数的一般调用格式

scanf函数的一般调用形式如下:

scanf(格式控制,输入项1,输入项2,…);

例如:若k为int型变量,a为float型变量,y为double型变量,可通过以下函数调用语句进行输入:

scanf(“%d%f%lf”,&k,&a,&y);

4. scanf()函数中常用的格式说明

每个格式说明都必须用%开头,以一个“格式字符”作为结束。

在格式串中,必须含有与输入项一一对应的格式转换说明符。

在scanf函数的格式字符前可以加入一个正整数指定输入数据所占的宽度,但不可以对实数指定小数位的宽度。

由于输入是一个字符流,scanf从者个流中按照格式控制指定的格式解析出相应数据,送到指定地址的变量中。

scanf函数有返回值,其值就是本次scanf调用正确输入的数据项的个数。

5. 通过scanf()函数从键盘输入数据

(1)输入数值数据。

若要给k赋值10,a赋值12.3,y赋值1234567.89,输入格式可以是(输入的每一个数据之前可有任意空格):10 12.3 1234567.89

此处表示回车键。也可以表示为:

10

12.3

1234567.89

(2)指定输入数据所占的宽度,可以在格式字符前加入一个正整数指定输入数据所占的宽度。

例:scanf(”%3d%5f%5lf”,&k,&a,&y);

(3)跳过某个输入数据,可以在%和格式字符之间加入“*”号,作用是跳过对应的输

入数据。

(4)在格式字符控制串中插入其他字符。

例如:#include

void main()

{int a,b,c;

getchar();

scanf("%d%d%d",&a,&b,&c);

printf("%d,%d,%d\n",a,b,c);}

6. 其他输入输出格式

(1)使用putchar() 函数——输出单个字符

#include

void main()

{

char a,b,c;

a='A';

b='B';

c='C';

putchar(a);putchar(b);putchar(c);putchar('\n');

putchar(a);putchar('\n');putchar(b);putchar('\n');putchar(c);

}

(2)使用getchar() 函数——输入单个字符

#include

void main()

{

char c;

c=getchar();

putchar(c);

putchar('\n');

}

4.3应用案例——日期数据处理

1. 需求陈述

日期数据中包含年、月、日三部分数据。用户输入时可能以12/02/2003格式键入,也可

能以12-02-2003格式键入,还有可能以12:2:2003格式键入,都要求能够从输入数据中读取有效数据。

2. 需求分析

假设读入的日期数据格式为:12-2-2003或12/02/2003,该数据格式中的年、月、日三个数据需要保存到相应的变量,但是连接年、月、日数据的连接符需要被丢弃。

当用户以12-02-2003形式键入日期数据时,该数据中的每一个数值(年、月、日)需要被读入对应的变量year、month、date内存单元中,为了去掉不需要的将年、月、日数据分开的连接符,直接方法是将这些字符包含在scanf的格式控制串中。

例如将语句写成:scanf(“%d─%d─%d?,&date,&month,&year);这条语句可以去掉以12-2-2003形式读入数据中的连字符,但是当用户输入如下格式的日期数据::12/2/2003或12:2:2003时,该语句语句不仅不能去掉不需要的字符(/或:),还会造成数据错误(只能正确得到date数据)。如果在输入格式字符串中使用scanf函数提供的*c格式。

将语句写成:scanf(“%d%*c%d%*c%d?,&date,&month,&year);就能够从输入数据中读取有效数据并丢弃任何%*c所指定的数据(不将其赋给某个变量)。

3. 设计

定义三个基本整型变量month、day、year,用于存放日期中月、日和年份数据,

通过scanf语句输入日期数据,并取的相应数值,分别赋值给day, month, year三个变量,然后通过printf语句输出日月年。详细设计过程如图2-4-1所示。

开始

定义变量

输入日期数据

输出day,mouth,year

结束

图2-4-1 程序流程图

4. 编码实现

#include

void main( )

{

int month,day,year;

printf("Enter a date in the form d-m-y:");

scanf("%d%*c%d %*c%d",&month,&day,&year);

printf("month=%d,day=%d,year=%d\n",month ,day,year);

}

5. 测试

(1)预期测试方案

测试目的——得到一个预期的日期数据。

输入数据——08:02:2015或者06-02-2015

预期结果——month=8,day=2,year=2015

程序运行结果如图2-4-2所示。

图2-4-2 预期程序运行结果(2)非预期测试方案

测试目的——得到一个错误的日期数据。

输入数据——08 02 ---2015

预期结果——不能输出正确结果。

程序运行结果如图2-4-3所示。

图2-4-3 非预期程序运行结果4.4实验小结

通过对该实训案例的学习,希望读者能够掌握以下两点:1.printf()函数和scanf()函数的使用。

2.输入与输出函数格式控制符的使用。

4.5 编程提高

1. 编写程序,通过键盘输入两个乘数,给小学生出一道乘法运算题,并输出正确的答案。提示:(1)提示输入两个乘数:乘数1和乘数2;(2)接受键盘输入的两个乘数;(3)以“乘数1*乘数2=”的形式显示乘法题;(4)输出正确的答案。

2. 从键盘输入学生姓名、年龄、性别、成绩,并在屏幕上显示。要求程序的输出形式如下:

Please input name、age、sex、score:

唐一哲19男89.5

Name age sex score

唐一哲19 男89.5

4.5本章小结

通过本章的案例学习,格式字符的个数必须与输入项的个数相同,数据类型必须一一对应,非格式字符要原封不动的输入。输入实行数据时,可以比不带小数点,即按整形数据输入,数值型数据与字符或字符串混合输入时,需要注意输入方式。指定输出格式,由格式字符串和非格式字符串两种组成,非格式字符串照原样输出。

实验九指针

9.1 目的和要求

1. 理解指针、地址和数组间的关系。

2. 掌握通过指针操作数组元素的方法。

3. 掌握数组名作为函数参数的编程方式。

4. 掌握通过指针操作字符串的方法。

5. 了解掌握使用断点调试程序的方法。

9.2 知识回顾

1. 指针变量的定义

定义指针变量的一般形式如下:类型名*指针变量名1,*指针变量名2,……;

如:int *pi,*pj; pi和pj都是用户标识符,在每个变量前的星号*是一个说明符,用来说明该变量是指针变量。

2. 元素与元素地址的表示方法

元素:a[i]、*(a+i)、p[i]、*(p+i)

元素地址:&a[i]、a+i、&p[i]、p+i

3. 地址值的获取

(1)通过求址运算符(&)获得地址值;

(2)通过指针变量获得地址值;

(3)通过标准函数获得地址值。

4. 对指针变量的操作

(1)通过指针来引用一个存储单元:如*p=*p+1,当*p出现在赋值号左边时,代表的是指针所指的存储单元;当*p出现在赋值号右边时,代表的是指针所指的存储单元的内容。

(2)移动指针:所谓移动指针就是对指针变量加上或减去一个整数,或通过赋值运算,使指针变量指向相邻的存储单元。

5. 函数之间地址值的传递

(1)形参为指针变量时实参和形参之间的数据传递:若函数的形参为指针类型,调用该函数时,对应的实参必须是基类型相同的地址值或者是已指向某个存储单元的指针变量。

(2)通过传送地址值在被调用函数中直接改变调用函数中的变量的值。指针作为函数的参数,传递的是实参变量的地址。形参变量本身改变,反过来不会影响实参指针值。

6. 函数的返回值

(1)函数返回值是通过return语句实现的。语句格式:return 表达式; 或return(表达式)。

(2)return语句中返回值的类型应于函数定义时类型一致,如果不一致以函数类型为准,调用时自动进行类型转换。

(3)函数值的类型不仅可以是简单的数据类型,而且可以是指针类型。

7. 一维数组和指针

一维数组和数组元素的地址:C语言中,在函数体中或在函数外部定义的数组名可以认为是一个存放地址值的指针变量名,其中的地址值是数组第一个元素的地址,也就是数组所占一串连续存储单元的起始地址,定义数组时的类型即是此指针变量的基类型。

8. 引用一维数组元素的方法

(1)通过数组的首地址引用数组元素。

(2)通过指针引用一维数组元素。

(3)用带下标的指针变量引用一维数组元素。 9. 二维数组和指针

引用二维数组元素的方法:

(1)通过地址引用二维数组元素。

(2)通过建立一个指针数组引用二维数组元素。 (3)通过建立一个行指针引用二维数组元素。 9.3 应用案例——查找 1. 需求陈述

输入10个整数存入数组a ,再输入一个整数x ,在数组a 中查找x ,若找到则输出相应的下标,否则显示“Not found ”。要求定义和调用函数search(int list[],int n ,int x),在数组list 中查找元素x ,若找到则返回相应的下标,否则返回-1,参数n 代表数组list 中元素的数量。

2. 需求分析

根据需求陈述,可知该程序具有的功能有以下四点: (1)数组定义;

(2)接收键盘数据实现数组创建; (3)查找子函数实现查找功能; (4)查找结果的输出; 3. 设计

根据需求陈述和分析,可知定义数组a[10],使用循环结构完成键盘数据的接收,实现数组的创建;定义子函数search(int list[],int n ,int x),三个形参分别用来接收主函数的三个实参,分别为数组的首地址、数组大小、要查找的数值,在search(int list[],int n ,int x)函数体中使用循环结构实现数组元素和x 值的大小比较,如果找到返回数组元素下标,如果找不到返回-1;在main()函数中使用if 语句根据search(int list[],int n ,int x)函数返回值来完成查找结果的信息输出。详细设计过程如程序流程图2-9-2和图2-9-3所示。

图2-9-2 search( )程序流程图

来自main( )实参 return i;

i<10 接收实参值

list[i] == x

T

T

F

F

return -1;

图2-9-3 main( )程序流程图

4. 编码实现

#include

int search(int list[], int n, int x) {

int i;

for(i = 0; i < n; i++){ if(list[i] == x) { return i;} }

return -1; }

int main(void) {

int a[10], i, x;

for(i = 0; i < 10; i++){ scanf("%d", &a[i]);

int a[10]; scanf("%d", &a[i]); 接收键盘输入待查找数据x

调用search()函数 输出查找到的相应元素 下标或Not found 开始

i<10 结束 T F

}

scanf("%d", &x);

i = search(a, 10, x);

if(i >=0)

printf("x is at %d\n", i);

else

printf("Not found\n");

}

5. 测试

(1)测试用例1

测试目的——待查找的数据属于数组元素数据,能够查找到。

输入数据——构建数组,并输入其中一个数组元素值,作为待查找数据。

测试结果——输出数组元素的下标。程序执行结果如图2-9-4所示。

图2-9-4 查找到元素值

(2)测试用例2

测试目的——待查找的数据不属于数组元素数据,不能够查找到。

输入数据——构建数组,并输入一个非数组元素值,作为待查找数据。

测试结果——输出“Not found”。程序执行结果如图2-9-5所示。

图2-9-5 没能查找到元素值

9.4实验小结

通过对该实训案例的学习,希望读者能够掌握以下五点:

1. 指针、地址和数组间的关系。

2. 通过指针操作数组元素的方法。

3. 数组名作为函数参数的编程方式。

4. 通过指针操作字符串的方法。

5. 使用断点调试程序的方法。

9.5 编程提高

1.请编写函数,其功能是对传送过来的两个浮点数求出和值与差值,并通过形参传送回调用函数。

2.请编写函数,对传送过来的三个数选出最大数和最小数,并通过形参传送回调用函数。

9.6 本章小结

通过本章的学习,总结为以下几点:

1. 通常在主调函数中定义指针数组指向多个字符串。

2. 函数:func(char **s,int n)或func(char *s[],int n)传递多个字符串首地址。

3. 一般都是整串操作,循环一般使用字符串个数进行控制,如:for(i=0;i

4. 返回指针值的函数:char *func(char *s,char ch)

5. 切记:返回的是地址,在主调函数中应使用指针类型变量接收函数返回值。

实验十 字符串

10.1目的和要求

1. 掌握字符串的定义和引用。

2. 掌握指针指向字符串和字符串数组的定义和引用。

3. 字符串的输入和输出方式。

4. 学会使用用于字符串处理的函数。

10.2知识回顾 1. 字符串的定义

(1)C 语言中,字符串是借助于字符型一维数组来存取的。比如用a[10]存放字符串“store ”。

(2)为了测实际字符串长度C 语言规定了一个字符串结束标志\0。

(3)‘A ’占一个内存单元,“A ”占两个内存单元。因为字符串隐含了一个空字符。 2. 字符串的引用

(1)C 语言中字符串常量给出的是地址值,不可以给字符串常量赋值。 (2)用给一般数组赋初值的方式给一维字符数组赋初值。 char str[10]={…s?,?t?,?r?,?i?,?n?,?g?,?!?,?\0?};

(3)在赋初值时直接赋字符串常量。char str[10]={“string!”};char str[10]=”string!”; char str[]=”string!”;注意:存储单元大小>=字符串长度+1. (4)不能用赋值语句给字符数组整体赋一串字符。 char mark[10]; mark=”C Program”;

以上赋值形式是不允许的,因为字符串常量给出的是地址值,而数组名mark 是一个地址常量不能被重新赋值。

(5)给数组元素逐个赋字符值,最后人为加入串结束标志。 3. 使指针指向一个字符串

(1)通过赋初值的方式使指针指向一个字符串。

char *ps1=”from one”;注意:是把存放字符串常量的无名存储区的首地址赋给指针变量ps1,是ps1指向字符串的第一个字符f 。 (2)通过赋值运算使指针指向一个字符串 char str[]=”from one”,*ps2; ps2=str;

(3)用字符数组存放字符串和用指针指向的字符串之间的区别 char mark[]=”PROGRAM”; char *pmark=”PROGRAM”; 虽然字符串的内容相同,但它们内存空间的存储分配是不同的,系统会给指向字符串的指针变量分配额外的存储空间,用于存放字符串首地址,而数组名则不需要。如图2-10-1所示。

pmark:

mark:

图2-10-1 内存分配

PROGRAM\0 PROGRAM\0

4. 字符串数组

(1)可以将一个二维字符数组视为一个字符串数组。 如:char name[10][80];

数组name 共有十个元素,每个元素可以存放80个字符(作为字符串使用时,最多可以存放79个有效字符,最后一个存储单元留给‘\0‘)。 (2)字符串数组可以在定义的同时赋初值。 char ca[3][5]={“a”,”bb”,”ccc”}; ca[0] ca[1] ca[2]

(3)可以定义字符型指针数组并通过赋初值来构成一个类似的字符串数组。 char *pa=[3]={“a”,”bb”,”ccc”} 5. 字符串的输入方式及格式

(1)用格式说明符%s 进行整串输入,遇到空格或者回车认为结束输入。 (2)用gets( )函数输入,遇到回车结束输入。 6. 字符串的输出方式及格式

(1)用格式说明符%s 进行整串输出,遇到第一个‘\0’结束输出。

(2)用puts 函数输出,遇到第一个‘\0’结束输出,并自动输出一个换行符。 7. 用于字符串处理的函数及格式

在C 语言中字符串处理函数比较丰富,常有的有strcpy( )、strcat( )、strlen( )、strcmp( ),具体功能及使用注意事项如表2-10-1所示。

表2-10-1 字符串处理函数 函数名称 调用形式 实现功能

strcpy

strcpy (s1.s2)

把s2所指字符串内容复制到s1所指存储单元中。函数返回s1值。s1必须指向一个足够容纳s2串的存储单元。 strcat strcat (s1.s2)

将s2所指字符串的内容连接到s1所指字符串后面,并自动覆盖s1串末尾的\0,返回s1所指的的地址值。s1所指字符串应有足够的空间容纳两串合并后的内容。 strlen strlen (s )

计算出以s 为起始地址的字符串长度,并作为函数值返回。这一长度不包括串尾的结束标志\0;

strcmp strcmp (s1.s2)

用来比较s1和s2所指字符串的大小。若串s1>s2,函数值大于0(正数),若串s1=s2,函数值等于0,若串s1

10.3应用案例 1. 需求陈述

输入一行字符串组成一个句子,单词之间用空格隔开,输入的字符数不超过100个,统计输入的单词数目,并输出单词数目。 2. 需求分析

根据需求陈述可知,该程序在执行过程中能够接受键盘输入的字符串,作为待判定的句子;能够对接受到的字符串进行单词识别,并能够统计单词数量;能够完成对统计的单词数目输出。 3. 设计

该问题的解决,首先需要定义字符数组,用于存放字符串,定义基本整型变量,用来存

a \0

b b \0

c c c \0

放单词的数目;调用gets 函数接收键盘输入的字符串,不能用scanf 函数输入,因为scanf 函数遇到空格即结束输入;用while 循环寻找第一个单词,即第一个非空字符,寻找到后进行计数,计算的结果放num 变量中,跳过本单词,移动下标,直到是一个空格或\0,如果是空格,则num++,再继续寻找第一个非空字符,如果是\0,则结束寻找,输出num 的值。 用while 循环计算一行句子中单词的个数,详细设计过程如程序流程图2-10-2所示。

图2-10-2 程序流程图

开始

int i=0,num=0 char str[100],c

gets(str)

c=str[i])

==' '

i++

c!='\0??

num++

c=str[i])!= ' '&&c!='\0'?

i++

c!='\0'?

printf("number of

word:%d\n",num)

结束

T F

F

F

T T

T F

4. 编码实现

#include

void main()

{

int i=0,num=0;

char str[100],c;

gets(str);

do{

while((c=str[i])==' ')

i++;

if(c!='\0')num++;

while((c=str[i])!=' '&&c!='\0')i++;

}while(c!='\0');

printf("number of word:%d\n",num);

}

5. 测试

测试目的:输入字符串构成语句,统计出单词数目并输出。

输入字符串:this is a book!

预测结果:4,程序运行结果如图2-10-3所示。

图2-10-3 程序运行结果

6. 案例应用提高

修改源码,要求——用户接口更友好,用户使用过程更方便,有必要的信息提示;单词的识别算法处理过程采用for循环实现。

#include

void main()

{

char str[100];

int i,num=0,word=0;

char c;

printf("Please input the sentence:\n");

gets(str);

for(i=0;(c=str[i])!='\0';i++)

{

if(c==' ')

word=0;

else if(word==0)

{

word=1;

num++;

}

}

printf("There are %d words in the sentence.\n",num);

}

修改后的程序运行结果如图2-10-4所示。

图2-10-4 程序运行结果

10.4实验小结

通过对该实训案例的学习,能够充分的认识到字符串的存储完全依赖于字符数组,但字符数组又不等于是字符串变量。要熟练掌握字符串的存取方式。

10.5编程提高

1. 编写程序,从输入的10个字符串中找出最长的那个串。

2. 请编写函数,判断一字符串是否是回文,若是回文函数返回值为1,输出yes,否则返回值为0,输出no。回文是顺读和倒读都一样的字符串。

10.6本章小结

C语言中,字符串存放在一维数组中,第一个字母的地址即为数组的首地址,将一串字符连续的存放于一块存储单元中,最后系统自动的加‘\0’作为字符串结束标志。由于数组中每一个元素又可以是字符,所以又将此数组称为字符串数组,即二维数组。

C语言,还可以将指针指向字符串。指针存放的只能是地址,存放的地址就是要指向的地址,指针体现了C语言的灵活性。

为了具体的应用字符串,C语言设置了许多用于处理字符串的函数。输入函数gets,输出函数puts,复制函数strcpy,连接函数strcat,比较函数strcmp,计算字符串长度函数strlen。体现了C语言功能的强大性。

学习字符串要先学习数组、指针和函数调用。

C语言程序设计实验报告(数组)

C语言程序设计实验报告(数组) 1实验目的 (1)熟练掌握一维数组,二维数组的定义,初始化和输入、输出方法; (2)熟练掌握字符数组和字符串函数的使用; (3)掌握与数组有关的常用算法(查找、排序等)。 2实验内容 编写函数catStr(char str1[],char str2[])用于进行两个字符串的连接,编写函数lenStr(char str[])用于统计一个字符串的长度,并在主函数中调用。 要求: 1、不允许用strcat()和strlen()字符处理库函数; 2、在主函数以直接初始化的方式输入两个字符串str1和str2.调用函数 strlen()计算并返回两个字符串的长度; 3、调用函数catstr()连接两个字符串(将str2连接在str1后面); 4、调用函数lenstr()计算并返回连接后字符串的长度; 5、在主函数中输入两个原始的字符串及几个字符串的长度,以及处理后字 符串及其长度。

3算法描述流程图

4源程序 #include #include void catStr(char str1[],char str2[]) { int i,j; for (i=0;str1[i]!='\0';i++); for(j=0;str2[j]!='\0';j++) str1[i+j]=str2[j]; str1[i+j]='\0'; } lenStr(char m[] ) {int i;

for (i=0;m[i]!='\0';i++); printf("%d",i); } void main() {char s1[50]="forever",s2[50]="more"; printf("s1=%s,s2=%s",s1,s2); printf("\ns1的长度:"); lenStr(s1); printf("\ns2的长度:"); lenStr(s2); catStr(s1,s2); printf("\n连接后的字符:"); printf("%s\n",s1); printf("连接后字符的长度:"); lenStr(s1); printf("\n"); } 5测试数据 s1=forever, s2=more 6运行结果 7出现问题及解决方法 在输入程序时,少写了半边引号,调试时发现存在错误,找到了错误并加以改正。无论什么事,细心都是必不可少的,认真是解决问题的关键。 8实验心得 通过本次实验,对于函数的定义和声明,数组以及循环语句有了进一步的认识,掌握了字符数组和字符串函数的使用,以及与数组有关的常用算法。此次实验不是调用strlen()和strcat()函数,而是通过自己设计程序来进行字符串的连接以及计量字符串的长度,由此我学会了如何去理清自己的思路来设计程序。

C语言程序设计实验指导(课后习题)参考答案

《实验指导》课后练习题参考答案实验1: 1.主函数 2-4:DDC 5.stdio.h 6-9:CCCC 实验2: 1.double 2-4:ABB 5.2 6-12:CDDDADC 13.! 14.8 15-17:ACC 18.G 19-20:CA 21.5 4 22.x=6c 23-25:DCA 26.0x 27.2.000000 28-29:AB 30.a=3 31.D 32.3.15 33.B 34.double 实验3: 1-3:CCD 4.B 5.2,0 6-8:CAC 9. (1)pass, (2)中 及格 不及格 10-12:ADD 13.2 14.B 15.10 16.6 17.x>=1 && x<=sqrt(10)

实验4: 1.B 2.1 3.A 4.3/5,5/8 5.30 实验5: 1.D 2.(1)9 (2)1 3-5:CDB 6.(1)10 (2)7 7.C 8.(1)x=16 (2)y=8 9.return 实验6: 1-5:CCADA 6.10,20 7.13 11 12 8.7 9.2 10.B 11.(1)3 (2) 1 12-13:CB 14.-31 15.221 16.main函数 17.22 18.(1)return (2)void 实验7: 1.C 2.auto 3.9 4.(1) 4 (2) 0 5.10 6.(1)5 (2) 7 (3) 8 7.C 8.110 9-12:DDBC 13.(1) 1 (2) 3

15.6 720 16.auto 17.48 18.(1)1 (2)2 19.D 20.D 21.5,25 22.6 实验8: 1-2. DD 3. 16 4. (1)0 2 3 (2)2 3 5 (3)7 11 13 5. (1)i<9 (2)j<9-i (3)a[j]=a[j+1] (4)a[j+1]=temp 实验9: 1. D 2. (1)-1 (2)2 3. (1)1 (2)a[i-1][j-1]+a[i-1][j] (3)j<=i 4. (1)1 3 4 5 6 7 (2)3 4 5 6 (3)End of main()! 实验10: 1. 0或NULL 2-5. CACA 6. (1)10 (2)15 (3)19 7. (1)ia[j] (3)”%d”,p+i (4)”%d”, *(p+i) 8. (1)2 6 (2)2 2 (3)4 6 实验11: 1. A 2. C 3. 7 4. (1)strlen(s) (2)s[i]>=’a’ && s[i]<=’z’(3)s[i]+32 (4)’\0’(5)s2[j]!=s2[n2-j-1] (6)j

C语言程序设计实验实验指导书及答案

实验一熟悉C程序运行环境 班级学号成绩 一、实验目的 1. 熟悉C语言Visual C++6.0调试环境。 2. 掌握C程序的编辑、调试及运行。 二、实验内容 项目1. 调试并运行下面程序,并写出运行结果: #include int main() { printf(“Good morning!\n”); printf(“Hello,world!\n”); return 0; } 运行结果(注意,按照屏幕输出格式写): 项目2. 调试并运行下面程序,并写出运行结果: #include int main() { int a , b , sum; /*定义变量*/ a=23; b=56; /*为变量赋值*/ sum=a+b; /*计算两个变量的和*/ printf(“sum is %d\n”,sum); /*输出计算结果*/ return 0; } 运行结果:

项目3. 调试并运行下面程序,并写出运行结果: #include int max(int,int); int main() { int a , b , c; /*定义变量*/ a=23; b=56; /*为变量赋值*/ c=max(a,b); /*调用max函数,将得到的值赋给c*/ printf(“max is %d\n”,c); /*输出c的值*/ return 0; } int max(int x,int y) /*定义max函数,函数值为整型*/ { int z; /*定义变量*/ if(x>y) z=x; else z=y; return(z); /*将z的值返回*/ } 运行结果: 三、提高部分 1.试想,如果求10个数中的最大者,则程序该如何编写。 程序代码 运行结果:

《C语言》实验指导书

内江职业技术学院 上机实验指导书 科目:C语言程序设计 系别:电商学院 班级:15软件1班 教师:王刚 2015—2016学年第一学期

《计算机基础》课程实验指导书 目录 实验一C语言概述 (1) 实验二基本数据类型 (3) 实验三输入输出和算法 (6) 实验四选择和循环结构 (10) 实验五循环结构和函数 (13) 实验六模块化设计 (14) 实验七一维数组和字符串 (18) 实验八多维数组和指针 (20) 实验九指针 (22) 实验十指针和结构体 (23) 实验十一链表和共同体 (26) 实验十二文件 (27) 教材和参考书 1、教材: 《谭浩强、张基温,《C/C++程序设计教程》,高等教育出版社。 2、参考书: (1)《(美)H.M.Deitel,P.J.Deitel著,薛万鹏译,《C程序设计教程》,机械工业出版社。 (2)杨路明,《C语言程序设计教程》,北京邮电大学出版社。

实验一C语言概述 一、实验目的 1、了解所用的计算机系统。 2、了解在该系统上如何进行编辑、编译、连接和运行一个C程序。 3、通过运行简单的C程序了解C程序的特点。 二、实验内容 1、熟悉C语言集成环境。 2、利用C语言集成环境进行编辑、编译、连接和运行一个C程序。 3、运行一个自己编写的程序,程序的功能是输出两行文字。 三、实验设备及环境 微机若干台,并安装有C语言软件。 四、实验步骤 1、熟悉所用的系统。了解Windows资源管理器的使用方法:文件的查看、复制、运行等方法,C所在目录,文本文件的建立方法。 2、进入C,并新建一个C源程序文件。 3、熟悉C的集成环境,了解各菜单项有哪些子菜单。 4、输入下面的程序,注意区分大小写。 #include void main() { printf("This is a C program.\n"); } 编译并运行程序。 5、关闭工作区,新建一个程序,然后输入并运行一个需要在运行时输入数据的

C程序设计实验报告

实验1 C程序运行环境、数据类型、运算符和表达式 一、实验目的 1. 掌握Turbo C集成环境的进入与退出、Turbo C集成环境各种窗口的切换,了解Turbo C集成环境的设置。 2. 掌握C语言源程序的建立、编辑、修改、保存及编译和运行等操作。 3. 学会使用C语言的基本运算符(主要是算术运算符、赋值运算符)及其表达式。 4. 掌握C语言源程序的结构特点与书写规范。 二、实验要求 1. 根据题目要求,进行各种程序测试与验证,并记录结果。 2. 上机调试程序。按各个程序输入计算机,并进行编译和连接,如果在编译、连接中有错误信息,则要根 据这些信息找到程序中的错误所在,然后修改程序,直至正确。 3. 详细记录数据的输入、输出信息,按要求写出实验报告。 三、实验内容 1. 开机;进入Turbo C集成工作环境,了解Turbo C集成工作环境及其菜单的使用,输入如下C语言源程序,并以exl.C存盘。 / *ex1.c* / #include main() { printf("Hello!\n"); printf("This is C program!\n"); } 试编译、连接、运行该程序,并按Alt+F5查看运行结果。 运行结果是: 2. 输入并调试运行以下程序,查看运行结果 (由此结果可以了解到在实验用的微型机上,几种数据类型所占的字节数)。 main() { printf("char\t%d bytes\n",sizeof(char)); printf("short\t%d bytes\n",sizeof(short)); printf("int\t%d bytes\n",sizeof(int)); printf("long\t%d bytes\n",sizeof(long)); printf("float\t%d bytes\n",sizeof(float)); printf("double\t%d bytes\n",sizeof(double)); } 运行结果是: 3. 输入并调试运行以下程序。 main() {int i,j,m,n; i=8;j=10;

C实验指导书答案

篇一:c语言程序设计实验指导书课后答案 实验一 (1)编程求37+29的值,实习vc环境。 #include<stdio.h> void main() { int a,b,sum; a=37; b=29; sum=a+b; printf(sum=%d,sum); } (2)从键盘输入三个整数,求出最大数并输出。 #include<stdio.h> void main() { int a,b,c,y; int max(int x,int y); printf(input a,b,and c:); scanf(%d,%d,%d,&a,&b,&c); y=max(a,b); y=max(y,c); printf(\nmax=%d\n,y); } int max(int x,int y) { int z; if(x>y) z=x; else z=y; return(z); } (3)通过上机实践,运行下列程序并分析输出结果。 a 程序代码 #include<stdio.h> void main() { char ch=a; printf(%c对应的ascii码是:%d\n,ch,ch); } 程序输出结果:a对应的asc||码是:97b 程序代码 #include<stdio.h> void main() { int a=168;

float b=123.456; float x=35.567,y; printf(a=%5d\n,a); printf(a=%-5d\n,a); printf(b=%6.2f\n,b); printf(b=%e\n,b); y=(int)(x*100+0.5)/100.0; printf(x=f,y=%f\n,x,y); } 程序输出结果: a=168 a=168 b=123.46b=1.234560e+002 x=f,y=35.567001 c程序代码 #include<stdio.h> void main() { int a=168; printf(十进制数%d对应的八进制数是%o\n,a,a); printf(十进制数%d对应的十六进制数是%x\n,a,a); } 程序输出结果: 十进制数168对应的八进制数是250 十进制数168对应的十六进制数是a8 实验二 2.1顺序结构 2.1.1已知a=1.5,b=5.3,c=2.9,计算s=??2 -4ac的结果并输出。 #include<stdio.h> void main() { float a,b,c,s; a=1.5; b=5.3; c=2.9; s=b*b-4*a*c; printf(s的值是%f\n,s); } 2.1.2输入某学生的三个科目的期末考试成绩,计算出该学生的成绩总分和平均分。#include <stdio.h> void main() { int math,english,c_program; float sum ,average;

《C语言》实验指导书

《C语言程序设计》 实 验 指 导 书 华中师范大学信息技术系 二00九年三月

项目一:熟悉C语言的运行环境及简单程序设计 (12) 实验一熟悉C语言的运行环境 实验二c程序初步 (3) 实验三数据类型及输入输出 (5) 实验四运算符与表达式 (8) 项目二:流程控制、指针、数组、模块化程序设计 实验五分支程序设计 (9) 项目六循环程序设计 (11) 项目七函数 (12) 项目八数组 (13) 项目九指针 (15) 项目三:综合程序设计——竞赛编排及优胜排序 (注:每个项目应包含实验学习目标、实验内容、实验原理、实验设备、实验步骤、实验注意事项或实验思考等内容。 基本型实验应有明确的实验学习目标、详细的过程和具体的结果;综合设计型实验应有明确的实验学习目标、可参考的过程和实验结果评价标准)

实验基本要求 1、每次实验前,学生必须预习实验内容,实验程序必须自行编制、自行调试。 2、每次实验,学生都必须提交实验报告,内容包括实验目的、实验内容、实验程序、实验过程(软件的使用、程序的调试)等,见下面的实验报告模版。 3、学生第一次上机时,应在教师机指定文件夹下建立以自己学号+姓名的子文件夹,例如学号为2005683001的学生张三,应在教师机指定文件夹下建立“2005683001张三”的子文件夹,此文件夹就是学生张三存放本课程实验全部文档的文件夹,也是教师评价学生饰演成绩的主要依据。 4、学生每次实验完毕后,都应将实验报告、实验程序等文档上传到教师机自己建立的子文件夹中。 5、学生每次实验,都应该在考勤表上签到。 附 华中师范大学信息技术系c语言程序设计实验报告 实验目的: 实验设备(包括软件): 实验内容: 实验过程: 实验程序及实验结果: 实验体会:

C语言程序设计实验报告

《C程序设计》实验教学大纲 一、适用范围 大纲适用信息管理专业本科教学使用。 二、课程名称 C程序设计 三、学时数与学分 总学时:90 总学分: 4 实验学时:28 实验学分:1 四、教学目的和基本要求 目的:通过C程序设计实验,培养学生对学习程序设计的兴趣,加深对讲授内容的理解,尤其是通过上机来掌握语法规则,使学生全面了解 C 语言的特点,熟练掌握C 语言程序设计的基本方法和编程技巧。 基本要求:了解和熟悉C语言程序开发的环境;学会上机调试程序,善于发现程序中的错误,并且能很快地排除这些错误,使程序能正确运行,达到实验知识和理论知识的融会贯通。上机实验前,学生必须事先根据题目的内容编好程序,然后在实验时输入程序、调试程序、直至运行结果正确为止,上机结束后,应整理出实验报告。 注:带*的实验项目为选做实验项目 六、教材、讲义及参考书 《C程序设计题解与上机指导》谭浩强主编清华大学出版社 七、实验成绩评定办法 实验成绩=平时实验表现+实验报告。实验成绩占总成绩的20%。 实验成绩以等级形式给出,评定等级分优、良、中、及格、不及格五类。 1、平时考核:上机实验前,学生必须事先根据题目的内容编好程序,然后在实验时输入程序、调试程序、直至运行结果正确为止。在实验中,教师可根据学生编程操作能力、观察和分析及运用知识能力、程序编制正确性以及学生的课堂纪律、实验态度、保持实验室卫生等方面的表现进行综合考核。

2、实验报告:学生实验后应按时完成实验报告。 八、实验教学大纲说明 本大纲共安排28学时的实验,其中带*号实验项目为选做实验项目,实际课时为18学时。实验项目多为设计性实验项目,每个设计性实验项目中都包含数个小的设计性题目,其中带*号的题目为选做题目,有时间和有能力的同学可以选做。 九、实验项目 实验一 C程序的运行环境和运行一个C程序的方法 一、实验目的 1.了解Visual C++编译系统的基本操作方法,学会独立使用该系统。 2.了解在该系统上如何编辑、编译、连接和运行一个C程序。 3.通过运行简单的C程序,初步了解C源程序的特点。 二、实验内容 1.用编辑程序,输入教材第一章例程序,并进行编译和运行。应了解所用的系统是用什么命令进行编译和连接运行的。编译和连接后所得到的目标程序的后缀是什么形式的 2.编写一个C程序,输出以下信息: **************************** very good! **************************** 3.输入并运行教材第一章中例,了解如何在运行时向程序变量输入数据。 实验二数据类型、运算符和表达式 一、实验目的 1.掌握C语言数据类型,熟悉如何定义一个整型、字符型、实型变量,以及对它们赋值的方法,了解以上类型数据输出时所用格式转换符。 2.学会使用C的有关算术运算符,以及包含这些运算符的表达式,特别是自加(++)和自减(--)运算符的使用。 二、实验内容 1.输入并运行以下程序: main( ) { char c1,c2; c1=97;c2=98; printf(“%c %c\n”,c1,c2); printf(“%d %d\n”,c1,c2); } 在此基础上 ①将第三行、第四行改为: c1=321;c2=353; 再使之运行,分析其运行结果。 ②将第二行改为: int c1,c2; 再使之运行,分析其运行结果。。 2.输入并运行以下程序: main( ) {int i=8,j=10,m,n; m=++i;n=j++;

C实验指导书

《C程序设计语言》实验指导书 信息教研室编 西南科技大学计算机科学与技术学院 2006年8月

实验一简单的C语言程序 1.1 实验类型:验证型实验2学时 1.2 实验目的 1、熟悉并学习使用C程序编译平台TurboC; 2、掌握如何在编译平台下编辑、编译、连接和运行一个简单的C程序; 3、掌握C语言基础数据类型,熟悉变量定义和赋值方法; 4、学会使用C算术运算符和算术表达式; 1.3 知识点介绍 1、C程序的结构。 一个程序有多个程序单位构成,每一个程序单位作为一个文件,编译系统分别对每个程序文件分别编译,然后连接起来形成可执行程序。 在一个程序单位中包含以下几部分: 预处理命令 全局声明部分 函数(有函数首部和函数体组成),一个C必须有一个(而且只能有一个)main()函数。 2、C数据类型和表达式 C有多种数据类型,数据类型隐含着该类数据的表示、存储及处理规则。 C运算符丰富,使用十分灵活。有运算符和括号将运算对象(操作数)连接起来,构成表达式。表达式中混合运算式要注意运算符的优先级和结合性。此外,不同数据类型运算时,存在类型转换(隐式自动转换和强制转换)。 3、C程序的编写实现 用C语言编写程序——对源程序文件进行编译声称目标文件——对目标文件连接形成可执行程序——运行程序得到结果——分析结果。 1.4 实验内容 题目1 最简单的C程序 按提示的操作步骤,输入下面程序代码,编译连接并执行。

[实验提示] 按照操作步骤创建第一个应用: (1)编辑你的第一个C源程序 (2)保存你的源文件 (3)编译、连接得到可执行程序 (4)改正源程序中的错误 (5)运行你的第一个程序 [思考与扩展] 1、如果程序中大小写输入错误如main 写成Main,结果会怎样? 2、编译运行通过后,本程序输出了一行字符,如果还想输出一行字符: "it’s too easy! " 程序代码该如何修改添加? 提示:注意使用换行控制符’\n’ 题目2 简单应用—求圆柱体的体积 输入下面程序代码,编译运行。 [实验提示] 按照第一题的操作步骤新建工程,输入代码,编译连接,执行程序,输入测试数据分析结果是否正确,如有错误改正后再重新编译连接,直到没有错误为止。 [测试数据] 运行时输入: 5 8

C语言程序设计实验指导书(新编)

C语言程序设计实验指导书 桂林电子科技大学信息科技学院

前言上机实验的目的和要求 一上机实验的目的 上机实验的目的,绝不仅仅是为了验证教材和讲课的内容,或者验证自己所编程序正确与否。学习程序语言,上机实验的目的如下: 1 加深对讲授内容的理解,尤其是一些语法规定,光靠课堂讲授,既枯燥无味又难以记住,通过多次上机,就能自然、熟练地掌握语法规定。 2 了解和熟悉C语言程序开发环境。熟悉一两种环境(计算机系统的软件和硬件条件),再遇到其他的系统时便会触类旁通,很快学会。 3 学会上机调试程序,也就是善于发现程序中的错误,并且能很快地排除这些错误,使程序能够正确地运行。要真正掌握计算机应用技术,就不仅应当了解和熟悉有关理论和方法,而且要求自己动手实践能力强。 4 在做实验时千万不要在程序通过后就认为万事大吉,完成任务了,应当在通过的程序上做一些调试和修改,看看会得到什么结果。多动脑筋思考,将会对你有很大帮助。 二上机实验前的准备工作 1 了解所用的计算机系统的性能和使用方法; 2 复习和掌握与本实验有关的教学内容; 3 准备好上机所用的程序,切忌自己不思考、不编制程序或抄袭别人的程序; 4 准备好调试和运行时所需的数据。 三上机实验的步骤 1 调出C语言编译系统,进入C语言工作环境; 2 输入自己编制好的程序; 3 检查输入是否有错,及时更正; 4 进行编译和连接; 5 运行程序,分析结果。 四、实验结束,整理实验报告 实验报告应包括以下内容: 1 上机题目; 2 程序清单; 3 运行结果; 4 对结果的分析和本次获得的经验和体会。

实验一 C语言程序初步 数据类型、运算符和表达式 一实验目的 1 熟悉C语言运行环境——Microsoft Visual C++ 6.0中文版。 2 掌握C语言程序的书写格式和C语言程序的结构,初步了解C源程序的特点。 3 掌握C语言上机步骤,了解如何编辑、编译、调试和运行一个C程序的方法。 4 掌握C语言数据类型,熟悉如何定义一个整型、字符型和实型的变量,以及对他们赋值的方法。 5 掌握不同的类型数据之间赋值的规律。 二实验内容 1 C语言上机步骤 ⑴开机,启动Microsoft Visual C++ 6。 ⑵建立工程文件:在“文件”菜单中选择“新建”命令项,在弹出的“新建”对话框的“工程”选项卡中选择“Win32 Console Application”选项,在“工程”框中输入工程文件名sy1,在“c:位置”下拉框中输入或选择文件夹,单击“确定”;在以下弹出的两个对话框中分别单击命令按钮“完成”和“确定”。 ⑶建立C++源文件:在“工程”菜单中选择“添加到工程”—“新建”命令项,在弹出的“新建”对话框的“文件”选项卡中选择“C++ Source File”,在右边的“文件”框中输入文件名sy11后单击“确定”。 ⑷输入源程序:在弹出的文件编辑窗口中输入下面的源程序: #include void main() { printf("Hello,World!\n"); printf("Welcome to the C language world!\n"); printf("Everyone has been waiting for.\n"); } ⑸编译:用“编译”菜单的“编译”命令项对源文件sy11.cpp进行编译,如果程序有语法或语义错误,在屏幕下面的窗口会出现错误信息;这时候要修改源程序、保存后重新编译。直到修改了全部错误,屏幕下面的窗口会出现下面的信息:

C语言程序设计实验实验指导书及答案

实验一熟悉C程序运行环境 班级学号姓名成绩 一、实验目的 1. 熟悉C语言Visual C++调试环境。 2. 掌握C程序的编辑、调试及运行。 二、实验内容 项目1. 调试并运行下面程序,并写出运行结果: #include <> int main() { printf(“Good morning!\n”); printf(“Hello,world!\n”); return 0; } 运行结果(注意,按照屏幕输出格式写): 项目2. 调试并运行下面程序,并写出运行结果: #include <> int main() { int a , b , sum; /*定义变量*/ a=23; b=56; /*为变量赋值*/ sum=a+b; /*计算两个变量的和*/ printf(“sum is %d\n”,sum); /*输出计算结果*/ return 0; } 运行结果:

项目3. 调试并运行下面程序,并写出运行结果: #include <> int max(int,int); int main() { int a , b , c; /*定义变量*/ a=23; b=56; /*为变量赋值*/ c=max(a,b); /*调用max函数,将得到的值赋给c*/ printf(“max is %d\n”,c); /*输出c的值*/ return 0; } int max(int x,int y) /*定义max函数,函数值为整型*/ { int z; /*定义变量*/ if(x>y) z=x; else z=y; return(z); /*将z的值返回*/ } 运行结果: 三、提高部分 1.试想,如果求10个数中的最大者,则程序该如何编写。 程序代码 运行结果:

C语言实验指导及报告模板

C语言程序设计

附件1:实验报告模板 C语言程序设计 实验报告 实验一简单的C程序 教学班级:冶金136 学号:01 姓名:张博 课程教师:胡春安实验教师:胡春安 完成时间:2015-2016学年第1学期

实验一简单的C程序 实验时间:2机时 一、实验目的 1. 熟悉C程序编辑环境,掌握主要菜单项的操作和作用。 2. 熟悉编写一个C程序的上机过程(编辑、编译、链接和运行)。 二、实验意义 通过上机实验,加深对第一章所学基本知识:C语言的基本结构和简单C 程序的理解。通过调试简单的C程序,让学生对C程序的编辑、编译、链接和运行有一个直观的体验和熟悉,激发学习的好奇心和兴趣,为后面的全面学习奠定非常必要的基础。 三、实验内容 1.验证实验 (1)掌握程序的编辑、编译、连接、运行、调试过程,按以下步骤进行实验。 ?输入源程序 #include int main() { float a,b; a=12 b=10; c=a%b; printf("a=%d,b=%d,c=%d",a,b,c); return 0; } ?编译、链接及运行,并记录下列问题: ①您在编辑、编译该程序时,在输出窗口显示了几条错误信息?请记录在实验报告中。 C:\Users\h\Desktop\c\ex1\main.c||In function 'main':| C:\Users\h\Desktop\c\ex1\main.c|6|error: expected ';' before 'b'| C:\Users\h\Desktop\c\ex1\main.c|7|error: 'c' undeclared (first use in this function)| C:\Users\h\Desktop\c\ex1\main.c|7|note: each undeclared identifier is reported only once for each function it appears in| C:\Users\h\Desktop\c\ex1\main.c|7|error: invalid operands to binary % (have 'float' and 'float')| ||=== Build failed: 3 error(s), 0 warning(s) (0 minute(s), 0 second(s)) ===| 错误1:变量b前少了分号“;” 错误2:变量c未定义; 错误3:%运算符运算对象必须是整型数据。

C语言实验指导书

C语言程序设计实验指导书 沈岚岚吕元长编写 桂林电子科技大学信息科技学院 2012.03

前言上机实验的目的和要求 一上机实验的目的 上机实验的目的,绝不仅仅是为了验证教材和讲课的内容,或者验证自己所编程序正确与否。学习程序语言,上机实验的目的如下: 1 加深对讲授内容的理解,尤其是一些语法规定,光靠课堂讲授,既枯燥无味又难以记住,通过多次上机,就能自然、熟练地掌握语法规定。 2 了解和熟悉C语言程序开发环境。熟悉一两种环境(计算机系统的软件和硬件条件),再遇到其他的系统时便会触类旁通,很快学会。 3 学会上机调试程序,也就是善于发现程序中的错误,并且能很快地排除这些错误,使程序能够正确地运行。要真正掌握计算机应用技术,就不仅应当了解和熟悉有关理论和方法,而且要求自己动手实践能力强。 4 在做实验时千万不要在程序通过后就认为万事大吉,完成任务了,应当在通过的程序上做一些调试和修改,看看会得到什么结果。多动脑筋思考,将会对你有很大帮助。 二上机实验前的准备工作 1 了解所用的计算机系统的性能和使用方法; 2 复习和掌握与本实验有关的教学内容; 3 准备好上机所用的程序,切忌自己不思考、不编制程序或抄袭别人的程序; 4 准备好调试和运行时所需的数据。 三上机实验的步骤 1 调出C语言编译系统,进入C语言工作环境; 2 输入自己编制好的程序; 3 检查输入是否有错,及时更正; 4 进行编译和连接; 5 运行程序,分析结果。 四、实验结束,整理实验报告 实验报告应包括以下内容: 1 上机题目; 2 程序清单; 3 运行结果; 4 对结果的分析和本次获得的经验和体会。

C语言实验指导

C语言实验指导书 实验一:简单的C语言程序 一、实验目的 1.了解C语言的语法结构和书写格式; 2.掌握C语言数据类型以及变量的定义和赋值;掌握运算符的种类、运算优先级和结合性;掌握不同类型数据间的转换和运算。 2.掌握C语言的表达式。 3.掌握C程序的编辑、编译、连接和运行的过程。 二、实验内容 1.输入并运行以下程序: #include void main( ) { char c1,c2; c1=97; c2=98; p rintf(“%c %c\n”,c1,c2); printf(“%d %d\n”,c1,c2); } 在此基础上 ①将第三行、第四行改为: c1=321;c2=353; (类型转换) 再使之运行,分析其运行结果。 ②将第二行改为: int c1,c2; 再使之运行,分析其运行结果。 2.输入并运行以下程序: ①#include void main() { int a,b,x; x=(a=3,b=a--); printf(“x=%d,a=%d,b=%d\n”,x,a,b); } x=3,a=2,b=3 ②#include void main() { float f1,f2,f3,f4; int m1,m2; f1=f2=f3=f4=2; m1=m2=1; printf(“%d\n”,(m1=f1>=f2) && (m2=f3

③#include void main() { float f=13.8; int n; n=(int)f%3; printf(“n=%d\n”,n); } 3.输入并运行以下程序: #include void main( ) { int i=8,j=10,m,n; m=++i;n=j++; printf(“%d,%d,%d,%d\n”,i,j,m,n); } 分别作以下改动并运行: ①将程序改为: #include void main( ) { int i=8,j=10; printf(“%d,%d\n”,i++,j++); (8,10) } ②在①的基础上,将printf语句改为: printf(“%d,%d\n”,++i,++j);(9,11) ③再将printf语句分别改为: printf(“%d,%d,%d,%d\n”,i,j, i++,j++);(8,10,8,10) printf(“%d,%d,%d,%d\n”,++i,++j,i,j); (9,11,8,10) ④程序改为: main( ) { int i=8,j=10,m=0,n=0; m+=i++; n-=--j; printf(“i=%d,j=%d,m=%d,n=%d\n”,i,j,m,n); } (i=9,j=9,m=8,n=-9) 4. 请将下列给出的两个程序段分别输入计算机后,分析其运行结果: ①void main() { int num; num=32767; printf(“num=%d\n”,++num); } ②void main() { int a=-2; printf(“%d, %d\n”,a, a--); }

北京邮电C语言程序设计实验指导书10版 V1.0

《C语言程序设计》 实 验 指 导 手 册 授课教师: 宋 茂 强 实验指导教师: 李 晶 教学对象: 一年级本科生 开课时间: 秋季学期 北京邮电大学软件学院 2010年8月

《C语言程序设计》实验指导手册 (2010年8月) 实验内容分为九部分,涉及到编程环境的使用,循环控制语句的练习,判断分支语句练习,函数的应用,模块化开发,数组和字符串的应用,结构体、指针以及链表的应用等,最终完成一个学生成绩管理系统的设计与实现。 关于实验的说明: 1. 实验环境为:Visual Studio C++ 6.0。 2. 有需要提交实验内容的部分在实验要求一项中有提示。 3. 实验内容提交至:ftp://59.6 4.164.17/软件学院/ 10级/软件学院10级C 语言程序设计用户名:student,密码:student。 4. 提交时请注意:每一部分都有对应的文件夹,每个班都有对应的文件夹。 提交内容时,遵守“学号-姓名”命名规则上传。比如,2010211501班某 同学张三,学号为100011,完成的第一部分实验包含了两部分:工程和 实验报告。工程的提交方法:找到“part 1”文件夹下 “10-01”文件夹,找 到“project”文件夹,并将工程打包为.rar包,命名为:100011-张三.rar, 传到这个文件夹下。实验报告的提交方法:找到“part 1”文件夹下 “10-01” 文件夹,找到“report”文件夹,将word形式的实验报告命名为:100011- 张三.doc上传至该文件夹下。 第一部分: VC6.0的使用(2学时) 1.实验目的 (1) 掌握Visual Studio C++ 6.0 编程环境的基本使用方法; (2) 掌握如何在Visual Studio C++ 6.0编程环境下为工程引入第三方类库。 2.实验内容 如何建立新的工程 (1) 打开【file】|【new】,出现new窗口。选择【project】选项卡,选择【Win32 Console Application】。在右面的【project name】栏中输入工程的名字,【location】项是指定当前的工程文件放在那个目录中,单击右面的按钮 可以进行更改。选择一个合适的目录(更为方便的方法是,在硬盘上建 立一个自己的目录,比如在D盘上建立一个目录名为C Programming, 那么,【location】这里就选择D:\ C Programming\ ,这样后面所有部分 的实验内容都可以放在这个目录下),最后单击【OK】。如图1-1所示。

c程序设计实验报告.docx

. C++ 程序设计 实 验 报 告 : 班级: 学号: 指导教师:

. 实验一VC6.0 环境入门与简单程序设计 一、实验目的: 1、熟悉 VC++6.0 开了环境并编写简单的C++ 程序。 3、使用 C++ 语言编写简单的输入输出程序。 4、使用 VC++6.0 的 DEBUG 调试功能:单步执行、设置断点、观察变量值。 二、实验内容: 1、使用 VC++ 建立一个标准C++ 程序,编译、运行如下程序: #include Int main() { Cout<< ”Hello World!\n”; Cout<< ”Welcome to C++!\n”; } 2、编程计算图形的面积。程序可计算圆形、长方形、正方形等的面积,运行时首先提 示用户选择图形类型,然后根据不同图形类型,输入相关参数计算其面积,并将其显示出来。 #include using namespace std; void circle_area(); void rectangle_area(); void square_area(); int main()

. { int i; while(1) { cout<<" 请输入图形类型(1:圆形; 2:长方形; 3:正方形; 4:退出。): "; cin>>i; switch(i) { case 1:circle_area();break; case 2:rectangle_area();break; case 3:square_area();break; case 4:return 0; default:cout<<"输入错误!\n"; } } } void circle_area() { float r,s; cout<<" 输入圆的半径:"; cin>>r; s=3.14*r*r; cout<<" 该圆的面积是:"<>a>>b; s=a*b; cout<<" 该长方形的面积是:"<>a; s=a*a; cout<<" 该正方形的面积是:"<

C语言程序设计实验-答案

-前言- /*非常感谢度娘以及各位网上C语言高手的支持,才能让敝人完成此文档的整理。 本文档集合了本人、度娘、众网友的力量,其中代码的正确率约为90%(不正确的有标注)。为回报度娘及众网友的帮助,本文档免费下载。 */ /*配“电子科技大学出版社(周信东主编)”的C语言程序设计实验*/ /*努力吧,骚年以及学妹们!*/ /*整理ed by 口玉刀一of GUET.*/ ===================== 实验一C语言程序初步 ===================== 1.---------------------------- 已知a=5,b=4,c=6,求出s并换行 #include"stdio.h" main() { int a,b,c,s; a=5;b=4;c=6; s=(a+b+c)/3; printf("a=%d,b=%d,c=%d\n,s=%d",a,b,c,s); } 2.------------------------------- 输入一个数字求他的平方 #include main() { int r,s; scanf("%d",&r); s=r*r; printf("s=%d\n",s); } 3.-------------------------------- (1) #include main() { printf(" *\n"); printf("***\n"); printf(" *\n"); } (2) #include

{ int v; int a,b,c; //a,b,c aer sides,v is volume of cube a=3;b=3;c=5; v=a*b*c; printf("v=%d\n",v); } ================================= 实验二数据类型、运算符和表达式 ================================= 1. (1)-------------------------------------------------- //总觉得打印结果怪怪的,DO YOU THINK SO? main() { char s1='3',s2='4',s3='5'; int c1=101,c2=102; printf("3%c\t4%c\t5%c\n",s1,s2,s3); //3%c为输出3和%c printf("s1=%d\ts2=%d\ts3=%d\n",s1,s2,s3);//注意哦,s1,s2,s3是char!而%d:输入输出为整形%ld 长整型%hd 短整型%hu无符号整形%u %lu%s:输入输出为字符串%c字符%f:输入输出为浮点型%lf双精度浮点型printf("c1=%d\t~%c\n",c1,c1); //换码符'\t',表示水平制表位(horizeontal tab),它的作用是将光标移到最接近8的倍数的位置 printf("c2=%d\t~%c\n",c2,c2); //注意c1,c2的类型 } (2) //运行结果为8.300000 %是求余数先运算x-y,把结果转换为int型的有利于四则运算 main() { float x=8.3,y=4.2,s; int a=7; s=x+a%5*(int)(x-y)%2/3; printf("s=%f",s); }

相关主题
文本预览
相关文档 最新文档