如何在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基础课程》。