C/C++输入和输出

printf()函数入栈

printf函数参数的入栈顺序是从右到左(888先入栈,接着666入栈)。所以从栈里面读取一个数据时,只会读取最后入栈的数据,也即666

输出结果为666

 

变量输出格式(变量=%d)

可直接在printf中传入具体值(两种方法)

输入小数:%lf (lf 代表 long float-point),定义为double类型变量输出用%lf(%f什么时候用?)

 

变量输入scanf

①scanf 可以接收用户的输入,转化成一个数值保存在变量 a 中

②字符串内不要加多余的空格、或其他字母和标点。初学者往往因为在双引号内加了多余的字符,而得不到正确的结果。

注:如果非要实现“请输入”类似的提示,可以先用printf打印出提示语句,再用scanf

#include <stdio.h>
int main()
{
    double a = 0; // 第一个数
    double b = 0; // 第二个数
    printf("请输入第一个数: "); // 提示用户输入
    scanf("%lf", &a);
    printf("请输入第二个数: "); // 提示用户输入
    scanf("%lf", &b);
    double result = a * b; //计算结果
    printf("%.3lf x %.3lf = %.3lf \n", a, b, result);
    return 0;
}

虽然char也能表示整数,但是用到scanf,输入变量对应的类型必须是int(直接全部默认为int即可)

③变量输入,一定要加上&符号。输入小数:scanf("%lf", &f)

④使用scanf报错:https://blog.csdn.net/qq_35370790/article/details/80801699(最直接的方法:把scanf改为scanf_s)

 

%*4s表示读取一个长度为四个字符的字符串,中间的*表示将读取到的字符串忽略,不赋给变量列表中的变量。

%2d先读取前两个字符 %*4s跳过4个字符 %2d读取两个字符 所以x为12 y为78 y-x=66

 

1、getchar和get函数区别

getchar从控制台输入输出一个字符

char ch=getchar();
putchar('A');

这里的输入和下面的字符串输入区别

get函数从控制台输入字符串

char line[64] = {0};
gets(line);

控制台输入若干字符后,按回车键完成输入,从而将输入的字符串存入line中

 

2、多行输入(while+get函数)

while(1)
    {
		// 获取一行
		char line[64] = {0};
		gets(line);

                 ...//对line进一步操作
    }

连续输入5行内容

//定义输入的结构体
struct Name
{
	char val[32];
};


for(int i=0;i<5;i++)
{
    printf(">");//用于输入提示
    gets(name[i].val);//已经在main中定义Name name[128]
}

gets本身没有换行的功能,这里是for循环实现了换行

 

cin>>a代表获取键盘输入的值赋值给变量a

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值