使用命令行参数形式编写 C 语言程序以实现从 2 开始连续输出 n 个素数。设命令行格式为
outprime n
例如:执行命令
outprime 10
的结果是:
2,3,5,7,11,13,17,19,23,29
要求:程序中必须有命令行的正确性检查
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
// 检查命令的个数
if(argc < 3){
// 在控制台输出错误信息
fprintf(stderr, "Usage: outprime n\n");
return 1;
}
int i=0,k=0,count=0;
//int atoi(const char *str) 把参数 str 所指向的字符串转换为一个整数。stdlib.h
int n=atoi(argv[2]);
for(i=2; count<n; i++){
for(k=2;k<i;k++){
if(i%k==0) break;
}
if(k==i){
printf("%d",i);
count++;
// 最后一个不用输出 ,
if(count<n) printf(",");
}
}
}