绝对零基础的C语言科班作业①初始C语言(输入和输出)

2023-10-18 20:10

本文主要是介绍绝对零基础的C语言科班作业①初始C语言(输入和输出),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

该系列为计算机科班C语言的OJ作业,应该有十篇左右文章就能结束,我觉得刚开始学习C语言先自己动手敲几个程序是关键的,没有电脑的话可以先看下面的代码。刚开始学习或者预习能看个大概就不错了。

敲C语言的软件,大学一般用的是Dev-C++,想用的话可以在应用商店下载,或者在网上搜索下载方式,我现在用的是VS2022,这是安装教程视频版链接:VS2022安装使用教程,Visual Studio 2022详细安装使用调试教程C语言编译器,C++编译器_哔哩哔哩_bilibili

一. 标准输出

永远的经典 hello,world

任务描述:编写程序输出一行文字:hello,world。

hello,world程序是指在计算机屏幕上输出hello,world这行字符串的计算机程序。这个例程因在Brian Kernighan和Dennis M. Ritchie合著的《The C Programme Language》一书中使用而广泛流行。


#include<stdio.h> //包含一个库函数(头文件)
int main() //主函数格式,名字:main,函数类型:int(整型)函数内部用花括号括起来
{printf("hello,world"); //此语句输出双引号中字符串的内容(在屏幕输入hello,world)return 0; //返回给主函数数字0
}     //初学者刚开始敲代码时应该把第四行以外的代码先敲出来

认识C程序

  1. 以上任务代码文件被称为 C 语言的源代码文件(也叫头文件源文件),文件类型为最普通的文本文件,可以用任何文本编辑软件编辑,例如记事本、Notepad++、UltraEdit、EditPlus、Vim 等,C 语言源代码文件的扩展名应该为.c。

  2. 第一行 #include<stdio.h> 是每一个 C 语言程序必须要有的代码,它是一个编译预处理指令,含义是把库文件“stdio.h”包含到当前位置,现在你可以不用去理解它,记住它的样子就可以了。

  3. int main(){ ... } 这个结构叫做主函数,是每一个 C 程序不可缺少的部分,而且在一个 C 程序当中只能有一个主函数。你要记住:C 程序是由函数构成的,并且总是从主函数开始执行。主函数的名字是 main,返回值的类型一般为 int(整型)。

  4. printf("hello,world"); 被称为语句,语句后必须以分号结束。printf 语句的功能是在标准输出设备(屏幕)上输出括号内字符串的内容:hello,world。

  5. "Hello World!"是一个字符串常量,双引号是字符串的定界符,双引号里边是字符串的内容。

  6. return 0; return 语句的功能是结束主函数的运行,并使主函数返回一个值0。主函数如果正常运行结束,通常要返回0(关于返回0的意义你先不用理解)。

  7. //主函数 名字:main,类型:int(整型),这部分是程序的注释,用来解释程序的功能、流程或者算法。双斜杠开始直到行末的部分都是注释,一个双斜杠只能注释一行文字。还有一种注释方法是块注释,由/*开始,直到*/结束,可以包括多行文本,例如:

/* 这是一个C语言块注释的示例它可以包含多行文本可以写你想写的任何信息*/

多行输出汉字

任务描述:输出一首诗词。


#include<stdio.h>
int main()
{printf("小时候,\n");printf("乡愁是一枚小小的邮票,\n");printf("我在这头,\n");printf("母亲在那头。\n");printf("----选自余光中的《乡愁》");return 0;
}

和第一个程序相比只多了几行输出函数printf,其中里面的\n(反斜杠n)表示换行,你可以试着去掉,这样屏幕上除了超出长度就不会主动帮你换行。

输出图形

任务描述:编程输出V字形的字符图形。


#include<stdio.h>
int main()
{printf("*        *\n");printf("**      **\n");printf("***    ***\n");printf("****  ****\n");printf("**********");return 0;
}

注意到和第二题一样换行符号\n的使用,这样你就可以在屏幕上输出任何你想输出的东西,这种输出一般用于写一个菜单(小游戏里用到),还有一种更方便的使用循环输出后面会学到。

二. 简单输入

1. 输出键盘输入的两个数的和。

任务描述:编程读入2个整数A和B,然后输出它们的和。


#include<stdio.h>
int main()
{int a, b, c;                       //定义三个整型变量a,b,cscanf("%d%d", &a, &b);             //输入两个整数,赋值给a,bc = a + b;                           //将a+b的结果赋给变量cprintf("%d + %d = %d", a, b, c);        //输出运算结果return 0;
}                //初学者每次写scanf函数时记得加取地址符号&,注意格式,先不用弄清意思。

相关知识

1.语句int a,b,c;的功能是定义三个整型变量a、b和c,用于在后面的语句中进行操作,int是整数类型关键字。变量一定要先定义,然后才能使用。

2.scanf是标准输入函数,语句scanf("%d%d",&a,&b);的功能是从标准输入设备(键盘)上读取两个整数分别送给变量a和b。字符串"%d%d"是输入数据的格式,%d的意义是十进制整数,接收数据的变量a和b的前面要加上运算符&。

3.语句c=a+b;的功能是将表达式a+b的值赋给变量c,符号“=”的意义是赋值运算符,功能为将右边表达式的值赋值给左边的变量。

4.语句printf("%d+%d=%d",a,b,c);的功能是输出字符串(双引号里)的内容,其中的普通字符原样输出(例如其中的+和=),其中的%d是十进制整数格式说明符(也称占位符),表示在此处输出一个整数,实际输出的是后边与它对应的表达式的值。输出格式字符串中有几个%d,后边就应该一一对应几个表达式,所有参数之间用逗号分隔。

现在就请你在编程软件中录入以上任务代码,按快捷键F11编译执行。然后执行窗口中光标在闪烁,表示等待你的输入。你可以输入两个整数,例如:520 1314,回车后,程序的输出结果是:520+1314=1834

2. 输出(A+B)*C的值

任务描述:小白弟弟的学校要为每个班级配备价值A元钱的消毒器具和价值B元钱的防疫药品,学校共有C个班级,小白弟弟想知道所有器具和药品都配齐一共需要多少钱。提示:计算公式为:(A+B)*C,C语言中星号为乘号。


#include<stdio.h>
int main()
{int a, b, c, r;scanf("%d%d%d", &a, &b, &r);c = (a + b) * r;printf("%d", c);return 0;
}

注意到C语言中乘号为* 除号为/(不是反斜杠\) 求余(数)符号为%

初学者看懂代码的大概就不错了,先模仿代码,抄也可以,就先敲熟悉吧,什么时候不用看键盘,敲的还快就差不多了,注意每一处细节。以后才是动脑子的时候。

这篇关于绝对零基础的C语言科班作业①初始C语言(输入和输出)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

使用SQL语言查询多个Excel表格的操作方法

《使用SQL语言查询多个Excel表格的操作方法》本文介绍了如何使用SQL语言查询多个Excel表格,通过将所有Excel表格放入一个.xlsx文件中,并使用pandas和pandasql库进行读取和... 目录如何用SQL语言查询多个Excel表格如何使用sql查询excel内容1. 简介2. 实现思路3

Go语言实现将中文转化为拼音功能

《Go语言实现将中文转化为拼音功能》这篇文章主要为大家详细介绍了Go语言中如何实现将中文转化为拼音功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 有这么一个需求:新用户入职 创建一系列账号比较麻烦,打算通过接口传入姓名进行初始化。想把姓名转化成拼音。因为有些账号即需要中文也需要英

Go语言使用Buffer实现高性能处理字节和字符

《Go语言使用Buffer实现高性能处理字节和字符》在Go中,bytes.Buffer是一个非常高效的类型,用于处理字节数据的读写操作,本文将详细介绍一下如何使用Buffer实现高性能处理字节和... 目录1. bytes.Buffer 的基本用法1.1. 创建和初始化 Buffer1.2. 使用 Writ

深入理解C语言的void*

《深入理解C语言的void*》本文主要介绍了C语言的void*,包括它的任意性、编译器对void*的类型检查以及需要显式类型转换的规则,具有一定的参考价值,感兴趣的可以了解一下... 目录一、void* 的类型任意性二、编译器对 void* 的类型检查三、需要显式类型转换占用的字节四、总结一、void* 的

C++中实现调试日志输出

《C++中实现调试日志输出》在C++编程中,调试日志对于定位问题和优化代码至关重要,本文将介绍几种常用的调试日志输出方法,并教你如何在日志中添加时间戳,希望对大家有所帮助... 目录1. 使用 #ifdef _DEBUG 宏2. 加入时间戳:精确到毫秒3.Windows 和 MFC 中的调试日志方法MFC

Python使用Colorama库美化终端输出的操作示例

《Python使用Colorama库美化终端输出的操作示例》在开发命令行工具或调试程序时,我们可能会希望通过颜色来区分重要信息,比如警告、错误、提示等,而Colorama是一个简单易用的Python库... 目录python Colorama 库详解:终端输出美化的神器1. Colorama 是什么?2.

MySQL中my.ini文件的基础配置和优化配置方式

《MySQL中my.ini文件的基础配置和优化配置方式》文章讨论了数据库异步同步的优化思路,包括三个主要方面:幂等性、时序和延迟,作者还分享了MySQL配置文件的优化经验,并鼓励读者提供支持... 目录mysql my.ini文件的配置和优化配置优化思路MySQL配置文件优化总结MySQL my.ini文件

C语言线程池的常见实现方式详解

《C语言线程池的常见实现方式详解》本文介绍了如何使用C语言实现一个基本的线程池,线程池的实现包括工作线程、任务队列、任务调度、线程池的初始化、任务添加、销毁等步骤,感兴趣的朋友跟随小编一起看看吧... 目录1. 线程池的基本结构2. 线程池的实现步骤3. 线程池的核心数据结构4. 线程池的详细实现4.1 初

作业提交过程之HDFSMapReduce

作业提交全过程详解 (1)作业提交 第1步:Client调用job.waitForCompletion方法,向整个集群提交MapReduce作业。 第2步:Client向RM申请一个作业id。 第3步:RM给Client返回该job资源的提交路径和作业id。 第4步:Client提交jar包、切片信息和配置文件到指定的资源提交路径。 第5步:Client提交完资源后,向RM申请运行MrAp

零基础学习Redis(10) -- zset类型命令使用

zset是有序集合,内部除了存储元素外,还会存储一个score,存储在zset中的元素会按照score的大小升序排列,不同元素的score可以重复,score相同的元素会按照元素的字典序排列。 1. zset常用命令 1.1 zadd  zadd key [NX | XX] [GT | LT]   [CH] [INCR] score member [score member ...]