「大文字のアルファベットを入力すると、その文字を10文字表示するプログラムを作成せよ。」
といった課題で、以下のプログラムを作ってみたのですが、上手くいかず躓いているのでお助けいただけるとありがたいです。
#include <stdio.h>
void A(int);
int main(void){
int m;
printf("Capital Letter: ");
scanf("%d",&m);
A(10);
return 0;
}
void A(int n){
int i;
for(i=1;i<=n;i++)printf("%d",m);
puts("");
}
以下のエラーコードが出ます。
21: error: `m' undeclared (first use in this function)
21: error: (Each undeclared identifier is reported only once
21: error: for each function it appears in.)
C言語 戻り値をもたない関数voidを使った課題
Re: C言語 戻り値をもたない関数voidを使った課題
以下はちょっとしたサンプルコードです。
質問者さんのコードのどこがおかしいかは
・scanfで読み込んだmを捨ててしまっている。
・Aに渡すのは回数の10ではなく、読み込んだ文字であるはず
・Aの中で、定義されていない変数mを使っている
質問者さんのコードのどこがおかしいかは
・scanfで読み込んだmを捨ててしまっている。
・Aに渡すのは回数の10ではなく、読み込んだ文字であるはず
・Aの中で、定義されていない変数mを使っている
バグのないプログラムはない。
プログラムは思ったとおりには動かない。書いたとおりに動く。
プログラムは思ったとおりには動かない。書いたとおりに動く。
Re: C言語 戻り値をもたない関数voidを使った課題
ソースコードを提示する際は、BBCodeが有効な(無効にしない)状態で、
BBCodeのcodeタグの開始タグと終了タグの組(開始タグが先)で囲んでいただけると、
見やすくてありがたいです。
課題は「大文字のアルファベットを入力」のはずなのに、数値の読み書きしかしていない、というのもおかしいですね。
BBCodeのcodeタグの開始タグと終了タグの組(開始タグが先)で囲んでいただけると、
見やすくてありがたいです。
課題は「大文字のアルファベットを入力」のはずなのに、数値の読み書きしかしていない、というのもおかしいですね。
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)