0

こんにちは私はcに不慣れで、これまでこのエラーに遭遇したことはありません。プログラムでintを宣言したとは思わないので、少し混乱しています。ただし、13、14、22、23、24、35のように、および40配列の添え字が整数ではない場合、コードは次のようになります。

#include <stdio.h>

 int main(int argc, char const *argv[])
{
double mint[8];
double gum[8];
double count = 1.0,num,sum=0.0;

while(count <= 8)
{
    printf("please enter a number");
    scanf("%d",&num);
    mint[count]=num;
    printf("%d\n",mint[count] );
    count++;
}

count = 1;

while(count<=8)
{
    sum += mint[count];
    gum[count] = sum;
    printf("%d\n",gum[count] );
    count++;
}

count = 1.0;
sum = 1.0;

while(count<=8)
{
    while(sum<=8)
    {
        printf("%d",mint[sum] );
        sum++;
        if (sum==8)
            printf("\n");
    }
    printf("%d",gum[count] );
    count++;
}

return 0;
}   
4

4 に答える 4

5

double配列に値のインデックスを付けることはできません。countたとえば2.4の場合はどうなりますか?

したがって、整数を使用する必要があります(intたとえば)。

于 2013-02-07T19:31:05.607 に答える
3
scanf("%d",&num);

dintへのポインタではなく、へのポインタを期待しますdoublelf引数がへのポインタである場合に使用しdoubleます。

同じprintf

printf("%d\n",mint[count] );

dを期待してintいませんdouble

于 2013-02-07T19:30:50.400 に答える
0

あなたが持っている

double count = 1.0

それから

mint[count]=num;

doubleである配列にインデックスを含めることはできません-整数である必要があります

于 2013-02-07T19:32:07.420 に答える
0

発生するエラーはdouble、配列にアクセスするための型の使用を参照しています。

mint[count]

はどこcountにありますかdouble

警告countを作成し、取り除くことsumint

他の回答者が指摘しているように、あなたのプログラムには他にもいくつかの問題があります。初心者向けのチュートリアルをどこかでチェックすることをお勧めします。

于 2013-02-07T19:32:18.620 に答える