C语言传参实现输出最大最小值

虽然很多时候写C语言main函数的时候都选择把形参写为空,也就是void,但是这并不是唯一的写法。C语言实际上支持向主函数传递两个参数,此时的函数原型如下:

int main(int  argc, char **argv);

其中,第一个参数用于代表参数的个数;第二个参数则是用于向程序传递参数的列表,通常是一组值。求最大值最小值(输入的数的多少不确定)
代码如下:

#include<stdio.h>
#include<stdlib.h>
#define inf 999999999
#define max(a,b) a>b?a:b
#define min(a,b) a<b?a:b
int main(int argc,char **argv) {
	int minn=inf,maxx=-inf;
	while(*++argv != NULL) {
		//printf("%s\n",*argv);
		minn=min(minn,atoi(*argv));
		maxx=max(maxx,atoi(*argv));
	}
	printf("Largest: %d\nSmallest: %d",maxx,minn);
	return 0;
}

另外 a t o i atoi 字符串转为 i n t int 类型。

发布了293 篇原创文章 · 获赞 212 · 访问量 10万+

猜你喜欢

转载自blog.csdn.net/nuoyanli/article/details/103410525