这个getchae是什么意思?还有那个对十取余等于九是什么意思?
2条回答 默认 最新
关注 引自免费微信小程序:皆我百晓生
这段C语言代码是一个简单的联系人列表程序,它遍历一个结构体数组
qw
,打印每个联系人的信息,并且每10个联系人换一页显示。这里的关键部分是两个for循环、一个条件判断以及一些格式化的输出。首先,我们来看一下变量和结构体:
qw
: 这应该是一个结构体数组,其中包含联系人的信息。qw.sz[i]
: 表示数组中的第i个元素,sz
可能代表的是size
,表示存储联系人信息的结构体集合。qw.sz[i].name
: 联系人的姓名。qw.sz[i].sex
: 联系人的性别。qw.sz[i].dianhua
: 联系人的电话号码。qw.sz[i].year
: 联系人的年龄。qw.sz[i].leibie
: 联系人的分类。
接下来是代码的执行流程:
- 第一行(8)初始化一个名为
i
的计数器为0,用于遍历联系人列表。 - for循环开始,当
i
小于qw.size
时继续执行循环。这会遍历整个联系人列表。 - 在循环内部,依次打印联系人的姓名、性别、电话、年龄和分类,每个字段后跟一个制表符
\t
以便于格式化。 - 循环结束后,调用
getchar()
函数暂停程序的执行,等待用户按下任意键,然后继续运行。
然后是第二个for循环:
- 第二行(5)再次初始化计数器
i
为0,这次是为了在屏幕上分页显示联系人。 - 第三个for循环开始,与第一个类似,当
i
小于qw.size
时继续执行。 - 在这个循环中,每输出一个人的信息后,会检查
i
是否能被10整除(即i % 10 == 0
),如果可以,说明已经输出了10个人的信息,此时需要清空屏幕并从头开始新的一页。- 使用
system("cls")
命令清空屏幕。这在Windows系统上有效,其他操作系统可能需要不同的命令,比如Linux或macOS上可以使用system("clear")
。
- 使用
- 接着,输出联系人的信息,格式与第一个循环相同。
- 当
i
除以10的余数为9时,意味着这是本页的最后一个联系人。这时调用getchar()
暂停程序,让用户有时间查看这一页面的信息,然后再按任意键继续到下一页。
getchar()
函数在这里的作用是用来接收用户的输入,通常是键盘上的一个按键。这样做的目的是为了暂停程序的执行,给用户足够的时间阅读当前屏幕上的信息,特别是当联系人数量较多时,分页显示会更友好。每次用户按下任意键后,程序会继续执行下一个联系人的输出。至于为什么对十取余等于九,这是因为每输出十个人后就到了一页的末尾,紧接着就是下一页的开始,因此当索引
i
除以10的余数为9时,就意味着需要进行新的一页的处理(清屏并继续输出)。通过这种方式,代码实现了自动换页的功能。本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 Mac版Fiddler Everywhere4.0.1提示强制更新
- ¥15 android 集成sentry上报时报错。
- ¥50 win10链接MySQL
- ¥35 跳过我的世界插件ip验证
- ¥15 抖音看过的视频,缓存在哪个文件
- ¥15 自定义损失函数报输入参数的数目不足
- ¥15 如果我想学习C大家有是的的资料吗
- ¥15 根据文件名称对文件进行排序
- ¥15 deploylinux的ubuntu系统无法成功安装使用MySQL❓
- ¥15 有人会用py或者r画这种图吗