当前位置:首页 » 编程语言 » product函数c语言
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

product函数c语言

发布时间: 2022-05-10 17:52:40

1. 请写一个c语言函数,要有结构和函数,结构定义复数,函数加减复数,主函数调用printf

我感觉都是C++写这个。。

#include<iostream>
usingnamespacestd;
classcomplex
{
public:
complex(complex&c);//深度复制构造函数
complex(floatr,floati);//普通构造函数
voidset(floatr,floati);//变量重新赋值
complex();//无参构造函数
friendcomplexadd(complex&b,complex&c);//相加
friendcomplexsub(complex&b,complex&c);//相减
friendcomplexmul(complex&b,complex&c);//相乘
voidshow();
private:
floatreal;
floatimag;
};
complex::complex()
{
real=0;
imag=0;
}
complex::complex(floatr,floati)
{
real=r;
imag=i;
}
complex::complex(complex&c)
{
real=c.real;
imag=c.imag;
}
voidcomplex::set(floatr,floati)
{
real=r;
imag=i;
}
voidcomplex::show()
{
cout<<"resultis:"<<real<<(imag>0?"+":"-")<<abs(imag)<<"i"<<endl;//abs()取绝对值函数
}
complexadd(complex&b,complex&c)
{
floatt1,t2;
t1=b.real+c.real;
t2=b.imag+c.imag;
returncomplex(t1,t2);
}
complexsub(complex&b,complex&c)
{
floatt1,t2;
t1=b.real-c.real;
t2=b.imag-c.imag;
returncomplex(t1,t2);
}
complexmul(complex&b,complex&c)
{
floatt1,t2;
t1=b.real*c.real-b.imag*c.imag;
t2=b.real*c.imag+c.real*b.imag;
returncomplex(t1,t2);
}

intmain()
{
complexc1(3,5);
complexc2(4,8);
complexc3;
c3=add(c1,c2);//调用赋值构造函数
c3.show();
c3=sub(c1,c2);
c3.show();
c3=mul(c1,c2);
c3.show();
return0;
}

你要C的也有,还是大一无聊弄的……

#include<stdio.h>
#include<stdlib.h>


typedefstruct{
floatrmz;
floatlmz;
}complex;
//构造一个复数
complexgetAComplex(floata,floatb){
complexcomplex1;
complex1.rmz=a;
complex1.lmz=b;
returncomplex1;
}
//两个复数求和
complexaddComplex(complexcomplex1,complexcomplex2)
{complexcomplex3;
complex3.rmz=complex1.rmz+complex2.rmz;
complex3.lmz=complex1.lmz+complex2.lmz;
returncomplex3;
}
//求两个复数的差
complexsubComplex(complexcomplex1,complexcomplex2)
{
complexcomplex3;
complex3.rmz=complex1.rmz-complex2.rmz;
complex3.lmz=complex1.lmz-complex2.lmz;
returncomplex3;
}
//求两个复数的积
complexproctComplex(complexcomplex1,complexcomplex2)
{
complexcomplex3;
complex3.rmz=complex1.rmz*complex2.rmz-complex1.lmz*complex2.lmz;
complex3.lmz=complex1.lmz*complex2.rmz+complex2.lmz*complex1.rmz;
returncomplex3;
}
//分离出实部
floatgetComplexRmz(complexcomplex1)
{
returncomplex1.rmz;
}
//分离出虚部
floatgetComplexLmz(complexcomplex1)
{
returncomplex1.lmz;
}
//打印复数
voidPrintCom(complexcom1)
{
if(com1.rmz!=0&&com1.lmz!=0)
printf("%.2f+%.2fi ",com1.rmz,com1.lmz);
elseif(com1.rmz==0&&com1.lmz!=0)
printf("%.2fi ",com1.lmz);
elseif(com1.rmz!=0&&com1.lmz==0)
printf("%.2f ",com1.rmz);
elseif(com1.rmz==0&&com1.lmz==0)
printf("%.2f ",com1.rmz);
}
//主函数
voidmain()
{
floatrmz1,lmz1,rmz2,lmz2;
complexcom1,com2,com3;
intchoice;
printf("1.求两个复数的和 2.求两个复数的差 3.求两个复数的积 4.分离出实部 5.分离出虚部 6.退出 ");

printf("输入第1个复数的实部和虚部:");
scanf("%f,%f",&rmz1,&lmz1);
com1=getAComplex(rmz1,lmz1);
printf("所生成的复数1为:");
PrintCom(com1);
printf("输入第2个复数的实部和虚部:");
scanf("%f,%f",&rmz2,&lmz2);
com2=getAComplex(rmz2,lmz2);
printf("所生成的复数2为:");
PrintCom(com2);
while(1){
printf("输入你的选择:");
fflush(stdin);
scanf("%d",&choice);
switch(choice)
{
case1:
com3=addComplex(com1,com2);
printf("两个复数的和为:");
PrintCom(com3);
break;
case2:
com3=subComplex(com1,com2);
printf("两个复数的差为:");
PrintCom(com3);
break;
case3:
com3=proctComplex(com1,com2);
printf("两个复数的积为:");
PrintCom(com3);
break;
case4:
printf("复数1的实部为:%.2f ",getComplexRmz(com1));
printf("复数2的实部为:%.2f ",getComplexRmz(com2));
break;
case5:
printf("复数1的虚部为:%.2f ",getComplexLmz(com1));
printf("复数2的虚部为:%.2f ",getComplexLmz(com2));
break;
case6:
break;
default:
printf("请输入1~6的数字! ");break;
}
if(choice==6)break;
}
}

不知道有没有别的错误……

不懂再问吧

上课去了……


2013 5 27 14:14

2. c语言编写下面的函数

doubleinner_proct(doublea[],doubleb[],intn)
{
doubler=0;
inti;

for(i=0;i<n;i++)
r+=a[i]*b[i];
returnr;
}

3. 一、要求以C语言,编写几个子函数(至少4个子函数)

#include<stdio.h>
floatsum(floatx,floaty){
returnx+y;
}
floatquotient(floatx,floaty){
returnx/y;
}
floatproct(floatx,floaty){
returnx*y;
}
floatdifferrent(floatx,floaty){
returnx-y;
}
intmain(void){
floata,b;
a=12;
b=2;
printf("sumis%f ",sum(a,b));
printf("quotientis%f ",quotient(a,b));
printf("proctis%f ",proct(a,b));
printf("differrentis%f ",differrent(a,b));
}

函数的知识和函数的调用
上面的代码是函数的嵌套使用。函数作为另一个函数(printf)的参数

4. C语言中int proct (int,int)是什么意思

int proct (int,int);是函数声明。函数proct的返回类型是int,需要两个int类型的参数。

5. C语言inner_proct函数编写

#include <stdio.h>

int inner_proct(int *a,int *b,int n){
int i;
int sum;
for(i=0;i<n;i++)
{
sum+=(*(a+i))*(*(b+i));
}
printf("%d",sum);
return sum;
}

int main(){
int a[10]={1,2,3,4,5,6,7,8,9,10};
int b[10]={1,2,3,4,5,6,7,8,9,10};
inner_proct(a,b,10);
}

6. 在C语言中,乘积的函数名是什么

在C语言中,没有标准库函数计算乘积。

我们可以自定义计算乘积的函数,函数名符合标识符命名规则即可。“乘积”的英文是“proct”,常用于乘法的标识符通常使用“Multi”这个单词。

C语言标识符命名规则:

  1. 标识符由字母(A-Z,a-z)、数字(0-9)、下划线“_”组成,并且首字符不能是数字,但可以是字母或者下划线。例如,正确的标识符:abc,a1,prog_to。

  2. 不能把C语言关键字作为用户标识符,例如if ,for, while等.

  3. 标识符长度是由机器上的编译系统决定的,一般的限制为8字符(注:8字符长度限制是C89标准,C99标准已经扩充长度,其实大部分工业标准都更长)。

  4. 标识符对大小写敏感,即严格区分大小写。一般对变量名用小写,符号常量命名用大写。

  5. 标识符命名应做到“见名知意”,例如,长度(外语:length),求和、总计(外语:sum),圆周率(外语:pi)。

7. 这段c语言是什么意思

在main函数之前先声明一个自己要定义的函数名称(proct)和所带的形参类型(int x,int y),返回值类型(proct前面的int),在main之后定义函数体,即int proct(int x,int,y)
{
int z;
z=x*y;

return z;
}部分(求两数之积),在main函数中在将a,b的值传给proct函数,返回的值赋给c,然后输出c就是两数之积。其实也可以在函数声明同时就直接定义,效果也是一样的。就像这样:#include<stdio.h>
int proct(int x,int,y)
{
int z;
z=x*y;

return z;
}
void main ()
{
int a,b,c;
printf(〃输入两个整数:10 20〃);
scanf(〃%d%d〃,&a,&b);
c=proct(a,b);
printf(〃%d*%d=%d\n〃,a,b,c)
}

8. 这里的C语言函数是怎么定义的

intc_comp_proct(a1,a2,c)
structc_comp*a1,*a2,*c;
{
……
}

这是旧式(K&R C 时代,大约是上世纪八十年代)的函数定义语法,函数形参的类型不是在括号里声明,而是写在函数声明以后,函数体之前


ANSI C 之后,这种写法就废弃(obsolete)了。现代的代码不应该使用这种语法

9. C语言函数递归调用,主函数与子函数顺序

在y!=0的情况下,fun会调用自己,要等y=0后,一层层往上。就到到fun(1)的时候再会执行printf("%d",d);putchar('\n');然后会执行fun(y*2+d)后面的,printf("%d",d);putchar('\n'),然后再往上,,,直到你最初的fun(n)后面的printf("%d",d);putchar('\n')。
你可以在printf("%d",d),后面加一个printf("n
=
%d\n",
n);
可以看到如下结果
8
n
=
1
1
n
=
2
0
n
=
4
0
n
=
8
0

10. C语言中proct是什么意思

proct在C语言中不是关键字,C库中也没有这样的函数名,所以pruct有两种可能。
1是编程者自己定义的变量,2是编程者自定义的函数的名字。
这里proct是自定义函数的名字,功能就是返回a乘b的结果,实现一个乘法功能。

那为什么要用proct呢,因为当一个程序很大时,变量很多的时候,我们需要对变量或函数做标记。因为时间久了,比如说过一个月回过头来看我们自己写的程序,我们很可能就会忘记n,j,k这种没有意义的变量或者函数名字到底是什么?所以编程人员都喜欢用英文拼写来代替,即便时间久了,看到它就会知道当时这个变量/函数到底是做什么用的。