linux下的c语言入门-day4

2024-05-20 20:08
文章标签 语言 linux 入门 day4

本文主要是介绍linux下的c语言入门-day4,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

之前复习了以便循环的只是概念,还是打算把他给写出来。


for循环一般用于计算循环的次数,在该循环中控制变量的值在每次迭代时递增或递减指定的值i,知道到达某个最终值为止。


while循环只要给定的条件是true就继续执行。如果循环条件在循环语句一开始就是false的,循环语句就根本不执行。


do while循环类似于while循环,但其循环条件在循环语句块执行后检查。因此循环语句块至少会执行一次。


再次记录一下编程的规则:

1.开始编程之前,先规划好过程和计算的逻辑,将它写下来最好,采用流程图的形式。试着从侧面思考,这也许比直接的方法更好。


2.要理解运算符的优先级,以正确计算复杂的表达式。如果不能确定运算符的优先级,就应该使用括号,确保表达式完成预期的操作。


3.要有给程序加上注释的习惯,全面解释他的使用和操作。要假设这些注释是方便给别人阅读这些程序,并加以扩展。声明变量时应该说明他们的应用。


4.程序的可读性是最重要的。


5.使用缩进格式,留出适当的空位,不让太挤,可视化的表达出程序的结构。


这里最后有个simon游戏,但是始终无法让数字显示在屏幕上。但是整体的逻辑还是理解的

#include#include#include#include#includeint main() { char another_game = 'Y'; bool correct = true; int counter = 0; int sequence_length = 0; int seed = 0; int number = 0; long now = 0; int time_taken = 0; int i =1; printf("\n To play simple simon, "); printf("watch the screen for a sequence of digits."); printf("\n Watch carefully, as the digits are only displayed for second!"); printf("\n The computer will remove them, and then prompt you"); printf("to enter the same sequence."); printf("\n When you do, you must put spaces between the digits.\n"); printf("\n Good luck!\npress enter to play\n"); scanf("%c", &another_game); do { correct = true; counter = 0; sequence_length = 2; time_taken = clock(); while(correct) { sequence_length += counter++%3 ==0; seed = time(NULL); now = clock(); srand((int)seed); for(i = 1; i <= sequence_length; i++) printf("%d", rand() % 10); for( ; clock() - now < CLOCKS_PER_SEC; ); printf("\r"); for(i = 1; i <= sequence_length; i++) printf(" "); if(counter == 1) printf("\n Now you enter the sequence - do not forget the spaces\n"); else printf("\r"); srand(( int)seed); for(i =1; i <= sequence_length; i++) { scanf("%d", &number); if(number != rand() % 10) { correct = false; break; } } printf("%s\n", correct ? "Correct!" : "Wrong!"); } time_taken = (clock() - time_taken) / CLOCKS_PER_SEC; printf("\n\n Your score is %d", --counter * 100 / time_taken); fflush(stdin); printf("\n Do you want to play again (y/n)? "); scanf("%c", &another_game); } while(toupper(another_game) == 'Y'); return 0; } 
很多函数都具有自己的头文件,不要忘记申明了。

下一站,数组~

这篇关于linux下的c语言入门-day4的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/995945

相关文章

Linux内核定时器使用及说明

《Linux内核定时器使用及说明》文章详细介绍了Linux内核定时器的特性、核心数据结构、时间相关转换函数以及操作API,通过示例展示了如何编写和使用定时器,包括按键消抖的应用... 目录1.linux内核定时器特征2.Linux内核定时器核心数据结构3.Linux内核时间相关转换函数4.Linux内核定时

Linux镜像文件制作方式

《Linux镜像文件制作方式》本文介绍了Linux镜像文件制作的过程,包括确定磁盘空间布局、制作空白镜像文件、分区与格式化、复制引导分区和其他分区... 目录1.确定磁盘空间布局2.制作空白镜像文件3.分区与格式化1) 分区2) 格式化4.复制引导分区5.复制其它分区1) 挂载2) 复制bootfs分区3)

C语言逗号运算符和逗号表达式的使用小结

《C语言逗号运算符和逗号表达式的使用小结》本文详细介绍了C语言中的逗号运算符和逗号表达式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习... 在C语言中逗号“,”也是一种运算符,称为逗号运算符。 其功能是把两个表达式连接其一般形式为:表达

Go语言实现桥接模式

《Go语言实现桥接模式》桥接模式是一种结构型设计模式,它将抽象部分与实现部分分离,使它们可以独立地变化,本文就来介绍一下了Go语言实现桥接模式,感兴趣的可以了解一下... 目录简介核心概念为什么使用桥接模式?应用场景案例分析步骤一:定义实现接口步骤二:创建具体实现类步骤三:定义抽象类步骤四:创建扩展抽象类步

GO语言实现串口简单通讯

《GO语言实现串口简单通讯》本文分享了使用Go语言进行串口通讯的实践过程,详细介绍了串口配置、数据发送与接收的代码实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要... 目录背景串口通讯代码代码块分解解析完整代码运行结果背景最近再学习 go 语言,在某宝用5块钱买了个

SpringCloud Stream 快速入门实例教程

《SpringCloudStream快速入门实例教程》本文介绍了SpringCloudStream(SCS)组件在分布式系统中的作用,以及如何集成到SpringBoot项目中,通过SCS,可... 目录1.SCS 组件的出现的背景和作用2.SCS 集成srping Boot项目3.Yml 配置4.Sprin

Linux服务器数据盘移除并重新挂载的全过程

《Linux服务器数据盘移除并重新挂载的全过程》:本文主要介绍在Linux服务器上移除并重新挂载数据盘的整个过程,分为三大步:卸载文件系统、分离磁盘和重新挂载,每一步都有详细的步骤和注意事项,确保... 目录引言第一步:卸载文件系统第二步:分离磁盘第三步:重新挂载引言在 linux 服务器上移除并重新挂p

Linux下屏幕亮度的调节方式

《Linux下屏幕亮度的调节方式》文章介绍了Linux下屏幕亮度调节的几种方法,包括图形界面、手动调节(使用ACPI内核模块)和外接显示屏调节,以及自动调节软件(CaliseRedshift和Reds... 目录1 概述2 手动调节http://www.chinasem.cn2.1 手动屏幕调节2.2 外接显

Linux(centos7)虚拟机没有IP问题及解决方案

《Linux(centos7)虚拟机没有IP问题及解决方案》文章介绍了在CentOS7中配置虚拟机网络并使用Xshell连接虚拟机的步骤,首先,检查并配置网卡ens33的ONBOOT属性为yes,然后... 目录输入查看ZFhrxIP命令:ip addr查看,没有虚拟机IP修改ens33配置文件重启网络Xh

linux实现对.jar文件的配置文件进行修改

《linux实现对.jar文件的配置文件进行修改》文章讲述了如何使用Linux系统修改.jar文件的配置文件,包括进入文件夹、编辑文件、保存并退出编辑器,以及重新启动项目... 目录linux对.jar文件的配置文件进行修改第一步第二步 第三步第四步总结linux对.jar文件的配置文件进行修改第一步进