Heim > häufiges Problem > Was ist der Root-Operator in der C-Sprache?

Was ist der Root-Operator in der C-Sprache?

青灯夜游
Freigeben: 2023-03-06 14:39:26
Original
40390 Leute haben es durchsucht

In der C-Sprache gibt es keinen Operator zum Öffnen des Stammverzeichnisses. Zum Öffnen des Stammverzeichnisses wird die Syntax „sqrt(Wert x)“ verwendet. sqrt(4)“ dient der Durchführung einer 4-Quadratwurzel-Operation, das Ergebnis ist 2. sqrt() ist eine integrierte Root-Operationsfunktion in der C-Sprache. Ihr Operationsergebnis ist die arithmetische Quadratwurzel der Funktionsvariablen. Diese Funktion kann weder negative Werte verarbeiten noch imaginäre Ergebnisse ausgeben.

Was ist der Root-Operator in der C-Sprache?

Die Betriebsumgebung dieses Tutorials: Windows 7-System, c99-Version, Dell G3-Computer.

In der C-Sprache gibt es keinen Root-Operator. Die integrierte Funktion „sqrt()“ wird zum Öffnen des Roots verwendet.

c-Sprache sqrt()-Funktion

In der C-Sprache bedeutet sqrt die Quadratwurzelfunktion, die die Quadratwurzel einer nicht negativen reellen Zahl berechnet.

sqrt() ist die integrierte Root-Operationsfunktion in der C-Sprache und ihr Operationsergebnis ist die arithmetische Quadratwurzel der Funktionsvariablen. Die Funktion

sqrt() kann weder mit negativen Werten operieren noch imaginäre Ergebnisse ausgeben.

Syntax:

double sqrt(double x)
Nach dem Login kopieren

Rückgabewert:

  • Diese Funktion gibt die Quadratwurzel von x zurück.

sqrt()-Funktion

Fügen Sie #include hinzu und verwenden Sie dann sqrt, um

#include<math.h>
#include<stdio.h>
 
int main(void)
{
    printf("%lf",sqrt(4));
 
    return 0;
}
Nach dem Login kopieren

zu definieren. Ausgabe Das Ergebnis sollte ebenfalls 2 sein. Sehen wir uns an, ob das tatsächliche Ausgabeergebnis mit unserem idealen Ausgabeergebnis übereinstimmt.

Ausgabeergebnis:

2.000000
Nach dem Login kopieren

Frage:

F1: „Ist der Typ des sqrt-Funktionsparameters kein Gleitkommatyp mit doppelter Genauigkeit? Warum ist der Parameter der sqrt-Funktion im obigen Beispiel eine Ganzzahl, isn.“ Ist es nicht eine Gleitkommazahl?“ Wird es bei der Übergabe solcher Parameter Probleme geben? Es ist nichts Falsches daran, es an die Funktion sqrt zu übergeben. Es gibt kein Problem mit einer Ganzzahl, da die Übergabe einer Ganzzahlvariablen in der Funktion sqrt automatisch in einen Gleitkommatyp mit doppelter Genauigkeit konvertiert wird Parameter von einem Ganzzahltyp in einen Gleitkommatyp mit doppelter Genauigkeit konvertieren? Natürlich müssen wir eine kleine Änderung am obigen Code vornehmen:

#include<math.h>
#include<stdio.h>
 
int main(void)
{
    printf("%lf",sqrt(4.0));
 
    return 0;
}
Nach dem Login kopieren
Nach dem Login kopieren

Diese Änderung kann den Prozess der Konvertierung des Parameters von einer Ganzzahl in einen Gleitkommatyp vermeiden. und der Code wird genauer

F2: „Innerhalb der printf-Funktion. Der erste Parameter ist die seltsame Zeichenfolge („%lf“). Warum wird die seltsame Zeichenfolge nicht ausgegeben? Es wird durch eine Zahl ersetzt.“

R2: Das ist eine sehr gute Frage! Wenn Sie einfach denken, dass dies nur eine seltsame Zeichenfolge ist, scheint das richtig zu sein, denn wenn Sie zum ersten Mal damit in Kontakt kommen, werden Sie es unweigerlich tun Fühlt sich seltsam an. Aber „%lf“ ist kein seltsamer String, sondern ein Platzhalter, auf den wir beim Schreiben von C-Programmen fast nicht verzichten können: „printf“ bedeutet „formatierte Ausgabe“. kann diesen Platzhalter als „formatierte Ausgabe“ verstehen. Er kann nachfolgende Parameter entsprechend dem Inhalt des Platzhalters ausgeben. Beispielsweise gibt der erste Platzhalter unter derselben printf-Funktion Folgendes aus: Der Inhalt des zweiten Parameters. Der zweite Platzhalter gibt den Inhalt des dritten Parameters aus, und so weiter. Die Möglichkeit, zu unterscheiden, ob es sich um einen Platzhalter handelt, ist ebenfalls sehr einfach, indem man prüft, ob „%“ vor einer Segmentzeichenfolge steht Dies bedeutet, dass es sich um einen Platzhalter handelt. Wenn nicht, bedeutet dies, dass es sich nicht um einen Platzhalter handelt. In der C-Sprache gibt es nicht nur „%lf“-Platzhalter, sondern auch viele Platzhalter. Die folgende Tabelle enthält die häufig verwendeten Platzhalter C-Sprache. Die Eingabe- und Ausgabeformate für jeden Platzhalter sind unterschiedlich. Präzisions-Gleitkomma

%lfEingabe und Ausgabe in Form von Gleitkomma mit doppelter Genauigkeit %s

讨论:

为了使读者更好地理解,我们可以对上例的代码进行一个粗略的翻译(这里作者将上例的代码“搬运”到了下面当中,这样做的原因是为了避免读者回看上文)。

#include<math.h>
#include<stdio.h>
 
int main(void)
{
    printf("%lf",sqrt(4.0));
 
    return 0;
}
Nach dem Login kopieren
Nach dem Login kopieren

翻译:在程序中先包含两个头文件,它们分别是:math.h(数学头文件)与stdio.h(标准输入输出头文件)。随后我们需要编写main函数,”main“函数的数据类型是int,参数的数据类型是“void”。为什么要编写“main”这个函数呢?因为它是整个C程序的入口,在main函数的函数体内有两条语句,第一条是“printf("%lf",sqrt(4.0));”,它翻译过来的意思是:“以双精度浮点型的形式对sqrt函数的返回值进行输出(注意:当一个函数作为另一个函数的参数时,程序会先将一个函数的返回值计算出来随后再传递给另一个函数的参数)。”最后一条语句是“return 0;”,函数是必须需要一个返回值的,但void类型除外,我们的这个main函数的数据类型是int,并不是void,所以main函数需要一个返回值,虽然在多数编译器是省略main函数的返回值的,但即便如此,最好将返回值加上,这是个良好的习惯!。

(注意:不要将main函数的参数列表中的void看成是main函数的数据类型)

【相关推荐:C语言视频教程编程教学

Das obige ist der detaillierte Inhalt vonWas ist der Root-Operator in der C-Sprache?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Eingabe und Ausgabe in Form einer Zeichenfolge