c - 如何生成一个可以包含所有大于零的自然数的数组?

标签 c arrays

自然数是正整数的集合,范围从 1 到无穷大,不包括小数部分。自然数是除零之外的整数。零是唯一不是自然数的整数。如果所有元素都是自然数,则数组是特殊的。判断给定的数组是否特殊。

我尝试在不使用 scanf 的情况下使用数字,它可以正常工作并发挥其应有的功能。

这是我尝试编写的代码:

#include  <stdio.h>

int main(){
 int N,special[N] ;
  scanf("%d",&N);

for(N;N>0;N++){  
    if(special[N]>0){
        printf("yes/n");
    }else{
        printf("no/n");
    }
}
    return 0;

}

我预计结果是"is"或“否”。但实际输出什么也没有。我的代码没有输出。

最佳答案

正如评论中指出的,代码存在几个问题。

您想要实现的一种方法是:

#include  <stdio.h>

int main(){
    int N;

    int ret = scanf("%d",&N);
    if(1 != ret || N < 0)
        return 1;

    int special[N] ;

    for(int i=0;i<N;i++){
        ret = scanf("%d", &special[i]);
        if(1 != ret)
            return 1;
        if(special[i] == 0){ 
            printf("array not special\n");
            return 1;
        }   
    }   

    printf("special array\n");
    return 0;
}

关于c - 如何生成一个可以包含所有大于零的自然数的数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56253336/

相关文章:

arrays - 另一个数组中字符串长度的数组

ios - 访问 CKRecordZone 数组中的字段?

arrays - mongodb - 如果不存在则创建文档,否则推送到数组

PHP - 数组元素问题

javascript - 从 JSON 中删除元素会留下一个未定义的元素

c - 在 C 中实现字符串的二叉搜索树

c - MPI 将矩阵划分为更小的矩阵

c - 数组在 C 中给出不同的输出?

c - 数组符号在这个程序中有何不同?

C语言的追逐游戏