从命令行获取两个整数,分别为'n'和'm'并打印所有数字
从n到m(含)之间的起始数字应为两者中的较小者
结束数以n或m中较大者为准。打印使用说明
"Usage: p2 <int> <int>\n"
,如果命令行参数不足,则退出
给出了。
示例输入/输出:
./p2 5 1
1
2
3
4
5
我的代码在这里:
int main() {
int i, m, n;
m = atoi (argv[1]);
n = atoi (argv[2]);
if (argc < 3) {
printf("Usage: p2 <int> <int>\n");
return 0;
}
for (i = 1; i<= m; i++)
/* Not finish because not sure how */
答案 0 :(得分:0)
在尝试使用参数之前,您需要检查argc
。为了使用argc
和argv
,必须将它们放在main()
参数列表中。
循环需要从较小的数字开始,而不是从1
开始。这意味着您需要首先确定m
是否小于n
。
int main(int argc, char *argv[]) {
int i, m, n;
if (argc < 3) {
printf("Usage: p2 <int> <int>\n");
return 0;
}
m = atoi (argv[1]);
n = atoi (argv[2]);
if (n < m) { // Ensure that m is the lower number
int temp = n;
n = m;
m = temp;
}
for (i = m; i<= n; i++) {
printf("%d\n", i);
}
return 0;
}