下面程序段的运行结果是( )。 char*p=" %d,a=%d,b=%d
"; int a=111,b=10,c; c=a%b; p+=3; printf(p,c,a,b);
A、1,a=111,b=10
B、a=1,b=111
C、a=111,b=10
D、以上结果都不对
时间:2022-01-06 00:29关键词:
答案解析
B 解析:题中字符指针p指向了字符串“%d,a=%d,b=%d\n”,c=a%b=111%10=1,p+=3使指针p向后移动了3个字符的位置。printf(p,c,a,b)相当于printf(“a=%d,b=%d\n”,c,a,b);,格式控制串指明输出两个数据,输出项有3项,则最后一项不输出,所以答案为B)。注意:格式输出函数scanf的使用。