int a1,a2;char c1,c2;scanf("%d%c%d%c",&a1,&c1,&a2,&c2);为什么可以使用以下形式输入数据:10A空格20B空格而不能用以下形式输入数据:10空格A空格20空格B我主要是想问前者的形式输入数据为什么是对的?

来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/26 05:41:37
inta1,a2;charc1,c2;scanf("%d%c%d%c",&a1,&c1,&a2,&c2);为什么可以使用以下形式输入数据:10A空格20B空格而不能用以下形式输入数据:10空格A空格2

int a1,a2;char c1,c2;scanf("%d%c%d%c",&a1,&c1,&a2,&c2);为什么可以使用以下形式输入数据:10A空格20B空格而不能用以下形式输入数据:10空格A空格20空格B我主要是想问前者的形式输入数据为什么是对的?
int a1,a2;char c1,c2;scanf("%d%c%d%c",&a1,&c1,&a2,&c2);
为什么可以使用以下形式输入数据:
10A空格20B空格
而不能用以下形式输入数据:
10空格A空格20空格B
我主要是想问前者的形式输入数据为什么是对的?那个第一个空格对上a2程序不是应该结束了吗

int a1,a2;char c1,c2;scanf("%d%c%d%c",&a1,&c1,&a2,&c2);为什么可以使用以下形式输入数据:10A空格20B空格而不能用以下形式输入数据:10空格A空格20空格B我主要是想问前者的形式输入数据为什么是对的?
第一种:
10对应&a1,A对应&c1,空格不是数值,&a2无法接受,所以继续等待,20是数值,对应&a2,B对应&c2
第二种:
10对应&a1,空格对应&c1,A对应&a2,错误,等待,空格对应&a2,错误,.