Čau kluci, už několik hodin se tu snažím dojít na to, proč mi neustále konečné scanf háže chybu a nikdy neukončí program. Háže to plno chyb, teď momentálně "Unhandled exception at 0x0fa814cf (msvcr100d.dll) in cpp_6.exe: 0xC0000005: Access violation reading location 0x0000006e." Zkoušel jsem různě měnit %s za %c a akorát to háže jinou chybu.. Fakt už si nevím rady
Kód zde
#include "stdafx.h"
#include "Debug\complexmath.h"
#include <math.h>
#include <stdio.h>
#include <stdlib.h>
int _tmain(int argc, _TCHAR* argv[])
{
char start= '\0';
do
{
double x_re, x_im, y_re, y_im, r_re=0,r_im=0;
char oper='\0',znam='+',znamm='+',znammm='+';
int i;
printf("\n1st operand\nInsert real part: ");
scanf("%Lf", &x_re);
printf("Insert imag. part: ");
scanf("%Lf", &x_im);
printf("\n2st operand\nInsert real part: ");
scanf("%Lf", &y_re);
printf("Insert imag. part: ");
scanf("%Lf", &y_im);
printf("\nInsert operator: ");
scanf("%s", &oper);
switch (oper)
{
case '+':
kmplx_secteni(&r_re, &r_im, x_re, x_im, y_re, y_im);
break;
case '-':
kmplx_odecteni(&r_re, &r_im, x_re, x_im, y_re, y_im);
break;
case '/':
kmplx_deleni(&r_re, &r_im, x_re, x_im, y_re, y_im);
break;
case '*':
kmplx_nasobeni(&r_re, &r_im, x_re, x_im, y_re, y_im);
break;
}
if (x_im>0)
znam='-';
if (y_im>0)
znam='-';
if (r_im>0)
znam='-';
printf("\n(%f %c j%f) %c (%f %c j%f) = %f %c j%f", x_re, znam, fabs(x_im), oper, y_re, znamm, fabs(y_im),r_re,znammm, fabs(r_im));
printf("\nIf you want to close program, insert y, if no, insert other character: ");
scanf("%s", &start);
printf("%s", start);
} while(start !='n');
}