热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

C语言案例教程详解:开发笔记分享

篇首语:本文由编程笔记#小编为大家整理,主要介绍了C语言案例教程详解相关的知识,希望对你有一定的参考价值。

篇首语:本文由编程笔记#小编为大家整理,主要介绍了C语言案例教程详解相关的知识,希望对你有一定的参考价值。






******小小目录******
一、大小写转换
二、从尾到头
三、冰雹猜想
四、水仙花数
五、百钱百鸡
六、九九乘法表

一、大小写转换
分析:在ASCII码表中,26个英文字母的ASCII码值相差32(小写字母比对应的大写字母大32)。当从键盘输入大写字母时,在输出时加上32,并且以%C格式输出,就能转换为小写。

代码实现:

#include
int main()
{
char c;
printf("输入一个字母:");
scanf("%c",&c);
if(c>&#61;&#39;A&#39;&&c<&#61;&#39;Z&#39;)
{
c&#61;c&#43;32;
printf("%c\\n",c);
}
else if(c>&#61;&#39;a&#39;&&c<&#61;&#39;z&#39;)
{
c&#61;c-32;
printf("%c\\n",c);
}
return 0;
}

运行截图&#xff1a;
在这里插入图片描述
二、从尾到头
描述&#xff1a;从键盘输入一个三位的整数num,将其个、十、百位倒序生成一个数字输出&#xff0c;例如&#xff1a;若输入123&#xff0c;则输出321。
分析&#xff1a;个位&#xff1a;对10取模&#xff1b;
十位&#xff1a;除以10之后对10取模
百位&#xff1a;除以100

代码实现&#xff1a;

#include
int main()
{
int num;
int a, b, c;
printf("请输入一个整数&#xff1a;\\n");
scanf_s("%d", &num);
a &#61; num % 10;
b &#61; num/10 % 10;
c &#61; num /100;
printf("%d\\n", 100 * a &#43; 10 * b &#43; c);
return 0;
}

运行截图&#xff1a;在这里插入图片描述

三、冰雹猜想

描述&#xff1a;以一个正整数n为例&#xff0c;如果n为偶数&#xff0c;就将它变为n/2&#xff1b;如果除后变为奇数则乘以3再加1&#xff0c;将得到的新自然数按照此规则计算&#xff0c;若干次后得到的结果必然为1。
分析&#xff1a;
&#xff08;1&#xff09;先定义一个整型变量n来存数字&#xff0c;然后再定义一个整型变量count作为计数器&#xff0c;输出数字时显示在数字前作为序号&#xff1b;
&#xff08;2&#xff09;从键盘接收一个自然数后直接进入do…while循环&#xff1b;
&#xff08;3&#xff09;根据奇偶性不同&#xff0c;执行不同操作&#xff0c;当n&#61;1时退出循环&#xff1b;
&#xff08;4&#xff09;当n为奇数时&#xff0c;把n乘以3再加1&#xff1b;当n为偶数时&#xff0c;把n除以2。

代码实现&#xff1a;

#include
int main()
{
int n;
int count &#61; 1;
printf("please input a number:");
scanf_s("%d", &n);
do {
if (n % 2)
{
n &#61; n * 3 &#43; 1;
printf("(%d):%d\\n", count&#43;&#43;, n);
}
else
{
n /&#61; 2;
printf("(%d):%d\\n", count&#43;&#43;, n);
}
} while (n !&#61; 1);
return 0;
}

运行截图&#xff1a;
在这里插入图片描述
四、水仙花数
描述&#xff1a;水仙花数就是一个三位数&#xff0c;它每一位数字的3次幂之和都等于它本身。
分析&#xff1a;
&#xff08;1&#xff09;确定取值范围是100到999&#xff0c;控制取值范围用for循环结构语句&#xff1b;
&#xff08;2&#xff09;将个位、十位、百位拆分&#xff0c;求各位数字的立方和&#xff1b;
&#xff08;3&#xff09;求出各位数字的立方和&#xff0c;判断它与数本身是否相等&#xff0c;若相等&#xff0c;则此数是水仙花数&#xff0c;否则不是水仙花数。
代码实现&#xff1a;

#include
int main()
{
int num;
int a, b, c;
printf("水仙花数&#xff1a;\\n");
for (num &#61; 100; num <&#61; 999; num&#43;&#43;)
{
a &#61; num % 10;
b &#61; num / 10 % 10;
c &#61; num / 100;
if (num &#61;&#61; (a * a * a &#43; b * b * b &#43; c * c * c))
printf("%d ", num);
}
printf("\\n");
return 0;
}

运行截图&#xff1a;在这里插入图片描述
五、百钱百鸡
描述&#xff1a;一只公鸡值五钱&#xff0c;一只母鸡值三钱&#xff0c;三只小鸡值一钱&#xff0c;现在要用百钱买百鸡&#xff0c;请问公鸡、母鸡、小鸡各多少只&#xff1f;
分析&#xff1a;
&#xff08;1&#xff09;先定义三个整型变量&#xff0c;分别用来存储公鸡&#xff0c;母鸡和小鸡&#xff1b;
&#xff08;2&#xff09;第一层for循环控制公鸡的数量&#xff0c;第二层for循环控制母鸡的数量&#xff0c;第三层for循环控制小鸡的数量&#xff1b;
&#xff08;3&#xff09;根据三层循环筛选合理方案&#xff0c;即满足“cock&#43;hen&#43;chicken&#61;100"和”5cock&#43;3hen&#43;chicken/3&#61;100"的方案。
代码实现&#xff1a;

#include
int main()
{
int cock, hen, chicken;
for(cock&#61;0;cock<&#61;20;cock&#43;&#43;)
for(hen&#61;0;hen<&#61;30;hen&#43;&#43;)
for (chicken &#61; 0; chicken <&#61; 100; chicken&#43;&#43;)
{
if ((5 * cock &#43; 3 * hen &#43; chicken / 3.0 &#61;&#61; 100) && (cock &#43; hen &#43; chicken &#61;&#61; 100))
printf("cock&#61;%2d,hen&#61;%2d,chicken&#61;%2d\\n", cock, hen, chicken);
}
return 0;
}

运行截图&#xff1a;在这里插入图片描述
六、九九乘法表
分析&#xff1a;
&#xff08;1&#xff09;定义整型变量i来控制函数的输出&#xff0c;定义整型变量j控制等式数量的输出&#xff1b;
&#xff08;2&#xff09;第一个for循环用来控制乘法表中每行的第一个因子和表的行数&#xff0c;很明显i取值范围为1到9&#xff1b;
&#xff08;3&#xff09;第二个for循环中变量j取值范围的确定建立在第一个for循环的基础上&#xff0c;它的最大取值是第一个for循环中变量的值&#xff0c;&#xff08;j的取值范围根据行数变化&#xff0c;运行到第几行&#xff0c;j的最大值就是几&#xff1b;
&#xff08;4&#xff09;为了控制格式&#xff0c;将乘法表分行&#xff0c;需要在每行的末尾输出一个换行符。

代码实现&#xff1a;

#include
int main()
{
int i, j;
for (i &#61; 1; i <&#61; 9; i&#43;&#43;)
{
for (j &#61; 1; j <&#61; i; j&#43;&#43;)
printf("%d*%d&#61;%d ", i, j, i * j);
printf("\\n");
}
return 0;
}

运行截图&#xff1a;在这里插入图片描述






推荐阅读
  • 本文详细介绍了C语言中的基本数据类型,包括整型、浮点型、字符型及其各自的子类型,并探讨了这些类型在不同编译环境下的表现。 ... [详细]
  • MapReduce原理是怎么剖析的
    这期内容当中小编将会给大家带来有关MapReduce原理是怎么剖析的,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。1 ... [详细]
  • 实用正则表达式有哪些
    小编给大家分享一下实用正则表达式有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下 ... [详细]
  • 1、字符型常量字符型常量指单个字符,是用一对单引号及其所括起来的字符表示。例如:‘A’、‘a’、‘0’、’$‘等都是字符型常量。C语言的字符使用的就是 ... [详细]
  • 题意题目大意很简单,很容易找出对应字母的ASCII码值的关系,但是有一点需要注意,请看代码:读字符串必须要用getline ... [详细]
  • 题目描述了一个病毒检测问题,要求使用AC自动机算法统计目标文本中多个模式串的出现次数。 ... [详细]
  • Linux环境下C语言实现定时向文件写入当前时间
    本文介绍如何在Linux系统中使用C语言编程,实现在每秒钟向指定文件中写入当前时间戳。通过此示例,读者可以了解基本的文件操作、时间处理以及循环控制。 ... [详细]
  • 本文详细介绍了Java中实现异步调用的多种方式,包括线程创建、Future接口、CompletableFuture类以及Spring框架的@Async注解。通过代码示例和深入解析,帮助读者理解并掌握这些技术。 ... [详细]
  • KMP算法是一种高效的字符串模式匹配算法,能够在不进行回溯的情况下完成匹配,其时间复杂度为O(m+n),其中m和n分别为文本串和模式串的长度。本文将详细介绍KMP算法的工作原理,并提供C语言实现。 ... [详细]
  • 大数据基础:JavaSE_day06 ... [详细]
  • 本文详细介绍了Java中的`ByteArrayInputStream`和`ByteArrayOutputStream`,包括它们的基本概念、工作原理及具体应用实例。`ByteArrayInputStream`用于处理内存中的字节数组,而`ByteArrayOutputStream`则用于将数据写入内存中的字节数组。 ... [详细]
  • Python基础教程:struct模块与格式化字符详解
    本文详细介绍了Python中struct模块的功能,以及如何利用格式化字符实现Python与C语言结构体之间的数据转换。文章通过具体实例讲解了struct模块的主要方法及其应用场景。 ... [详细]
  • 本题要求实现一个函数,用于检查给定的字符串是否为回文。回文是指正向和反向读取都相同的字符串。例如,“XYZYX”和“xyzzyx”都是回文。 ... [详细]
  • (详细)快速幂算法及效率分析 大数幂乘 快速幂取余(附测试时间)
    快速幂问题:求a^b%m,即a的b次方对m取余的结果。只要学过C语言的循环就可以写出最简单的朴素版本:朴素版typedeflong ... [详细]
  • 本文探讨了C++中如何正确使用+运算符来处理字符串和数字的拼接问题,分析了为何某些操作有效而另一些则会引发编译错误。 ... [详细]
author-avatar
澳洲开奥拓
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有