C语言实验报告8《指针》
嘉应学院 计算机学院
实 验 报 告
课程名称C语言程序设计实验名称指针实验地点指导老师实验时间提交时间班 级姓 名座 号
一、实验目的和要求
(1)通过实验进一步掌握指针的概念,会定义和使用指针变量;
(2)能正确使用数组的指针和指向数组的指针变量;
(3)能正确使用字符串的指针和指向字符串的指针变量;
(4)了解指向指针的指针的概念及其使用方法。二、实验环境、内容和方法
实验内容:
编一个函数void fun(int *a,int n,int *odd,int *even),函数的功能是分别求出数组a中所有奇数之和以及所有偶数之和。形参n给了数组中数据的个数:利用指针odd返回奇数之和,利用指针even返回偶数之和。例如:数组中的值依次为:1,8,2,3,11,6;则利用指针odd返回奇数之和24;利用指针even返回偶数之和8。
要统计的数组在主函数中定义和输入,并在主函数中输出数组中的偶数之和与奇数之和。。
实验方法:
(一)综合运用课本所学的知识,用不同的算法实现在不同的程序功能。
(二)结合指导老师的指导,解决程序中的问题,正确解决实际中存在的异常情况,逐步改善功能。
(三)根据实验内容,编译程序。
实验环境:Windows xp Visual C++6.0
三、实验过程描述
#include
void fun(int *a,int n,int *odd,int *even)
{int i;
*odd=0;*even=0;
for(i=0;i
{if(a[i]%2==0)
*even+=a[i];
else *odd+=a[i];}}
int main()
{int n,*a,odd = 0,even = 0,i;
printf("请输入n的值n=\n");
scanf("%d",&n);
a = (int *)malloc(sizeof(int) * n);
printf("请输入数组的值");
for(i=0;i
scanf("%d",&a[i]);
fun(a,n,&odd,&even);
printf("奇数之和%d,偶数之和%d\n",odd,even);
}
四、结果分析
.