繁体   English   中英

如何解决在 C 中显示 arrays 的问题

[英]Hwow can I solve the problem of displaying arrays in C

此代码的步骤

  1. 扫描数组的维度✅
  2. 填写它(整数)✅
  3. 显示它✅
  4. 将正数分开并将它们放入数组“POS[]”中
  5. 并将负数放入另一个数组“NEG[]”
  6. 显示阵列 POS
  7. 显示阵列 NEG
        #include <stdio.h>
        
        int main(int argc, char *argv[]) {
            int n,i;
            int T[n];
            int NEG[60], POS[60];
            int negindex =0, posindex =0;
            printf("Veuillez saisir la dimension du tableau (N<60): ");
            scanf("%d",&n);
            //Remplissage du tableau
            for (i =0;i<n;i++){
                printf("T[%d] = ",i);
                scanf("%d",&T[i]);
            }
            //affichage du tableau
            printf("T[%d] = ",n);
            for (i =0;i<n;i++){
                printf("%d  ",T[i]);
            }
            //Séparer les nombres (positif | negatif) 
            for (i =0;i<n;i++){
                if(T[i]>0){
                    POS[posindex]=T[i];
                    posindex++;
                }
                else if(T[i]<0){
                    NEG[negindex]=T[i];
                    negindex++;
                }
            } 
            
            printf("\n");
            printf("POS[%d] = ",posindex);
            for (i =0;i<posindex;i++){
                printf("%d  ",POS[i]);
            }
            
            printf("\nNEG[%d] = ",negindex);
            for (i =0;i<negindex;i++){
                printf("%d  ",NEG[i]);
            }
            
            
            return 0;
        }

结果

问题在于在图像中显示正数和负数数组

**THE RESULT (txt)**
Veuillez saisir la dimension du tableau (N<60): 7
T[0] = 12
T[1] = 23
T[2] = -14
T[3] = 3
T[4] = -45
T[5] = 33
T[6] = 78
T[7] = 12  23  -14  3  -45  33  78
POS[6] = 12  23  3  12  23  3
NEG[1] = -14

穆斯塔法,在声明“int n, I;”之后您必须先扫描“n”的值,然后才能声明大小为“n”的数组。 否则你会得到分段错误。 您的前 7 行代码应如下所示 -

int main(int argc, char *argv[]) {
    int n,I;
    printf("Veuillez saisir la dimension du tableau (N<60): ");
    scanf("%d",&n);
    int T[n];
    int NEG[60], POS[60];
    int negindex =0, posindex =0;

进行此更改后,它将完美运行...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM