私は最近 Javascript 言語を学んでいます。インターネット上で Javascript が Web ページの問題を解決する方法を紹介するコードをたくさん見ました。そのため、JavaScript コードを使用して古典的なプログラミングを実装する新しい方法を見つけたいと思っています。 C言語の問題。もちろん、これらの C 言語プログラミングの質問も、主に Javascript 言語を使用して実装されており、文法の練習として役立ちます。また、記憶を定着させ、強化するために、C 言語と Javascript 言語の実装の類似点と相違点を比較したいと考えています。学習効果も! ! !
1. C 言語の古典的なプログラミングの質問 1
1. 質問の説明:
マルクスの原稿には非常に興味深い数学的問題があります。男性、女性、子供を含む 30 人の人々がいます。彼らはレストランで食事をし、合計50シリングを費やしました。 食事に男性一人当たり 3 シリング、女性一人当たり 2 シリング、子供一人当たり 1 シリングかかる場合、男性、女性、子供は何人いますか?
2. Javascript コード:
var man, woman, child; for (man = 0; man < 17; man ++) { for (woman = 0; woman <= 25; woman ++) { child = 30 - man - woman; if ( (man + woman + child == 30) && (man * 3 + woman * 2 + child == 50) ) { document.write("男人:"+man+","+"女人:"+woman+","+"小孩:"+child +"</br>"); } } }
3. 問題解決の手順:
この質問は、「Change Change」と同じタイプの質問で、複数のループと 1 つの判断だけで各結果をリストします。この質問から、for 文と if 文、JavaScript 言語と C 言語は同じであるため、JavaScript コードと C 言語コードには基本的に違いはありません。主な違いは変数と出力ステートメントの定義に反映されており、Javascript 言語の方が実装しやすいと思われます。その主な理由は、JavaScript が弱い型付けの言語であるのに対し、C 言語は強い型付けの言語であるためです。
2. C 言語の古典的なプログラミングの質問 2
1. 質問の説明:
e=1 1/1 を計算してください! 1/2! 1/3! ...1/n!上位 50 アイテム
2. Javascript コード:
var n; var s = 1; var e = 1; for (n = 1; n <= 50; n ++) { s = s * n; e = e + (1 / s); } document.write(e);
3. 問題解決の手順:
この質問は比較的単純な質問であり、実装では for ループのみを使用しています。C 言語のコードと比較すると、変数の定義と出力が異なります。
3. C 言語の古典的なプログラミングの質問 3
1. 質問の説明:
数値(桁数制限なし)を入力し、数値の桁数を出力します。
2. Javascript コード:
<html> <head lang="en"> <meta charset="UTF-8"> <title>C语言经典题目3</title> <script> function demo() { var n = document.getElementById("number").value; if (!isNaN(n)) {var len = n.length; } else{ alert("请输入数字!"); return; } document.getElementById("number").value = len; } </script> </head> <body> <input type="text" id="number" width="100" height="50"> <button onclick="demo()">点我啊</button> </body> </html>
3. 問題解決の手順:
この質問は非常に興味深いもので、C 言語で実装する場合、数値の長さを取得するという目的を達成するには、この数値を連続的に 10 で割る必要があります。ただし、JavaScript 言語の型指定が弱いという性質により、JavaScript を使用するとこの問題を非常に簡単に解決できます。デフォルトの数値は文字列型であり、文字列の長さを決定するだけで済みます。少々手抜きではありますが、機能も果たしています。また、この質問の実装では、入力の問題を解決するという C 言語とは異なる点もあります。C 言語では、scanf を使用しますが、JavaScript にはそのような機能がないため、数値の入力は でしか実現できません。 Web ページのヘルプ。
4. C言語の古典的なプログラミングの質問4
1. 質問の説明:
九九を印刷します
2. Javascript コード:
function demo() { var i, j, s; for(i = 1; i < 10; i ++) { for(j = 1; j <= i; j ++) { s = i * j; document.write(j+"*"+i+"="+s+" "); } document.write("<br/>"); } }
3. 問題解決の手順:
この質問も非常に古典的な質問ですが、実装するのに必要なのは 2 つのループをネストするだけです。 C言語との違いは変数の定義と出力以外に改行です。 C 言語での改行には、次を使用します。
動作しますが、Web ページが認識しません
したがって、改行を実現するには HTML の
のみを使用できます。
5. C言語の古典的なプログラミングの質問5
1. 質問の説明:
ソンググランプリには 10 名の審査員が参加し、出場者の平均点を求めるプログラムを作成してみます (最高点と最低点を除きます)
2. Javascript コード:
<body> <input id="getScore" type="text"> <button onclick="demo()">平均分</button> <p id="txt"></p> <script> function demo() { var str = document.getElementById("getScore").value; var score = new Array(); score= str.split(","); var max = 0; var min = 10000; var sum = 0; var ave = 0; for(i=0;i<score.length;i++){ if(score[i]>max) { max = score[i]; } if(score[i]<min) { min = score[i]; } sum = sum+score[i]; } ave = (sum-max-min)/8; document.getElementById("txt").innerHTML = ave; } </script> </body>
3. 問題解決の手順
この問題は非常に単純な問題ですが、C 言語のように 1 つずつ入力することができないため、10 個のスコアを入力するときに困難に遭遇します。そこで、1,2,3,4,5,6,7,8,9,10とカンマ区切りで10個ずつ入力しました。入力後に文字列を分割する必要があるため、split 関数を使用します。
5. まとめ
ついに 5 つの古典的な C 言語の問題を Javascript で書き終えました。これは Javascript の学習の良いスタートにもなります。それぞれの問題を解決するプロセスを振り返ると、JavaScript は C 言語に非常に似ており、比較的とっつきやすいのですが、入出力の処理では少し異なります。評価しろと言われたらJavaScriptとC言語どっちが良いでしょうか? JavaScript は問題を解決するのに非常に簡単で高速だと思います。変数の型を間違って宣言する必要がなくなったので、その弱い型の機能が気に入っています。もちろん、永遠の定番言語であるC言語も非常に優れています。
以上がこの記事の全内容です。皆様の学習のお役に立てれば幸いです。