#include<stdio.h>
#include<stdlib.h>
void main()
{
int i;
char sex;
scanf_s("%d%c", &i );
printf("%d\n", i);
scanf_s("%c", &s);
printf("%c\n", s);
system("pause");
}
在输入i之后,无法输入s
因为回车也是字符
scanf_s("%d%c", &i );
这句后面加个
getchar();
而且你这明明是两个说明符,怎么赋给一个变量,用%*c接收一个字符(但不赋值)
最后scanf_s和scanf的用法不同,需要三个参数,最后一个是要读入的字节数(用sizeof确定)
建议将程序中的所有scanf_s替换为scanf
然后在代码第一行前面加
#define _CRT_SECURE_NO_WARNINGS
屏蔽警告
查清楚了呀,复制过来的时候有点错误,scanf_s("%d%c", &i );应该为scanf_s("%d", &i );
追答并不是嘴上说“查清楚了”就证明真的查清楚了啊……
追问知道就说,不知道就别瞎BB