![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
《C语言入门》
初学C语言中一些题目和小工程的实现
ILLENIUM..
安徽大学学生
展开
-
《C语言入门》最小公倍数与最大公约数之和问题求解
目录 1.问题描述 2.算法求解及代码1.问题描述描述小乐乐最近在课上学习了如何求两个正整数的最大公约数与最小公倍数,但是他竟然不会求两个正整数的最大公约数与最小公倍数之和,请你帮助他解决这个问题。输入描述:每组输入包含两个正整数n和m。(1 ≤ n ≤ 109,1 ≤ m ≤ 109)输出描述:对于每组输入,输出一个正整数,为n和m的最大公约数与最小公倍数之和。题目代码链接小乐乐与欧几里得_牛客题霸_牛客网 (nowc...原创 2021-12-04 20:41:08 · 770 阅读 · 11 评论 -
《C语言入门》倒置字符串之单词倒置
目录1.问题描述2.问题求解及代码实现1.问题描述将一句话的单词进行倒置,标点不倒置。比如 I like beijing. 经过函数后变为:beijing. like I题目牛客网链接倒置字符串__牛客网 (nowcoder.com)2.问题求解及代码实现将一个字符串逆序我想应该难不倒大家,但本题要求为将单词进行倒置,而单词顺序不倒置,这时候传统的逆序方法就满足不了我们的需求,这里我们想到下面的算法解决这个问题。以 I love China. 为例,我们先以空格为间隔,将每原创 2021-12-02 21:30:10 · 980 阅读 · 4 评论 -
《C语言入门》扫雷小游戏C语言实现
目录1.原理简介2.分布目标及代码实现3.总结1.原理简介首先我们需要一个空的雷盘,在其中随机埋入十枚雷,当我们排这颗雷时,若此位置为雷,则游戏失败,若不是雷,则会出现周围八个方格中雷的个数,我们使用数组实现这一目标。 2.分布目标及代码实现首先我们需要打印一个菜单,并且接受用户的输入数据,判断是否进行游戏,如三子棋一样,具体代码如下:void test(){ int input = 0; srand((unsigned int)time(N...原创 2021-11-21 21:36:24 · 5405 阅读 · 13 评论 -
《C语言入门》一些C语言题目的讲解
1.编写程序:输入一个整数,将该数转变为二进制表示并存放在数组中输出。#include<stdio.h>#include<math.h>int main(){ int n = 0; scanf("%d", &n); int arr[32] = { 0 }; int i = 0; int j = 0; long long x = 0; while (n) { for (i = 31; i >= 0; i--) { x = pow(原创 2021-12-07 22:26:26 · 784 阅读 · 4 评论 -
《C语言入门》简单字符串排序打印问题求解
目录 1.问题描述 2.问题求解及代码实现1.问题描述从键盘输入5个字符串,进行排序,然后按照大小先后顺序打印出来。我们注意到,这里的5个字符串是再键盘上输入的,在比较大小后在顺序输入,这里是比较大小而不是比较字符串长度,我们小心这一点后在下文介绍如何实现这一目标。2.问题求解和代码实现首先我们要完成的目标是从键盘上输入5个字符串并存储,这一点我想难不倒大家,我就不在此赘述,代码如下:char s[5][100] = { 0 }; char tmp...原创 2021-11-30 19:03:31 · 455 阅读 · 5 评论 -
《C语言入门》数组简单奇数在前,偶数在后问题解决
目录1.题目描述2.问题解决1.问题描述输入一个整数数组,实现一个函数,来调整该数组中数字的顺序使得数组中所有的奇数位于数组的前半部分,所有偶数位于数组的后半部分。2.问题解决我们拿到这样一个问题,想要用函数解决它的话,我们需要将数组作为参数来调用函数,我们使用传址调用的方式,这里不再赘述。下面介绍如何编写这个函数,首先题目描述我们将奇数排在前半部分,偶数排在后半部分,并没有要求按照大小排序,我们想到这样一个办法,我们在遍历数组的过程中再创建一个初始为0的变量n,当循环到的数组元素为原创 2021-11-26 22:08:51 · 1623 阅读 · 9 评论 -
《C语言入门》简单水仙花问题求解
目录1.问题2.问题求解及代码实现1.问题描述求出0~100000之间的所有“水仙花数”并输出。“水仙花数”是指一个n位数,其各位数字的n次方之和确好等于该数本身,如 : 153=1 ^ 3+5 ^ 3+3 ^ 3,则153是一个“水仙花数”。2.问题求解及代码实现首先严格意义上的水仙花数应该是一个三位数,这里的“水仙花数”范围为0~100000,这就给我们加大了难度,我们想要求解各位数的n次方之和的话,我们需要首先求解这个数是个几位数,我们使用下面的代码简单实现:while原创 2021-11-25 20:45:14 · 1898 阅读 · 12 评论 -
《C语言入门》简单有序数组二分查找代码实现
想必学过编程的朋友或多或少都听说过二分查找,本文将给C语言入门的朋友具体介绍一下二分查找的原理和代码实现。1.简单原理在一个有序数组中(如图),若想查找一个具体数值,多数人可能会想到历遍数组的方法,这样不仅大大降低了代码的效率,也让我们的代码变的很low。这时候就需要使用二分查找来提高代码效率,减少查找次数。int arr[] = { 1,2,3,4,5,6,7,8,9,10,11,12,13 };首先我们利用(数组大小)/(数组中一个元素)的方法求出数组长度的大小,我们利用size...原创 2021-11-22 21:34:19 · 800 阅读 · 13 评论 -
《C语言入门》简单序列去重排序问题
目录1.问题描述2.问题求解及代码实现1.问题描述老师给了小乐乐一个正整数序列,要求小乐乐把这个序列去重后按从小到大排序。但是老师给出的序列太长了,小乐乐没办法耐心的去重并排序,请你帮助他。输入描述:第一行包含一个正整数n,表示老师给出的序列有n个数。接下来有n行,每行一个正整数k,为序列中每一个元素的值。(1 ≤ n ≤ 10^5,1 ≤ k ≤ n)输出描述:输出一行,为去重排序后的序列,每个数后面有一个空格。题目链接小乐乐与序列_牛客题霸_牛客网2.问题求解原创 2021-12-01 20:09:27 · 302 阅读 · 6 评论 -
《C语言入门》你真的会打印Hello World吗,花式打印Hello World
#include<stdio.h>int main(){ printf("Hello World!"); return 0;}想必上面这一段代码是无数程序员们学习C语言后打的第一段代码,今天就给大家介绍一下如何花式打印Hello World首先我们创建两个长度相同数组,如图所示:char arr1[] = "Hello World!"; char arr2[] = "############";基本原理:我们先在屏幕上打印第二个数组,在将第一个数组的值分次替换...原创 2021-11-23 22:13:12 · 1673 阅读 · 8 评论 -
《C语言入门》猜数字小游戏代码实现
目录1.基本原理2.分块目标及代码实现1.基本原理我们让电脑生成一个1~100范围内的随机数,我们输入一个值,电脑给出反馈如:猜大了或猜小了。以便我们可以缩小猜数字的区间,来猜到最后的答案。2.分块目标及代码实现和本人其他博客中的小游戏一样,我们先打印一个菜单,再获取玩家输入的值并给出反馈,若输入1则进行游戏,若为0则退出游戏,我们这里不再赘述,代码如下:int main(){ srand((unsigned int)time(NULL)); int input = 0;原创 2021-11-24 23:56:39 · 4189 阅读 · 10 评论 -
《C语言入门》简单回文序列问题求解
目录1.问题描述2.问题求解及代码实现1.问题描述编写程序输入一个字符串,检查是否是回文(回文是指正反序文字相同,如,LeveL),若是则输出“Yes”,否则输出“No”。2.问题求解及代码实现我们创建left和right,以下标移动来实现一个字符串的前后字符比较。left初始值wei0,我们使用strlen函数求出字符串长度,注意给right第一次赋值时我们要赋值为字符串长度-1,下面是完整代码。#include<stdio.h>#include<str.原创 2021-12-06 22:23:01 · 699 阅读 · 6 评论