c - 制作n个自然数的数列

标签 c

这段代码存储前n个自然数。并且数字的顺序是升序的。现在我们必须打印所有数字,以便 a[i] 不能被 a[j] 整除,其中 i>j。 这是我写的简单代码。我尝试使用一个循环按 O(n) 的顺序进行。 但它正在赋予垃圾值(value)。

#include<stdio.h>
main()
{
    int i=1,n;
    printf("enter the numbers \n");
    scanf("%d",&n);
    int a[n];
    for(i=1;i<=n;i++)
    {
        a[i]=i;
        printf("%d\n",a[i]);
    }
    while(a[i+1]>a[i] && a[i+1]%a[i]!=0){
        printf("%d",a[i]);
        i++;
    }
}

最佳答案

在C 中数组是从0n-1。此外,您忘记在进入 while 循环之前重置 i 的值。

关于c - 制作n个自然数的数列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17675067/

相关文章:

C 错误 - 数字代表什么?

c++ - 不寻常的 CString 格式

c++ - c语言实现密码安全的程序?

c++ - Doxygen - 如何在不生成图表的情况下生成文本调用关系结果

c - 在 C 中创建动态数组(指针)/调整其大小时出现问题

c - 为什么这个 MPI_Bcast 相关代码没有死锁?

c - 从不兼容的 void * 分配 int*

c - C 中最简单最真实的时序

比较字符串

c - 使用结构、引用和 gettimeofday 函数的一些帮助