c++ 连续图片显示_计算整数的和并显示结果

954565a822cc9d3606a84e35705cf3d2.png

计算整数 20 和 45 的和,并显示结果。在编辑器中键入如代码清单 demo1.c 所示的程序代码。

代码清单 demo1.c

/*
显示整数 20 和 45 的和
*/
#include <stdio.h>

int main() {
    printf("%d", 20 + 45);

    return 0;
}

程序编译和运行

编译程序 demo1.c,生成可执行文件 demo1

gcc demo1.c -o demo1

运行程序 demo1

./demo1

屏幕显示:

65

程序分析

printf函数: 格式化输出函数

printf 函数 可以在显示器上进行输出操作(末尾的f源自format(格式化)这个单词)。

printf 函数的第一个实参"%d"指定了输出格式,它告诉程序:以十进制数的形式显示后面的实参。因此,通过调用printf函数显示出了第二个实参 20 + 45 的值,即 20 与 45 的和 65。

► "%d"的d源自decimal(十进制数)。

语句

请大家仔细观察之前的程序代码,调用printf函数的时候使用了分号,那段固定代码(return 0;) 中也使用了分号。这里的分号就相当于中文里的句号。

正如在句子末尾加上句号才能构成完整的一句话,C语言中也需要在末尾加上分号来构成正确的语句(statement)。

开始执行程序后,固定代码中 { 和 } 之间的语句会被按顺序执行。

格式化字符串和转换说明

程序运行的时候如果只显示和或者差的值,理解上会比较困难,接下来我们让结果显示得更加人性化一些,修改 demo1.c,这次我们把printf函数的第一个实参设置得更长更复杂一些。

代码清单 demo2.c

/*
人性化的显示整数 20 和 45的和
*/
#include <stdio.h>

int main()  {
    printf("20与45的和是%d。n", 20 + 45);
    
    return 0;
}

代码清单 demo2.c 中的 "20与45的和是%d。n" 是printf函数的第一个实参,称为 格式化字符串(format string)。

格式化字符串中的%d指定了实参要以十迸制数的形式显示,这就是 转换说明(conversion specification)。格式化字符串中没有指定转换说明的字符基本上都会原样输出。

格式化字符串结尾的n是代表换行(new line)的符号,和n组成了一个特殊的 换行符

►画面中不会显示和n,而是会输出一个(看不见的)换行符。

★ 专题 换行的必要性

下面所示为代码清单 demo1.c 的运行情况($ 表示操作系统提示符,实际根据自己所用操作系统决定),
$ ./demo1↙
65
在大多数运行环境中,程序执行后,程序的输出结果65后面都会紧跟着提示符。
如代码清单 demo2.c 所示,若在程序的最后输出了换行符(n),则不会紧跟着提示符。如下所示:
$ ./demo2↙
20与45的和是65。
$

符号的称呼

C语言里符号的称呼如表 1 所示。

■ 表 1 符号的称呼

a463b126ee411f963a19c49d93b098d2.png

无格式化输出

调用 printf 函数的时候也可以只使用一个参数。这时,格式化字符串内的字符将按照原样显示。显示 您好!我叫小明。“ 的程序如代码清单 demo3.c 所示。

► 大家在编写程序吋可以将这里的 小明 改为自己的名字。

代码清单 demo3.c

/*
    打招呼并进行自我介绍
*/
#include <stdio.h>

int main() {
    printf("您好!我叫小明。n");

    return 0;
}

下面我们稍微把程序修改一下,让 “您好!”“我叫小明。”分别在两行显示。修改后的程序如代码清单 demo4.c 所示。

代码清单 demo4.c

/*
    打招呼并进行自我介绍
*/
#include <stdio.h>

int main() {
    printf("您好!n我叫小明。n");

    return 0;
}

在格式化字符串中间插入 n 就可以实现换行操作。而像代码清单 demo5.c 那样,调用两次printf函数也可以得到同样的效果。

代码清单 demo5.c

/*
    打招呼并进行自我介绍
*/
#include <stdio.h>

int main() {
    printf("您好!n");
    printf("我叫小明。n");

    return 0;
}

这样程序是不是更易读了呢?

字符串常量

像”ABC"和"您好!"这样用双(")括起来的一连串连续排列的文字,称为字符串常量(string literal)

转义字符

我们已经介绍了能够实现换行的特殊符号 n,像这样的特殊符号称为转义字符(escape sequence)。

响铃(alert)的转义字符是 a 。代码清单 demo6.c 中的程序,在显示 您好! 之后响铃3次。

代码清单 demo6.c

/*
打招呼并响铃3次
*/
#include <stdio.h>

int main() {
    printf("您好!aaan");

    return 0;
}

► 程序在某些环境下运行吋可能不响铃(通常情况下都是发出蜂鸣音,即“哔”的声音,但有吋并不发出声音,而是通过视觉来发出警报)或者连续响铃3次。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值