グローバル変数の再宣言へのCプログラム
初期化せずにグローバル変数を再宣言し、初期化でグローバル変数を再宣言し、グローバル変数を再宣言し、それらを2回初期化した場合、CとC++の動作がどのように異なるかを理解します。また、ローカル変数を使用して上記の組み合わせを繰り返します。
1。 A)Cプログラム:初期化なしでグローバル変数を再宣言する
#include <stdio.h> int var; int var; int main(){ printf("Var = %d",var); return 0; }
出力
Var = 0
B)C ++プログラム:初期化なしでグローバル変数を再宣言する
#include <iostream> using namespace std; int var; int var; int main(){ cout<<"Var = "<<var; return 0; }
出力
Compilation Error: int var; main.cpp:3:5: note: ‘int var’ previously declared here
結果 :-Cを使用すると、初期化せずにグローバル変数を再宣言できます。値は0のままです。C++では、変数が再宣言されたというコンパイルエラーが発生します。
2。 A)Cプログラム:初期化なしでローカル変数を再宣言する
#include <stdio.h> #include <stdio.h> int main(){ int var; int var; printf("Var = %d",var); return 0; }
出力
error: redeclaration of ‘var’ with no linkage
B)C ++プログラム:初期化なしでローカル変数を再宣言する
#include <iostream> using namespace std; int main(){ int var; int var; cout<<"Var = "<<var; return 0; }
出力
error: redeclaration of ‘int var’
結果 :-CとC ++はどちらも、初期化が行われていないローカル変数の再宣言を許可していません。両方のプログラムがコンパイルに失敗しました。
3。 A)Cプログラム:初期化によるグローバル変数の再宣言
#include <stdio.h> int main(){ int var; int var=10; printf("Var = %d",var); return 0; }
出力
Var = 10
B)C ++プログラム:初期化によるグローバル変数の再宣言
#include <iostream> using namespace std; int var; int var=10; int main(){ cout<<"Var = "<<var; return 0; }
出力
main.cpp:7:9: error: redeclaration of ‘int var’ int var;
結果 :-Cは、初期化されていない場合、グローバル変数の再宣言を許可します。コンパイル中にC++プログラムが失敗します。
4。 A)Cプログラム:初期化によるグローバル変数の再宣言
#include <stdio.h> int var; int var=10; int main(){ printf("Var = %d",var); return 0; }
出力
error: redeclaration of ‘var’ with no linkage
B)C ++プログラム:初期化によるローカル変数の再宣言
#include <iostream> using namespace std; int main(){ int var; int var=10; cout<<"Var = "<<var; return 0; }
出力
error: redeclaration of ‘int varの再宣言
結果 :-CとC ++はどちらも、初期化されていない場合でもローカル変数の再宣言を許可しません。両方のプログラムがコンパイルに失敗しました
-
プラス完全数をチェックするCプログラム
n桁の数xが与えられた場合、私たちのタスクは、与えられた数のプラス完全数かどうかを確認することです。数値がプラス完全数であることを確認するために、すべての桁のn乗d(d ^ n)を見つけて、すべての桁を合計します。合計がnに等しい場合、その数値はプラス完全数です。プラス完全数は、任意の数のアームストロングを見つけるのと似ています。 以下の例のように- 例 Input: 163 Output: Number is not a perfect_number Explanation: 1^3 + 6^3 + 3^3 is not equal to 163 Input: 371 Output:
-
アームストロング数のためのCプログラム
アームストロングかどうかに関係なく、ユーザーが入力した数字nを確認する必要があるタスクが与えられます。 アームストロング数は、すべての桁の合計が桁数で累乗される場合、または桁の順序nと言うことができる場合、桁と同じです。 以下は、アームストロング数を見つける方法の簡単な表現です- 数式- wxyz…. = pow(w, n) +pow(x, n) + pow(y, n) + pow(z, n) + ….. アルゴリズム START Step 1-> Declare a function to find the value after power o