C语言求余号“%”怎么用printf()输出

#include<stdio.h>
#define S(A,B,Y) Y=A%B
void main()
{
int a,b,y;
printf("a=");
scanf("%d",&a);
printf("b=");
scanf("%d",&b);
y=S(a,b,y);
printf("a%cb=%5d\n",37,y);/*????其它方法????*/
//putchar('%');
//printf("%c",37);
//printf("a%b=%5d",y);/*是不行的!!!!*/
}
想得到这样的结果:(即出现%符号 有几种别的方法吗?)
a=5
b=3
a%b=2

C语言输出求余号(百分号)“%”需要在输出语句中使用格式控制“%%”(两个百分号)。

如:

#include <stdio.h>
 
int main(){
    int half = 50;
     
    printf("%d %% 4\n",half);
    return 0;
}
/*==========================
输出为:50 % 4 
============================*/

其他格式控制符:

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-09-19
printf("%%");这样能输出一个“%”本回答被提问者采纳
第2个回答  2009-11-25
printf("%c %s",'%',"%");
第3个回答  2009-11-25
printf("%%\n");
-----------------
楼上好快啊
第4个回答  2009-11-25
你定义一个字符型常量%;在后面输出,即char %;
输出是为printf(“a%cb=%5d",%,y) 即可。具体为:
#include<stdio.h>
#define S(A,B,Y) Y=A%B
char %
void main()
{
int a,b,y;
printf("a=");
scanf("%d",&a);
printf("b=");
scanf("%d",&b);
y=S(a,b,y);
printf("a%cb=%5d\n",37,y);

printf("%c",37);
//printf("a%cb=%5d",%,y);
}