C 程序在不使用分号的情况下打印从 1 到 N 的数字
在这里我们将看到这个问题的一个棘手解决方案。我们将在不使用任何分号的情况下打印一些从 1 到 N 的数字。
我们可以用两种不同的方法来解决这个问题。第一种是迭代方法,第二种是递归方法。
方法 1
printf() 函数返回字符串的长度,因此它是一个非零值。我们可以对条件进行逻辑 AND 来打印结果。然后增加计数器的值。
示例代码
#include<stdio.h>
#define N 20
int main(int num, char *argv[]) {
while (num <=N && printf("%d ", num) && num++) {
//The while body is empty.
}
}输出
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
方法 2
在第二种方法中,我们将看到如何使用递归来完成相同的任务。我们将在主函数中传递一些参数。此主函数将被递归调用。
示例代码
#include<stdio.h>
#define N 20
main(int val) {
if (val <=N && printf("%d ", val) && main(val + 1)) {
//Body is empty
}
}输出
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP