实验六 指针.

合集下载

c语言程序设计实验总结

c语言程序设计实验总结

C语言程序设计实验总结摘要该文档总结了我在C语言程序设计实验中的经验和教训。

通过这些实验,我对C语言编程的基本概念和技巧有了更深入的理解和掌握。

本文将综合分析每个实验的目标、方法和结果,并总结了我在实验中遇到的问题以及解决方法。

引言C语言是一种通用的高级程序设计语言,广泛应用于各个领域。

通过进行C语言程序设计实验,我们可以更好地了解C语言的语法和用法,提高我们的编程能力和问题解决能力。

本文将基于我在实验中的经验,对每个实验进行详细描述和总结。

实验一:基本输入输出程序设计实验一旨在加深对C语言程序设计的理解,熟悉基本的输入输出操作。

我们需要编写程序,实现基本的数据输入和输出,并进行简单的运算。

这个实验让我对C语言中的输入输出和基本数据类型有了更深入的理解。

实验二:条件语句和循环语句的应用实验二要求我们掌握条件语句和循环语句的使用方法,并能够通过这些语句解决实际问题。

我学会了使用if语句进行条件判断,以及使用for和while循环进行迭代操作。

通过这个实验,我可以更好地掌握程序流程控制和代码逻辑。

实验三:一维数组的应用实验三着重让我们学会使用一维数组来存储和处理大量的数据。

在这个实验中,我学会了声明和初始化数组,以及使用循环结构遍历数组元素。

这个实验对我后续的数据处理有了很大的帮助。

实验四:字符串处理实验四主要教我们如何处理字符串和字符数组。

在实验中,我学会了使用字符数组来存储和操作字符串,同时,了解了一些常见的字符串处理函数,如strlen、strcpy等。

这个实验让我更加熟悉字符串的处理方法。

实验五:结构体的应用实验五要求我们学会使用结构体类型来定义自定义数据类型,并通过结构体变量来访问结构体成员。

在实验中,我学会了如何定义和使用结构体类型,并能够通过结构体变量操作结构体成员。

结构体的灵活性和可扩展性让我在实际编程中受益匪浅。

实验六:指针的应用实验六是C语言程序设计实验中最重要的一部分。

通过实验,我对指针的概念和用法有了更深入的理解。

《C语言与程序设计》实验06---函数

《C语言与程序设计》实验06---函数

实验六函数一、实验目的1. 熟练掌握函数的定义、函数的类型和返回值。

2. 熟练掌握形式参数与实际参数、参数值的传递。

3. 掌握函数的嵌套调用与递归调用。

4.学会使用指向函数的指针变量。

5.了解指向指针的指针的概念及带参数的main函数。

6. 掌握局部变量和全局变量。

7. 掌握变量的存储类型。

8. 了解内部函数和外部函数。

二、实验学时:8课时三、预习知识1.标准库函数标准库函数是C系统提供的,这些库函数定义了一些基本的、常用的功能,用户可以使用这些库函数,但是在使用库函数之前需要用预编译命令# include将该库函数所在的头文件包含进来。

2.自定义函数定义函数一般有两种形式形式1:存储类型类型符函数名(类型符形参1,类型符形参2 ,… ) { 说明语句执行语句}形式2:存储类型类型符函数名(形参1,形参2 ,……)形参类型说明{ 说明语句执行语句}说明:①形参表中即使没有参数,函数名后的一对圆括号也不能省略。

②函数名前的类型符是用来说明函数返回值的数据类型(也作为函数的数据类型) 。

当函数值为整型时,类型符可以省略。

③当函数只完成某一特定操作不需要返回值时,可用类型标识符 void 说明,将函数定义成空类型。

④C 规定:不允许在一个函数内部再定义另外一个函数,即函数不允许嵌套定义。

⑤函数的存储类型:函数的存储类型有 extern 和 static 两种。

extern 型的函数除了可以被本程序中其它函数调用外,还可以被其它文件中的函数调用,这种函数称为外部函数,如果定义函数时省略 extern ,则隐含为外部函数。

static 型的函数只能被本源程序文件中的函数调用,称为内部函数(静态函数)。

3.函数的参数(1)在定义函数时函数名后面括号中的变量称为形参(形式参数),如果有两个以上形参,形参之间以逗号分隔。

形参是函数的内部变量,只在函数内部才有意义。

在未出现函数调用时,形参不占内存。

对每个形参必须指明其名字和数据类型。

程序设计基础实验报告

程序设计基础实验报告

实验一 用C 语言编写简单程序一、实验目的1. 熟悉VC6.0的编程环境,掌握运行C 程序的基本步骤。

2. 了解C 程序的基本框架,模仿例题编写简单的C 语言程序。

3. 正确书写算术表达式、赋值表达式和关系表达式。

4. 掌握基本输入输出函数的使用,正确调用C 语言提供的数学库函数。

5. 掌握简单的单步调试方法。

二、实验环境Windows XP ;Visual C++ 6.0。

三、实验内容1.在屏幕上显示一个句子“What is a computer?”。

2.求华氏温度150F 对应的摄氏温度。

计算公式如下:其中,c 表示摄氏温度;f 表示华氏温度。

3.输入x ,计算下列分段函数的值(保留2位小数),请调用sqrt 函数求平方根,调用pow 函数求幂。

4. 输入一个正整数m (0100)m ≤≤,求100i m i =∑。

四、实验要求1. 将上机验证正确的源代码写到实验报告上。

2.根据自己的真实感受,认真填写实验分析和实验心得以及问题和建议。

3.按时提交实验报告。

553299c f =⨯-⨯21(1)2 x<02()0x x f x ⎧+++⎪=≥一、实验目的1.熟练掌握关系表达式的使用。

2.熟练掌握使用else-if 语句实现多分支结构程序设计。

二、实验环境Windows XP ;Visual C++ 6.0。

三、实验内容1.输入x ,计算并输出下列分段函数sign(x)的值。

2.输入月薪salary ,输出应交的个人所得税tax (保留2位小数)。

按照2011年开始实行的新的个人所得税法,计算公式为:tax = rate*(salary-3500)-deduction 。

当salary≤3500时,rate=0、deduction=0当3500<salary≤5000时,rate=3%、deduction=0当5000<salary≤8000时,rate=10%、deduction=105当8000<salary≤12500时,rate=20%、deduction=555当12500<salary≤38500时,rate=25%、deduction=1005当38500<salary≤58500时,rate=30%、deduction=2775当83500<salary 时,rate=45%、deduction=135053.输入一个正整数n ,再输入n 个学生的百分制成绩,统计各等级成绩的个数。

C语言实验教案

C语言实验教案
二、实验学时 4学时
三、实验任务 1、熟悉 TrbuoC 集成环境
了解和熟悉编辑(Edit)窗口和信息窗口(Message)作用.试一下能否向信 息窗口输入程序,按功能键 F5,观察它有什么作用,再按一次 F6,再观察它有什 么作用。
按功能键 F10,并按回车键,观察 File 菜单,了解它们的作用和用法.用键盘 上的 键,分别选中 Edit,Run,Compile,Project,Debug,Break/watch,观察它们 的菜单,大致上了解它们的作用. 选择 File 菜单中的 New 并按回车键,在编辑窗口中随意输入几行字符,观察窗 口顶端 line 和 col 后面数字的变化。
i=8; j=10; m=++i; n=j++; printf(“%d,%d,%d,%d”,i,j,m,n) ; } a. 运行程序,注意i,j,m,n 各变量的值,分别作出以下改动并运行。 第 4、5 行改为: m=i++; n=j++;
3
再运行。 b. 将程序改为: main( ) { int i,j;
实验二 顺序结构程序设计
一、实验目的及要求 1. 掌握 C 语言中使用最多的一种语句——赋值语句的使用方法。 2. 掌握各种类型数据的输入输出的方法,能正确使用各种格式转换符。 二、实验学时
2学时 三、实验任务 1、掌握各种格式转换符的正确使用方法 a.输入程序
main( ) {int a,b;
float d,e; char c1,c2; double f,g;
2
main() { char c1=’a’,c2=’b’,c3=’c’,c4=’\101’,c5=’\116’;
printf(“a%c b%c\tc%ctabc\n”,c1,c2,c3); printf(“\t\b%c %c”,c4,c5); } 在上机前先用人工分析程序,写出应得结果,上机后将二者对照。 4、输入并运行下面的程序 main()

《C语言程序设计》实验报告实验六

《C语言程序设计》实验报告实验六

《C语言程序设计》实验报告实验六使用指针的程序设计学号姓名一、实验目的1、掌握指针的概念,会定义和使用指针变量;2、能正确使用数组的指针和指向数组的指针变量;3、熟悉指针作为函数参数的定义和调用方法;4、能正确使用字符串的指针和指向字符串的指针变量。

二、实验内容1.分析下面的程序并上机运行程序,要求写出3组以上程序的运行结果。

#include <stdio.h>void main(){int *p1,*p2,*p;int a,b;printf("Input a b please");scanf("%d%d",&a,&b);p1=&a;p2=&b;if(a>b){ p=p1;p1=p2;p2=p;}printf("*p1=%d, *p2=%d\n",*p1,*p2);printf("a=%d, b=%d\n",a,b);}『运行结果:』输入1,2得:*p1=1,*p2=2a=1,b=2输入2,1得:*p1=1,*p2=2a=2,b=1输入56,123得:*p1=56,*p2=123a=56,b=1232.下列程序的功能是分别求出数组中所有奇数之和以及所有偶数之和。

形参n给了数组中数据的个数,利用指针odd返回奇数之和,利用指针even 返回偶数之和。

请在下面空白处将实现这一功能的函数完善,并且调试运行出结果。

#include <stdio.h>#define N 10void fun(int *a,int n,int *odd,int *even){int m;*odd=0; *even=0;for(m=0;m<n;m++)if(*(a+m)%2==0)*even+=*(a+m);else*odd+=*(a+m);}void main(){int a[N]={1,10,2,3,19,6},i,n=6,odd,even;printf("The original data is:\n");for(i=0;i<n;i++)printf("%5d",*(a+i));printf("\n\n");fun(a,n,&odd,&even);printf("The sum of odd numbers:%d\n",odd);printf("The sum of even number:%d\n",even);}『运行结果:』3.编程实现从键盘输入一个字符ch和一个字符串str,利用字符指针实现删除字符串str中和字符ch相等所有字符,然后输出字符串str。

《高级语言程序设计》实验报告

《高级语言程序设计》实验报告

合肥师范学院实验报告册2013 / 201 学年第1 学期系别计算机科学与技术系实验课程高级语言程序设计专业班级姓名学号指导教师《高级语言程序设计》实验 班级: 学号: 姓名:-1-实验一 ——VC 工作环境及顺序结构程序设计一、实验目的1. 熟悉VC++的运行环境,掌握运行一个C 程序的基本步骤,包括编辑、编译、连接和运行;2. 理解顺序结构程序方式;3. 了解常用数据类型的输入输出方法;4. 了解C 程序的基本框架,能编写简单的C 程序,了解程序调试;二、实验预习内容在认真阅读教材及实验指导书的基础上,上机前请预习以下内容,并在空白处填写相应的步骤或命令。

1. 输入并运行一个简单、正确的程序。

输入编程示例 “Hello ,World !”程序,即: # inc lude “stdio.h” int main(void) {printf("Hello ,World !\n"); return 0; }1) 参考实验指导书P223~P233,学习C 程序的编辑、编译、运行,熟悉VC++6.0的基本界面操作。

2) 修改本例,使用printf ()输出自己的个性化签名,保存到文件ex1_1.c 中。

2. 程序改错题:# include stdio.h int mian(void) {printf( Welcome to You! \n" ) return 0;1) 分析本程序段中哪些地方存在错误?请标记出来,并给出修改意见。

2) 输入上面程序(或打开error1_2.c ),学习程序调试。

3. 程序阅读题:1) 请分析下面程序(ex1_3.c )运行结果是什么? # include <stdio.h> int main(void){ char c1,c2 ; c1=97; c2=98; printf( "c1=%c,c2=%c \n", c1, c2 ); printf( "c1=%d,c2=%d \n", c1, c2 ); return 0; } 运行结果是: 2) 若将程序第4,5行改为c1=197;c2=198;运行结果又如何?并简单分析。

C语言上机实验例题

C语言上机实验例题

实验一 C语言的运行环境、运行过程和表达式的使用一、目的与要求1、了解Dos、Windows环境下C语言的运行环境,了解所用的计算机系统的基本操作方法,学会独立使用该系统。

2、了解在该系统上如何编辑、编译、连接和运行一个C程序。

3、通过运行简单的C程序,初步了解C源程序的特点。

4、掌握C语言数据类型,熟悉如何定义一个整型、字符型、实型变量,以及对它们赋值的方法,了解以上类型数据输出时所用的格式转换符。

5、学会使用C的有关算术运算符,以及包含这些运算符的表达式二、实验例题【例1】编程实现在屏幕上显示如下三行文字Hello, world !Wolcome to the C language world!Everyone has been waiting for.在Turbo C的集成环境下,键入如下源文件。

敲Alt+F组合键打开File菜单,File菜单中Write to或save as选项可将默认noname.c文件名改为任意文件名。

程序example.c如下:main(){printf("Hello,World!\n");printf("Wolcome to the C language world!\n");printf("Everyone has been waiting for.\n");}然后用Ctrl+F9执行example.c,用Alt+F5查看结果,即在屏幕上显示题目要求的三行文字。

按回车键重新返回Turbo C的编辑环境。

注意,在运行程序之前最好先存盘。

【例2】输入并运行程序,写出运行结果。

main(){int a,b,sum;a=123;b=456;sum=a+b;printf(“sum is %d\n”,sum);}运行方法同上,最后结果为:sum is 579。

【例3】输入并运行程序,写出运行结果。

main(){int a,b,c;int max(int,int);scanf(“%d,%d”,&a,&b);c=max(a,b);printf(“max=%d”,c);}int max(int x,int y){int z;if (x>y) z=x;else z=y;return(z);}这个程序的功能是对于任意输入的两个整数,输出较大的那个数。

实验六 指针与引用

实验六  指针与引用

实验六指针与引用一、目的和要求1.掌握指针、指针变量、指针常量的基本概念;2.掌握指针与数组、指针与函数的关系及应用。

3.初步掌握引用的概念及简单应用。

二、实验设备及分组1.Windows XP操作系统;2.Visual C++6.0语言环境;3.每人一台PC机。

三、内容和步骤(一)验证实验程序1.指针变量的自加、自减、加n和减n运算。

假设数组a的首地址为1000。

解:# include <iostream.h>void main( ){int a[5]={0,1,2,3,4};int *p;p=&a[0]; //p指向a[0],p=1000p++ ; //p指向下一个元素a[1],p=1004cout<< *p<<'\t'; //输出a[1]的内容1。

p=p+3; //p指向下3个元素a[4],p=1016cout<< *p<<'\t'; //输出a[4]的内容4。

p――; //p指向上一个元素a[3],p=1012cout<< *p<<'\t'; //输出a[3]的内容3。

p=p―3; //p指向上3个元素a[0],p=1000cout<< *p<<'\t'; //输出a[0]的内容0。

}运行结果:1 4 3 02.指出下列程序的错误。

#include <iostream.h>void exchange(int,int);void main(){int a,b;cin>>a>>b;cout<<"Before Exchange:a="<<a<<",b="<<b<<endl;exchange(a,b);cout<<"After Exchange:a="<<a<<",b="<<b<<endl;}void exchange(int x,int y){int t;t=x;x=y;y=t;}分析:本例的目的是在子函数中交换的两个变量的值,在主函数中使用。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验六指针
●实验目的
1、进一步掌握指针的概念,会定义和使用指针变量。

2、能正确使用数组的指针和指向数组的指针变量。

3、能正确使用字符串的指针和指向宇符串的指针变量。

4、了解指向指针的指针的概念及其使用方法。

5、通过实验进一步理解指针和函数的几种关系。

● 实验内容
1、输入两个整数,按由大到小的顺序输出。

输入以下程序并调试运行。

#include <iostream.h>
int main()
{
int a,b;
int *p=&a,*q=&b,*t;
cout<<"请输入a和b:";
cin>>a>>b;
if(a<b)
{
t=p;
p=q;
q=t;
} //交换p和q
cout<<"a="<<a<<",b="<<b<<endl;
cout<<"*p="<<*p<<",*q="<<*q<<endl;
return 0;
}
输入3组以上测试数据,分析运行结果。

2、将若干字符串按英文字典排序(由小到大)。

输入以下程序,补充完整,并调试运行。

#include <iostream.h>
#include <string.h>
int main()
{
char *p[]={"Rebacca","Heaven","Michael Chang","Linda Tsai"};
//定义字符指针数组
char *temp;
int i,j,n=4;
for(i=0;i<n-1;i++)
for(j=0;j< ;j++)
if(strcmp(p[j],p[j+1])>0)
{
temp=p[j];
p[j]=p[j+1];
p[j+1]=temp;
} //排序
for(i=0;i<n;i++)
cout<< <<endl; //输出排序后的字符串return 0;
}
3、输入三个整数,按由小到大的顺序输出,然后将程序改为:输入三个字符串,按由小到大顺序输出。

[实现要求]
先用三个字符指针ps1,ps2,ps3分别指向输入的三个字符串,要求处理完毕后按ps1,ps2,ps3输出三个字符串时,是由小到大按顺序输出的。

[实现提示]
不必进行字符串的复制,只需改变ps1,ps2,ps3的指向即可。

4、编写一个函数,用于生成一个由n个空格字符构成的空白字符串,其原型为:
char *mystrspc(int n);
其中,参数n为字符串中空格字符的个数,函数返回值为生成的字符串的首地址。

[实现要求]
设计相应的主函数调用编写的函数。

由用户输入构成空白字符串的空格字符的个数n,调用函数mystrspc后,显示其返回值所指向的字符串。

5、编写一个函数,用于去掉字符串尾部的空格符,其原型为:
char *mytrim(char *string);
其中,参数string指向存放待处理的字符串,函数返回值为去掉尾部的空格符以后字符串的首地址。

[实现要求]
主程序中设计一个循环,不断从键盘输入字符串,调用函数去掉字符串尾部的空格符,将处理后的字符串输出,当用户输入空字符串时,程序结束;
[思考问题]
修改mytrim函数,使其在去掉字符串尾部的空格符的同时,也能去掉首部出现的空格符。

6、编写程序,当输入整数1~10时,可以转换成相应的英文单词输出。

输入其他整数时结束程序。

例如,输入5,则输出“five”。

输入-1,则退出程序。

要求使用指针数组处理。

7、使用动态内存分配技术设计一个计算学生某门课程平均成绩的程序,学生个数n是任意的,n在程序运行时由用户输入。

相关文档
最新文档