scanf("i=%d,j=%d,k=%d",&i,&j,&k),这个语句为什么不对? 50
已知i、j、k为int型变量,若从键盘输入:1,2,3<回车>,使i的值为1、j的值为2、k的值为3,以下选项中正确的输入语句是______。A.sanf("%2d%2d...
已知i、j、k为int型变量,若从键盘输入:1,2,3<回车>,使i的值为1、j的值为2、k的值为3,以下选项中正确的输入语句是 ______。
A.sanf("%2d %2d %2d",&i,&j,&k);
B.scanf("%d %d %d",&i,&j,&k);
C.scanf("%d,%d,%d",&i,&j,&k);
D.scanf("i=%d,j=%d,k=%d",&i,&j,&k)
为什么答案是C呢,D为什么不对? 展开
A.sanf("%2d %2d %2d",&i,&j,&k);
B.scanf("%d %d %d",&i,&j,&k);
C.scanf("%d,%d,%d",&i,&j,&k);
D.scanf("i=%d,j=%d,k=%d",&i,&j,&k)
为什么答案是C呢,D为什么不对? 展开
展开全部
根据题目,您需要输入的格式是 "1,2,3",其中数字之间有逗号。所以,我们需要找到一个输入语句,它能正确解析这种格式。
A. scanf("%2d %2d %2d",&i,&j,&k); 这个选项使用空格分隔数字,不符合题目要求。
B. scanf("%d %d %d",&i,&j,&k); 同样,这个选项也使用空格分隔数字,不符合题目要求。
C. scanf("%d,%d,%d",&i,&j,&k); 这个选项使用逗号分隔数字,符合题目要求。
D. scanf("i=%d,j=%d,k=%d",&i,&j,&k); 这个选项要求输入格式为 "i=1,j=2,k=3",与题目要求不符。
因此,答案是 C。选项 C 使用逗号分隔数字,正确解析了题目中要求的输入格式。
A. scanf("%2d %2d %2d",&i,&j,&k); 这个选项使用空格分隔数字,不符合题目要求。
B. scanf("%d %d %d",&i,&j,&k); 同样,这个选项也使用空格分隔数字,不符合题目要求。
C. scanf("%d,%d,%d",&i,&j,&k); 这个选项使用逗号分隔数字,符合题目要求。
D. scanf("i=%d,j=%d,k=%d",&i,&j,&k); 这个选项要求输入格式为 "i=1,j=2,k=3",与题目要求不符。
因此,答案是 C。选项 C 使用逗号分隔数字,正确解析了题目中要求的输入格式。
追问
为什么D得输入格式为 "i=1,j=2,k=3"?
不是printf("i=%d,j=%d,k=%d",i,j,k);这样子就对吗?为什么scanf就不行了呢?为什么scanf要"i=1,j=2,k=3"这样子输入?
追答
正确答案是C,此时运行时录入1,2,3<回车>
如果使用D,则运行时录入i=1,j=2,k=3<回车>
scanf与printf其实使用的都是一种思想,就是将%d在输入或输出时替换成具体值。当使用D时,程序会放过“i=”这些字符,而专门去找%d
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询