比如我写的是scanf("a=%d b=%d",&a,b)
然后又写了一堆,在这个程序能运行的情况下,我开始运行之后屏幕上会显示a= b=这样子吗,那假如说里面写汉字可以吗,还是不会出现,必须在加上printf呢
在使用scanf函数时,提示信息不会在屏幕上显示。scanf函数只负责接收用户输入的数据,不会在屏幕上显示任何提示信息。
如果想在scanf函数中添加汉字提示信息,可以结合printf函数来实现。先使用printf函数打印需要的提示信息,然后再使用scanf函数接收用户输入的数据。这样可以在屏幕上显示汉字提示信息。
具体代码如下所示:
#include <stdio.h>
int main() {
int a, b;
printf("请输入a的值: "); // 打印汉字提示信息
scanf("%d", &a); // 使用scanf接收输入的整数
printf("请输入b的值: "); // 打印汉字提示信息
scanf("%d", &b); // 使用scanf接收输入的整数
// 打印输入的两个整数的和
printf("a + b = %d\n", a + b);
return 0;
}
运行代码时,屏幕上会显示相应的汉字提示信息,并等待用户输入相应的整数。
scanf()里面的提示是不会出现的,里面的"a=%d b=%d"是需要输入中也有对应的字符来匹配才能正确获取输入中的数据;
如果要出现打印信息,需要使用printf来打印,然后在后面使用scanf()来获取输入。
测试代码如下:
参考链接:
#include <stdio.h>
#include <stdlib.h>
int main(void){
int a,b;
printf("a="); // 打印提示信息
// https://baike.baidu.com/item/scanf/10773316
scanf("%d",&a); // 从输入获取一个整数,存入变量a中
printf("\n");
printf("b="); // 打印提示信息
scanf("%d",&b); // 从输入获取一个整数,存入 变量b中
printf("第一次获取输入,a=%d, b=%d\n\n",a,b); // 打印第一次输入的结果
fflush(stdin); // 清空缓冲区
scanf("a=%d b=%d",&a,&b); // 从输入以指定的格式获取两个整数,分别存入变量a和b中
printf("第二次获取输入,a=%d, b=%d\n",a,b); // 打印第二次输入的结果
return 0;
}
scanf 是输入,格式化字符串里的内容,是需要你自己输入的,你需要输入 a = 1 b = 2 类似这样
printf 是打印输出,这个才会打印,你可以自己试试
scanf("a=%d b=%d",&a,b) ; 这样写,不会在屏幕上显示a= b= ,如需显示提示,应该用printf("a="); scanf("%d", &a); printf("b=");scanf("%d", &b);四句组合才能达到效果。