📌  相关文章
📜  C程序在不使用分号的情况下打印从1到N的数字?

📅  最后修改于: 2021-05-26 02:50:29             🧑  作者: Mango

如何在C中不使用任何分号的情况下打印从1到N的数字。

#include
#define N 100
  
// Add your code here to print numbers from 1
// to N without using any semicolon

在上面的代码段中添加什么代码,使其不包含分号并打印从1到N的数字?

我们强烈建议您最小化浏览器,然后先尝试一下

方法1(递归)

// A recursive C program to print all numbers from 1
// to N without semicolon
#include
#define N 10
  
int main(int num)
{
    if (num <= N && printf("%d ", num) && main(num + 1))
    {
    }     
}

输出:

1 2 3 4 5 6 7 8 9 10 

参见此以完成运行。感谢Utkarsh Trivedi提出了此解决方案。

方法2(迭代)

// An iterative C program to print all numbers from 1
// to N without semicoolon
#include
#define N 10
  
int main(int num, char *argv[])
{
while (num <= N && printf("%d ", num) && num++) 
{
} 
}

输出:

1 2 3 4 5 6 7 8 9 10 

参见此以完成运行。感谢Rahul Huria提供此解决方案。

这些解决方案如何运作?
main()函数可以接收参数。第一个参数是参数计数,如果没有参数传递给它,则其值为1。第一个参数始终是程序名称。

#include
  
int main(int num, char *argv[])
{
   printf("num = %d\n", num);
   printf("argv[0] = %s ", argv[0]);
}

输出:

num = 1 
argv[0] = 
想要从精选的最佳视频中学习和练习问题,请查看《基础知识到高级C的C基础课程》。