problems with the multi condition in C -
+
, -
,
कोड> * , /
, तथ्यात्मक और अन्य। समस्या यह है कि मेरा कोड एक समय के लिए अच्छा काम करता है यह प्रदर्शित करता है:
ज़ेडजेट ओपेरासीयू
इसका अर्थ है "लिखना जो आप करना चाहते हैं" लेकिन पहली बार जब चक्र खत्म हो जाता है यह प्रदर्शित करता है:
जेडजेट ओपेरेसीः: जेडजेट ओपेरासीयू:
दो बार और मुझे पता नहीं क्यों
यहां मेरा कोड है:
#include & lt; stdio.h & gt; # शामिल करें & lt; stdlib.h & gt; # शामिल करें & lt; math.h & gt; Int main () {int a, b, vysledok; चार एस; करना {printf ("जेडजेट ऑपेरेसीयू:"); एस = getchar (); यदि (एस == '+' || एस == '-' || एस == '*' || एस == '/' || एस == '^') {डालता है ("ओपेरािया जे बिनना। NZadaj प्राइवी ऑपरेंड: "); scanf ( "% d", & amp; एक); डालता है ("ज़ादज साहू ऑपरेंड:"); scanf ( "% d", एंड बी); स्विच (एस) {case '+': printf ("Vysledok je% d। \ N", a + b); टूटना; मामले '-': printf ("विस्डोक जे% डी। \ N", ए-बी); टूटना; मामले '/': यदि (बी == 0) डालता है ("CHYBA: नूलू सा डेलीट नाडे। \ N"); अन्य प्रिंटफ़ ("विस्डॉक जे% डी। \ N", ए / बी); टूटना; मामले '*': printf ("विस्डोक जे% डी। \ N", ए * बी); टूटना; मामले '^': for (a; a & gt; 0; a--) b = b * b; Printf ("विस्डॉक जे% डी। \ N", बी); टूटना; }} और अगर (एस == '!' || == 'एस') {डालता है ("ओपियाज़िया जे अनारना। \ NZadaj prvy तर्क:"); scanf ( "% d", & amp; एक); स्विच (एस) {मामला '!': Vysledok = a; के लिए (ए; ए & gt; 0; ए--) vysledok = vysledok * a; Printf ("विस्डोक जे% डी। \ N", vysledok); टूटना; मामला है: vysledok = sqrt (ए); Printf ("विस्डॉक जे% एफ। \ N", (फ्लोट) vysledok); टूटना; }} और यदि (एस == 'q') डालता है ("ज़ेडनी प्रॉकाज़ छोड़ दिया। Ukoncujem।"); } जबकि (s! = 'Q'); वापसी 0;
}
मान दर्ज करने के बाद, आप एंटर कुंजी दबाएं (<कोड> \ n )। यह वर्ण stdin
में रहता है। दूसरे पुनरावृत्ति में, getchar
को \ n
वर्ण मिलता है और जैसा कि यह यदि
में उसके बाद की स्थिति को पूरा नहीं करता है, तो उसका शरीर अगर
को निष्पादित नहीं किया जाता है और अगले कोड को जबकि
में स्थित है, तो इस प्रकार दो बार छापना शुरू होता है।
चरित्र को हटाने के लिए, आपको
Comments
Post a Comment