int格式,指针arg(arg 3)

时间:2014-11-18 00:39:00

标签: c pointers

您好我是C语言的初学者,我遇到了一个我无法单独解决的问题,请您告诉我问题出在哪里,以及我该如何解决?

这里:

void somme(int a,int b,int x,int y) {
    int m,n;
    m=a+x ; n=b+y ;
    printf(" La somme est %d","%d ",a,"+",n,"i");    
}

在这里:

void diff(a,b,x,y) {
    int m,n;
    m=a-x ; n=b-y ;
    if((b-n)>0) {
    printf(" La difference est %d,%d ", m,"+",n,"i");
    else
    printf(" La difference est %d,%d ", m,"-",n,"i");
    }    

谢谢

3 个答案:

答案 0 :(得分:2)

在第一个功能中,我真的不知道你的目标是什么以及你想要打印什么。但是你的功能应该是这样的:

void somme(int a, int b, int x, int y) {
    int m, n;
    m = a + x;
    n = b + y;

    printf("La somme est %d + %d = %d", a, n, (a+n));    
}

第二个功能的问题相同。但这应该是这样的:

void diff(int a, int b, int x, int y) {
    int m, n;
    m = a - x;
    n = b - y;

    if((b-n) > 0)
        printf(" La difference est %d + %d = %d", m, n, (m+n));
    else
        printf(" La difference est %d - %d = %d", m, n, (m-n));

} 

答案 1 :(得分:0)

要修复的样本。

void somme(int a, int b, int x, int y) {
    int m, n;
    m=a+x ; n=b+y ;
    printf(" La somme est %d %s %d%s\n", a, "+", n, "i");
}

void diff(int a, int b, int x, int y) {
    int m, n;
    m=a-x ; n=b-y ;
    if(n < 0)
        printf(" La difference est %d %s %d%s\n", m, "-", -n, "i");
    else
        printf(" La difference est %d %s %d%s\n", m, "+", n, "i");
}

答案 2 :(得分:0)

谢谢,它有所帮助,但我之所以选择&#34; +&#34;作为char而不是函数是:

该计划的目标是两个复数的加法,减法和乘法;例如,数字1:4 + 7i和数字2:-3 +( - 4)i 再次感谢!

那就是程序

#include <stdio.h>
#include <stdlib.h>
void menu() {
printf("     ---------------------------     MENU     -------------------------- \n");
printf("\n");
printf(" 1 : Somme des deux nombre complexe \n ");
printf("2 : Difference des deux nombre complexe \n ");
printf("3 : Produit des deux nombre complexe \n ");
}
void saisie(a,b,x,y,c)
{
    printf("     ---------------------------    Saisie    --------------------------                  \n");
    printf("\n");
    printf("Donner la partie reel du premier nombre : ");
    scanf("%d",&a);
    printf("\n");
    printf("Donner la partie imaginaire du premier nombre : ");
    scanf("%d",&b);
    printf("\n");
    printf("Donner la partie reel du deuxieme nombre : ");
    scanf("%d",&x);
    printf("\n");
    printf("Donner la partie imaginaire du deuxieme nombre : ");
    scanf("%d",&y);
    printf("\n");

    menu();

    printf("\n");
    printf("Donner votre choix : ");
    scanf("%d",&c);
    printf("\n");

if(c==1)
{
    if((b+y)<0) printf("La somme est : %d %di",a+x,b+y);
   else if ((b+y)==0) printf("La somme est : %d",a+x);
   else   printf("La somme est : %d + %di",a+x,b+y);
   printf("\n");
}
else if (c==2)
{ if((b-y)<0) {
    printf("La soustraction est : %d  %di",a-x,b-y);}
  else if ((b-y)==0) printf("La soustraction est : %d",a-x);
else printf("La soustraction est : %d + %di",a-x,b-y);
printf("\n");
}

else if (c==3)
{  if((b*y)<0) {
    printf("La mulitiplication est : %d x (%d)i",a*x,b*y);}
  else if ((b*y)==0) printf("La miltiplication est : %d",a*x);
else printf("La multipliction est : %d x %di",a*x,b*y);
printf("\n");
}

else printf("Desole , hors de choix .");
}
int main()
{
int a,b,x,y,c;
saisie(a,b,x,y,c);
printf("\n");
system("pause");
}