第1个回答 2024-10-23
当执行输入三个整数:5 6 7时,程序返回值为3。
输入5 6 d时,返回值为2,因给c赋值不正确。
输入5 t d时,返回值为1,b和c赋值不正确。
若scanf函数的第一个变量格式不正确,返回值为0。当n个变量格式不正确时,返回值为n-1。
继续解释,"continue"表示3,因为有三个%d,输入项为3个,实则进了缓冲区3个,两个被赋值,一个被丢弃。
scanf()返回值应为进缓冲区的数据个数或获取输入数据格式说明的个数。如scanf("%d%d%d")。
输入1 2 3,返回值为3。输入1 a,返回值为1,因为仅第一个%d得到数据。
scanf函数的返回值显示正确读取数据的数量。输入数据不符时,会立即终止,返回成功读取的数据个数。
对于错误程序,如无法正常继续执行,返回值应为2。若程序正常执行,返回值应为2。
scanf等库函数使用体验不佳,不同编译环境结果可能不同。
具体情况,大家可自行深入研究。