-1
関数によって2つの数値の間に素数を印刷するWAP。2つの数値の間に素数を印刷するこのプログラムでは、コンパイラは「パラメータaとnは決して使用されない」という警告を出しています。
#include<stdio.h>
#include<conio.h>
int primenumbers(int a,int n);
void main()
{
int a,n,result,i,f;
clrscr();
printf("enter the starting element and ending element");
scanf("%d%d",&a,&n);
aとnの間に素数を印刷したいとします。
for(i=a;i<=n;i++)
{
f=primenumbers(a,n);
if(f==0&&n!=1)
printf("%d is prime",i);
}
getch();
}
int primenumbers(int a, int n)
{
int i,j,f;
for(j=2;j<=(i/2);j++)
{
if(i%j==0)
{
f=1;
break;
}
}
return f;
}
- エラーパラメータaが
- エラーパラメータを使用されることはありませんN
このエラーメッセージは、かなり明確なようです。 'primeNumbers'関数では、パラメータ' a'もパラメータ 'n'も使用されません。 – InternetAussie
'primenumbers()'関数は関数内で 'a'と' n'という2つの引数をとります。しかし、関数内のコードは決して 'a'または' n'を使用しません。したがって警告です。あなたの機能は、何をするように言われているかには何の注意も払っていません。 'printf()'書式文字列を改行で終わらせるべきであることに注意してください。 –
また、あなたは 'primenumbers'関数で' i'を使用しています。これは初期化されていない変数です*また、コンパイラはあなたに警告しているかもしれません。その関数の 'i'は' main'のものとは異なる* iです。 'main'は' a'と 'n'の間でループしているので、関数は' int primenumbers(int i) 'でなければならず、他の' int i'宣言を削除することをお勧めします。あなたはそれを 'f = primenumbers(i);で呼び出すでしょう。 –