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

相关文章

Spring Security 从入门到进阶系列教程

Spring Security 入门系列 《保护 Web 应用的安全》 《Spring-Security-入门(一):登录与退出》 《Spring-Security-入门(二):基于数据库验证》 《Spring-Security-入门(三):密码加密》 《Spring-Security-入门(四):自定义-Filter》 《Spring-Security-入门(五):在 Sprin

linux-基础知识3

打包和压缩 zip 安装zip软件包 yum -y install zip unzip 压缩打包命令: zip -q -r -d -u 压缩包文件名 目录和文件名列表 -q:不显示命令执行过程-r:递归处理,打包各级子目录和文件-u:把文件增加/替换到压缩包中-d:从压缩包中删除指定的文件 解压:unzip 压缩包名 打包文件 把压缩包从服务器下载到本地 把压缩包上传到服务器(zip

Linux 网络编程 --- 应用层

一、自定义协议和序列化反序列化 代码: 序列化反序列化实现网络版本计算器 二、HTTP协议 1、谈两个简单的预备知识 https://www.baidu.com/ --- 域名 --- 域名解析 --- IP地址 http的端口号为80端口,https的端口号为443 url为统一资源定位符。CSDNhttps://mp.csdn.net/mp_blog/creation/editor

【Python编程】Linux创建虚拟环境并配置与notebook相连接

1.创建 使用 venv 创建虚拟环境。例如,在当前目录下创建一个名为 myenv 的虚拟环境: python3 -m venv myenv 2.激活 激活虚拟环境使其成为当前终端会话的活动环境。运行: source myenv/bin/activate 3.与notebook连接 在虚拟环境中,使用 pip 安装 Jupyter 和 ipykernel: pip instal

科研绘图系列:R语言扩展物种堆积图(Extended Stacked Barplot)

介绍 R语言的扩展物种堆积图是一种数据可视化工具,它不仅展示了物种的堆积结果,还整合了不同样本分组之间的差异性分析结果。这种图形表示方法能够直观地比较不同物种在各个分组中的显著性差异,为研究者提供了一种有效的数据解读方式。 加载R包 knitr::opts_chunk$set(warning = F, message = F)library(tidyverse)library(phyl

透彻!驯服大型语言模型(LLMs)的五种方法,及具体方法选择思路

引言 随着时间的发展,大型语言模型不再停留在演示阶段而是逐步面向生产系统的应用,随着人们期望的不断增加,目标也发生了巨大的变化。在短短的几个月的时间里,人们对大模型的认识已经从对其zero-shot能力感到惊讶,转变为考虑改进模型质量、提高模型可用性。 「大语言模型(LLMs)其实就是利用高容量的模型架构(例如Transformer)对海量的、多种多样的数据分布进行建模得到,它包含了大量的先验

数论入门整理(updating)

一、gcd lcm 基础中的基础,一般用来处理计算第一步什么的,分数化简之类。 LL gcd(LL a, LL b) { return b ? gcd(b, a % b) : a; } <pre name="code" class="cpp">LL lcm(LL a, LL b){LL c = gcd(a, b);return a / c * b;} 例题:

Java 创建图形用户界面(GUI)入门指南(Swing库 JFrame 类)概述

概述 基本概念 Java Swing 的架构 Java Swing 是一个为 Java 设计的 GUI 工具包,是 JAVA 基础类的一部分,基于 Java AWT 构建,提供了一系列轻量级、可定制的图形用户界面(GUI)组件。 与 AWT 相比,Swing 提供了许多比 AWT 更好的屏幕显示元素,更加灵活和可定制,具有更好的跨平台性能。 组件和容器 Java Swing 提供了许多

【IPV6从入门到起飞】5-1 IPV6+Home Assistant(搭建基本环境)

【IPV6从入门到起飞】5-1 IPV6+Home Assistant #搭建基本环境 1 背景2 docker下载 hass3 创建容器4 浏览器访问 hass5 手机APP远程访问hass6 更多玩法 1 背景 既然电脑可以IPV6入站,手机流量可以访问IPV6网络的服务,为什么不在电脑搭建Home Assistant(hass),来控制你的设备呢?@智能家居 @万物互联