💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
# 6.C语言输出函数(printf)和输入函数(scanf) 上节中的两个例子都用到了输入和输出函数scanf和 printf,这里我们先简单介绍一下它们的格式,以便后面使用。 scanf和 printf这两个函数分别称为格式输入函数和格式输出函数。其意义是按指定的格式输入输出值。因此,这两个函数在括号中的参数都由以下两部分组成: * 格式控制串:格式控制串是一个字符串,必须用双引号括起来,它表示了输入输出量的数据类型。在printf函数中还可以在格式控制串内出现非格式控制字符,这时在显示屏幕上会显示源字符串。各种类型的格式表示法请参考:C语言格式输出函数printf()详解。 * 参数表:参数表中给出了输入或输出的变量。当有多个变量时,用英文逗号(,)分开。例如: ~~~ printf("sine of %lf is %lf\n",x,s); ~~~ 其中%lf为格式字符,表示按双精度浮点数处理。它在格式串中两次现,对应了x和s两个变量。其余字符为非格式字符则照原样输出在屏幕上。 【例1-3】输入输出函数举例 ~~~ int max(int a,int b); /* 自定义函数说明 */ main(){ /* 主函数 */ int x,y,z; /* 变量说明 */ int max(int a,int b); /* 函数说明 */ printf("input two numbers:\n"); scanf("%d%d",&x,&y); /* 输入x,y值 */ z=max(x,y); /* 调用max函数 */ printf("maxmum=%d",z); /* 输出 */ } int max(int a,int b){ /* 定义max函数 */ if(a>b){ return a; }else{ return b; /* 把结果返回主调函数 */ } } ~~~ 上面例中程序的功能是由用户输入两个整数,程序执行后输出其中较大的数。本程序由两个函数组成,主函数和max 函数。函数之间是并列关系。可从主函数中调用其它函数。max 函数的功能是比较两个数,然后把较大的数返回给主函数。max 函数是一个用户自定义函数。因此在主函数中要给出说明(程序第三行)。可见,在程序的说明部分中,不仅可以有变量说明,还可以有函数说明。关于函数的详细内容将在后续章节介绍。在程序的每行后用/*和*/括起来的内容为注释部分,程序不执行注释部分。 上例中程序的执行过程是,首先在屏幕上显示提示串,请用户输入两个数,回车后由scanf函数语句接收这两个数送入变量x、y中,然后调用max函数,并把x、y的值传送给max函数的参数a、b。在max函数中比较a、b的大小,把大者返回给主函数的变量z,最后在屏幕上输出z的值。