实验2013710
函数
excel方差函数excelsd函数已知函数 2 f x m x mx m 2 1 4 2拉格朗日函数pdf函数公式下载
指针结构体
实验7 函数的定义与调用
一、实验目的
1、能根据问题正确确定函数的类型
2、掌握求值类函数的编写与调用
3、掌握判断类函数的编写与调用
4、掌握操作类函数的编写与调用
二、知识要点
1、函数的概念、使用目的以及实现
方法
快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载
2、求值类函数的特点:主调函数提供实参值,被调函数计算函数值,通过
return语句返回函数值。
3、判断类函数的特点:求值型的一种特例,函数返回值只有两种状态。
4、操作类函数的特点:完成指定操作,函数类型为void。
三、实验预习 (要求做实验前完成)
1、根据以下函数调用判断函数是求值类、判断类还是操作类:
if(x>0) fnu1(x); a=fun2(x,6)-1; if(fun3(b)==1) t++;
fun1是:操作类 fun2是: 求值类 fun3是:判断类
2、如果函数首部以void开头,则该函数属于:空类型 类;
如果函数首部以int开头,则该函数属于:整型 类;
如果函数首部以float开头,则该函数属于:实型 类;
3、写出满足如下要求函数的函数首部:
? 函数名为hypo,为了求一个字符,需要两个参数,分别是整型和字符
型:
char hypo(int x, hypo y);
? 函数名为fun2,操作类函数,需要两个整型参数:
void fun2(int x,int y);
? 函数名为baoy,判断类函数,需要一个字符型参数和两个整型参数:
int baoy(char x , int y , int z); 一、实验内容
2x,5x,41、编写一个函数求的值,x作为形参,用主函数调用此函数求:
222 y1,a,5a,4; y2,(a,15),5(a,15),4; y3,(sina),5sina,4;#include"stdio.h"
#include"math.h"
float fun(float x)
{
float y;
y=x*x-5*x+4;
return(y);
}
void main()
{
float a,y1,y2,y3;
printf("输入a的值:");
scanf("%f",&a);
y1=fun(a);
y2=fun(a+15);
y3=fun(sin(a));
printf("y1=%f\n",y1);
printf("y2=%f\n",y2);
printf("y3=%f\n",y3); }
2、编写函数,给定一个字符和一个整数,将该字符输出整数次。
#include"stdio.h"
void output(char a,int x) {
int i;
for(i=1;i<=x;i++)
putchar(a);
}
main()
{
char b;
int y;
printf("请输入一个字符: \n");
scanf("%c",&b);
printf("请输入次数: \n");
scanf("%d",&y);
output(b,y);
printf("\n");
}
3、编写函数,输出所有的“水仙花”数。
#include"stdio.h"
int sx(int x)
{
int a,b,c;
a=x%10;b=x/100;c=(x-b*100)/10;
if(a*a*a+b*b*b+c*c*c==x)
return 1;
else return 0;
}
main()
{
int i;
for(i=100;i<1000;i++)
if(sx(i))
printf(" %d",i);
printf("\n");
}
五、实验结果
要求写出运行界面并输出运行结果
(1)
(2)
(3)
实验8 函数与数组
一、实验目的
1、掌握数组作为参数的函数编写与调用方法
2、掌握数组作为参数的特殊性
3、掌握字符串作为参数的函数编写与调用方法 二、知识要点
1、地址传递的概念及使用
2、数组元素和数组名作为函数参数的特点与区别
3、字符串作为参数的特点:‘\0’字符的使用
三、实验预习 (要求做实验前完成)
1、数组作为函数参数时,其特殊性是 参数之间的数据传递方式不是值传
递,而是地址传递 2、定义 字符数组 作为参数的函数时,通常需要提供长度作为参数;
而定义
整形或实形数组 作为参数的函数时,通常不需要提供长度参数
3、写出满足如下要求函数的函数首部:
? 函数名为fmax,求一个实型数组的最大元素值:
fmax(float a[10],float max)
? 函数名为scount,求一个字符串中大写字母的个数:
scount(char a[10],int n)
? 函数名为delf,删除一个字符串的第一个字符:
delf(char a[10],char b[10]) 四、实验内容
1、编写一个函数,其功能是将字符串中的大写字母改为小写字母,其它
字符不变。
#include"stdio.h"
#include"string.h"
void exchange(char a[])
{
int i;
for(i=0;i
='A'&&a[i]<='Z')
a[i]+=32;
}
void main()
{
char b[20],k;
printf("请输入一个字符串:\n");
gets(b);
exchange(b);
puts(b);
}
2、编写一个函数,求出给定的二维数组中每一行最大的元素,并显示出
来。
#include"stdio.h"
void max(int a[3][3]) {
int i,j,max[3];
for(i=0;i<3;i++)
max[i]=a[i][0];
for(j=0;j<3;j++)
if(a[i][j]>max[i])
max[i]=a[i][j];
for(i=0;i<3;i++)
printf("第%d行最大值:%d\n",i+1,max[i]);
printf("\n");
}
void main()
{
int i,j,b[3][3];
printf("输入一个3行3列的数组:");
for(i=0;i<3;i++)
for(j=0;j<3;j++)
scanf("%d",&b[i][j]);
printf("数组元素为:\n");
for(i=;i<3;i++)
{
for(j=0;j<3;j++)
printf("%d ",b[i][j]);
printf("\n");
}
max(b);
}
3、在主函数中输入N个人的某门课程的成绩,分别用函数求:(1)平均分、最高分和最低分;(2)分别统计90-100分的人数、80-89分的人数、70-79分的人数、60-69分的人数及59分以下的人数。结果在主函数中输出。 #include"stdio.h"
double ave(int x[15],float aveg,int max,int min); double grade(int x[15],int a,int b,int c,int d,int e);
void main()
{
int x[15],n,min,max,a,b,c,d,e;
float aveg;
aveg=0;
for(n=0;n<15;n++)
scanf("%d",&x[n]);
ave(x,aveg,max,min);
grade(x,a,b,c,d,e);
printf("平均成绩:%f\n 最高分:%f\n 最低分:%f\n",aveg,max,min);
printf("小于60:%d\n 60~70: %d\n 70~80: %d\n 80~90: %d\n 90~100: %d\n",a,b,c,d,e);
}
double ave(int x[15],float aveg,int max,int min)
{
int i:
max=x[0];
min=x[0];
for(i=0;i<15;i++)
{aveg=aveg+x[i];
if(maxx[i]);min=x[i];
}
aveg=aveg/40
return(aveg,min,max); }
double grade(int x[15],int a,int b,int c,int d,int e)
{
int j;
a=0;b=0;c=0;d=0;e=0;
for(j=0;j<15;j++)
{if(x[j]<60) e=e+1;
else if(x[j]<70) d=d+1;
else if(x[j]<80) c=c+1;
else if(x[j]<90) d=d+1;
else if(x[j]<100) e=e+1;
}
return(a,b,c,d,e);
}
五、实验结果
要求写出运行界面并输出运行结果 (1)
(2)
(3)
实验9 指针及其应用
一、实验目的
1、掌握指针的概念
2、掌握指针变量的定义和基本使用方法
3、掌握使用指针操作数组元素的方法
4、掌握使用指针操作字符串的方法
二、知识要点
1、变量的直接访问和间接访问的概念
2、指针和指针变量的概念
3、简单变量的指针及指向简单变量的指针变量的定义、赋值及使用
4、数组的指针及指向数组的指针变量的定义、赋值及使用
5、字符串的指针及指向字符串的指针变量的定义、赋值及使用
三、实验预习 (要求做实验前完成)
1、写出一个C语句,使得指针变量u指向变量x:*p=&x;
2、写出一个C语句,输出“指针变量p指向的整型变量”的值:int *p;
3、把“指针变量u所指向的变量”的值变为40,其语句是:*u=40;
4、定义三个变量,其中x1是整型变量;y1、y2是指向整数的指针变量:int x1,*y1,*y2
、若有语句:char t[20]= “abcdefgh”,*p;则使p指向字符串的第一个 5
字符的语句是:p=t;
四、实验内容 (以下题目要求使用指针方法完成)
1、已知一个整型数组x[4],它的各元素值分别为3、11、8和22.使用指针表
示法编程序,求该数组各元素之积。
#include "stdio.h"
#include "string.h"
void main()
{
char str1[30],str2[20],str3[50],*p,*q,*s;
int n,i;
printf("请插入原始字符串:\n");
gets (str1);
printf("请输入需要插入的字符串:\n");
gets (str2);
printf("请输入需要插入的位置:\n");
scanf("%d",&n);
p=str1;
q=str2;
s=str3;
for (i=0;i='0'&&*(p+i)<='9'))
x[j++]=*(p+i);
x[j++]='\0';
puts(x);
}
4、利用动态内存分配的方法,输入一个班的学生某门功课的成绩,人数由
用户指定,输出全班平均分以及最高分和最低分。
#include "stdio.h"
#include "stdlib.h"
void main()
{
int *p,max,min,i,n;
float ave,sum=0;
printf("请输入人数n:");
scanf("%d",&n);
printf("请输入每个人的成绩:\n");
p=(int*)malloc(n*sizeof(int))
for(i=0;imax)
max=*(p+i);
}
ave=sum/n;
printf("\n最高分为:%d,最低分为:%d,平均分为:%f\n",max,min,ave);
}
五、实验结果
要求写出运行界面并输出运行结果 (1)
(2)
(3)
(4)
实验10 结构体 一、实验目的
1、掌握结构体类型的定义方法
2、掌握定义和使用结构体变量、数组的方法
3、掌握访问结构体成员的方法
4、掌握结构体指针的定义与引用 二、知识要点
1、结构体类型与结构体变量的概念
2、结构体变量的定义、存储、引用方法
3、结构体数组的概念及使用
4、结构体指针的概念与使用
三、实验预习 (要求做实验前完成)
1、使用结构体类型数据的目的是什么, 答:为了表示一些相关的简单数据类型,定义数据库中表的结构,根据数据库
中表的结构建立若干个“记录”,形成数据库中的表文件,其中每个记录是由
多项数据构成的一个集合
2、结构体类型和结构体变量的区别为何,
答:结构体类型:只声明结构体的组织形式,本身不占存储空间
结构体变量:某种结构体类型的具体实例,编译系统只有定义了结构体变量后才为其分配内存空间
3、结构体变量与简单变量的区别为何,
答:结构体变量:某种结构体类型的具体实例
简单变量:结构体变量中的成员
4、结构体数组与结构体变量有何关系,
答:一个结构体变量只能存放一个数据,存放若干数据则称为结构体数组 四、实验内容
1、有N个学生(N值自定),每个学生的数据包括学号,姓名,三门课的成
绩,编程从键盘输入N个学生数据,要求打印出三门课每一门课的成
绩,并输出三门课总分最高的学生的每一门课的成绩,以及他的学号姓
名。
#include
#include
typedef struct
{
char num[10];
char name[10];
float score[3];
float avg;
} stu;
void input(int n,stu *s)
{
for(int i=0;i
#include
using namespace std;
struct Year
{
int month;
string en_month;
int days;
};
void main()
{
int i,j;
Year year[12];
for(i = 0;i<12;i++)
{
year[i].month = i+1;
if(i+1==1||i+1==3||i+1==5||i+1==7||i+1==8||i+1==10||i+1==12)
year[i].days = 31;
if(i+1==4||i+1==6||i+1==9||i+1==11)
year[i].days = 30;
if(i+1==2)
year[i].days = 28;
}
year[0].en_month = "January";
year[1].en_month = "February";
year[2].en_month = "March";
year[3].en_month = "April";
year[4].en_month = "May";
year[5].en_month = "June";
year[6].en_month = "July";
year[7].en_month = "August";
year[8].en_month = "September";
year[9].en_month = "October";
year[10].en_month = "November";
year[11].en_month = "December";
for(j = 0;j<12;j++)
{
cout<
本文档为【实验2013710函数指针结构体】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。