Bootstrap

c语言中%d %%d %%%d和\\%d的区别

在这里插入图片描述

1、%d,表示按整型输出后面给出的变量的值。

2、%%d ,这就会被拆成两部分看待,一是“%%”在C语言中就是输出一个“%”,而是“d”就是一个普通字符,所以当“%%d”在一起时,其含义就是输出“%d”这两个字符。

3、%%%d ,3个%在一起,进行拆分的话,%%代表一个“%”字符,后面的%d又代表整型输出变量的值,所以当“%%%d”一起时,其最终含义就是输出一个字符%号再接着按整型输出变量的值。类似的\符号也是一样。

C语言中,%是转义符,也就是和%一起出现的后面的内容会转义后输出

例子1:

int i=4;printf("%d\n",i);//此条输出结果为:4

printf("%%d\n");//此条语句输出结果为:%d

printf("%%%d\n",i,i);//此条语句输出结果为:%4

上述代码执行后,输出结果为:

4%d%4

例子2:

#include <iostream>
#include <algorithm>
#include <cstdio>
#include <stdlib.h>
#include <cstring>
using namespace std;
int main()
{
    int a,b,c;
    scanf("%d\\%d\\%d",&a,&b,&c);
    printf("%d\\%d\\%d\n",a,b,c);
	return 0;
}


Input 
9\17\2018

Output 
9\17\2018
;