私は自分のコードを実行しようとしているが、いつも私がコメントアウトした場合「のprintf(」%sの抵抗率は%fがあることを私が見つけたエラーコード0xc0000005でプログラムは、0xc0000005で
#include <stdio.h>
#include <math.h>
void calculate_resistance(char metal, int length, int diameter, float resistivity);
int main()
{
int length, diameter;
float resistivity;
char metal;
printf("Enter the name of the metal: ");
scanf("%s", &metal);
printf("Enter the resistivity: ");
scanf("%f", &resistivity);
printf("Enter the length: ");
scanf("%d", &length);
printf("Enter the diameter: ");
scanf("%d", &diameter);
calculate_resistance(metal, length, diameter, resistivity);
return 0;
}
void calculate_resistance(char metal, int length, int diameter, float resistivity)
{
float radius = diameter/2;
float area_of_wire = (M_PI) * pow(radius,2) * length;
float resistance = resistivity * length/area_of_wire;
printf("Resistivity of %s is %f", metal, resistance);
}
で終わるされて」、金属でクラッシュ、抵抗); "または最後のscanfの後に任意のprintf関数は、エラーコード0xc0000005で
'char metal;' 'char metal [96];'(適切なサイズ)、 'void metal_address(char metal、' - > void calculate_resistance(char metal []、 ' – BLUEPIXY