我写的一个C语言作业 欢迎各位批评。。
											编写程序读入两个复数并输出这两个复数的乘积。输入输出如下图。直接放代码啦
 程序代码:
程序代码:
#include<stdio.h>
#include<math.h>
int main(void)
{
    /*init 0.0*/
    double cpl1_real = 0.0;
    double cpl1_virtl = 0.0;
    double cpl2_real = 0.0;
    double cpl2_virtl = 0.0;
   
    double realpart = 0.0;
    double virtualpart = 0.0;
   
    char *szRPart = "\tReal part:";
    char *szVPart = "\tVirtual part:";
    char *szYouInput = "You Input:";
   
    printf("\t\t********** Complexs Product **********\n");
    printf("Please input the first complex:\n");
    printf(szRPart);
    /*must be %lf beacuse we use double*/
    scanf("%lf",&cpl1_real);
    printf(szVPart);
    scanf("%lf",&cpl1_virtl);
    printf(szYouInput);
   
    /*diff format*/
    if (fabs(cpl1_virtl - 0.0) < 0.0000001) /*compare with a small num*/
    {
        printf("%.2f%.2fi",cpl1_real,cpl1_virtl);
    }
    else
    {
        printf("%.2f+%.2fi",cpl1_real,cpl1_virtl);
    }
   
    printf("\nPlease input the second complex:\n");
    printf(szRPart);
    scanf("%lf",&cpl2_real);
    printf(szVPart);
    scanf("%lf",&cpl2_virtl);
    printf(szYouInput);
   
    if (fabs(cpl2_virtl - 0.0) < 0.0000001)
    {
        printf("%.2f%.2fi",cpl2_real,cpl2_virtl);
    }
    else
    {
        printf("%.2f+%.2fi",cpl2_real,cpl2_virtl);
    }
   
    realpart = cpl1_real*cpl2_real - cpl1_virtl*cpl2_virtl;
    virtualpart = cpl1_real*cpl2_virtl + cpl1_virtl*cpl2_real;
   
    printf("\nThe product is ");
   
    if (fabs(virtualpart - 0.0) < 0.0000001)
    {
        printf("%.3f%.3fi",realpart,virtualpart);
    }
    else
    {
        printf("%.3f+%.3fi",realpart,virtualpart);
    }
   
    return 0;
}
[ 本帖最后由 zklhp 于 2011-3-28 19:13 编辑 ]

 
											






 
	    



