注:本文所有程序均为笔者自己编写,仅供交流学习使用,欢迎一切纠错与指正。
目录
一、使用指向变量的指针变量做函数参数,编写函数求两个数的大于、小于、等于关系。
二、使用指向变量的指针变量做函数参数,编写函数求两个数的平方、立方和以及平方、立方差。
三、使用指针完成选择结构程序设计、循环结构程序设计、函数3章的习题中任意3道编程题。
一、使用指向变量的指针变量做函数参数,编写函数求两个数的大于、小于、等于关系。
#include <stdio.h>
void compare(float *p,float *q)
{
if(*p>*q)
{
printf(">\n");
}
else if(*p<*q)
{
printf("<\n");
}
else
{
printf("=\n");
}
}
int main()
{
float a,b;
scanf("%f%f",&a,&b);
compare(&a,&b);
return 0;
}
二、使用指向变量的指针变量做函数参数,编写函数求两个数的平方、立方和以及平方、立方差。
#include <stdio.h>
#include <math.h>
float quadratic_sum(float *p,float *q)
{
float quadratic_sum;
quadratic_sum = pow(*p,2)+pow(*q,2);
return quadratic_sum;
}
float quadratic_sub(float *p,float *q)
{
float quadratic_sub;
quadratic_sub = pow(*p,2)-pow(*q,2);
return quadratic_sub;
}
float cubic_sum(float *p,float *q)
{
float cubic_sum;
cubic_sum = pow(*p,3)+pow(*q,3);
return cubic_sum;
}
float cubic_sub(float *p,float *q)
{
float cubic_sub;
cubic_sub = pow(*p,3)-pow(*q,3);
return cubic_sub;
}
int main()
{
float a,b;
scanf("%f%f",&a,&b);
printf("平方和%f\n",quadratic_sum(&a,&b));
printf("平方差%f\n",quadratic_sub(&a,&b));
printf("立方和%f\n",cubic_sum(&a,&b));
printf("立方差%f\n",cubic_sub(&a,&b));
return 0;
}
三、使用指针完成选择结构程序设计、循环结构程序设计、函数3章的习题中任意3道编程题。
#include <stdio.h>
#include <math.h>
#define PI 3.14
//第四章第一题
float func(float *p)
{
float y;
if (*p<-PI/2)
{
y = 2*pow(*p,3)+3*cos(*p)+5;
}
else if (*p>=-PI/2 && *p<PI/2)
{
y = pow((*p-1)/(*p+2),3)+5**p;
}
else if (*p>=PI/2)
{
y = sqrt(*p+sin(3**p));
}
return y;
}
int main()
{
float x;
printf("请输入x的值");
scanf("%f",&x);
printf("%f",func(&x));
return 0;
}
#include <stdio.h>
//第五章第一题
void func(float *p,float *q)
{
int i;
for (i = 9;i;i--)
{
*q /= 2;
*p += *q*2;
}
}
int main()
{
float s = 100.0,h = 100.0;
func(&s,&h);
printf("%f",s);
return 0;
}
#include <stdio.h>
//第六章第一题
void func(float *x,float *y)
{
if(*x<2)
{
*y = 2.5 - *x;
}
else if(*x<4)
{
*y = 2 - 1.5*(*x-3)*(*x-3);
}
else if(*x>=4)
{
*y = *x*0.5-1.5;
}
}
int main()
{
float a,b;
scanf("%f",&a);
func(&a,&b);
printf("%f",b);
return 0;
}