我是編程的初學者。 我在C#中做了一個簡單的程序,但它不能正常工作。 當我鍵入「rezistenta」它應該運行的條件 if (valoare=="rezistenta")
當我鍵入「與能力」它應該運行第二個如果: if(valoare=="capacitate")
在這兩種情況下,程序運行的最後一樣,它跳過第一2,如果條件。如果在Visual Studio 2015中的else語句麻煩
程序:
#define _CRT_SECURE_NO_WARNINGS //directive preprocesor
#include<stdio.h>
#include<conio.h>
void main(void)
{
char valoare[100];
float C1, C2, CS, CP;
float R1, R2, Rs, Rp;
printf("\nCapacitate sau Rezistenta? ");
scanf("%s", &valoare);
printf("\nAti introdus= %s", valoare);
if (valoare == "rezistenta")
{
printf("\nIntroduceti valorile rezistentelor: ");
scanf("%f%f", &R1, &R2);
Rs = R1 + R2;
printf("\nRezistenta echivalenta serie este: *%6.3f*", Rs);
Rp = (R1*R2)/(R1 + R2);
printf("\nRezistenta echivalenta paralel: *%6.3f*", Rp);
}
else if (valoare == "capacitate")
{
printf("\nIntroduceti valorile capacitatilor: ");
scanf("%f%f", &C1, &C2);
CS = (C1*C2)/(C1 + C2);
printf("\nValoarea capacitatilor serie este = *%-6.4f*", CS);
CP = C1 + C2;
printf("\nValoarea capacitatilor in paralel este= *%-6.4f*", CP);
}
else
printf("\nSunteti nehotarat vi le dau pe amandoua");
printf("\nIntroduceti valorile rezistentelor: ");
scanf("%f%f", &R1, &R2);
Rs = R1 + R2;
printf("\nRezistenta echivalenta serie este: *%6.3f*", Rs);
Rp = (R1*R2)/(R1 + R2);
printf("\nRezistenta echivalenta paralel: *%6.3f*", Rp);
printf("\nIntroduceti valorile capacitatilor: ");
scanf("%f%f", &C1, &C2);
CS = (C1*C2)/(C1 + C2);
printf("\nValoarea capacitatilor serie este = *%-6.4f*", CS);
CP = C1 + C2;
printf("\nValoarea capacitatilor in paralel este= *%-6.4f*", CP);
_getch();
}//end main
你確定它的C#?不是C++? – vahnevileyes
它看起來不像'C#'檢查這個問題比較字符串在C:http://stackoverflow.com/questions/8004237/how-do-i-properly-compare-strings-in-c –
看起來像C編程給我。 – TejSoft