我是C编程的新手,编写了这个接受输入N的C程序,并给出了一个列表,其中包含最多N个可被7整除的数字。我编写的程序如下;
# include <stdio.h>
int main(){
int c,n,k;
int i=0;
int AnswerList [1000];
printf("Enter the number\n");
scanf("%d", &n);
for (c=1;c<=n;c++){
if(c%7==0){
AnswerList[i]=c;
i++;
}
}
for (k=0;k<=i;k++){
printf("%d\n", AnswerList[k]);
}
return 0;
}
我需要运行我的程序,如果N等于27,我应该可以输入命令行
./byseven 27
换句话说,我需要编写绕过printf行的代码。我将不胜感激任何帮助。
非常感谢。
答案 0 :(得分:2)
使用command-line arguments。一个简单的例子:
int main(int argc, char **argv) {
if (argc < 2) {
printf("Usage: %s N\n", argv[0]);
return 0;
}
int N = atoi(argv[1]); // atoi is used to convert a string to an int
// your code
}
答案 1 :(得分:0)
您应该使用int main(int argc, char** argv)
定义。然后argc
将是你的参数的数量(第一个参数始终是你的程序的名称),argv
是包含该参数的字符串数组。因此,不需要scanf
函数。
答案 2 :(得分:-2)
gcc -o hello hello.c
它将编译并生成一个名为hello的可执行文件。要运行程序类型:
./hello