![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c语言
c语言问题
秃头的可达鸭
这个作者很懒,什么都没留下…
展开
-
约瑟夫环问题
约瑟夫问题是个有名的问题:N个人围成一圈,从第一个开始报数,第M个将被杀掉,最后剩下一个,其余人都将被杀掉。例如N=6,M=5,被杀掉的顺序是:5,4,6,2,3。在这里可以用循环链表解决,创建一个存储为N的循环链表,每次删除第M个元素并打印出来代码如下#define _CRT_SECURE_NO_WARNINGS#include<stdio.h>#include<stdlib.h>typedef struct LNode { int data; struct LN原创 2020-10-27 22:58:02 · 296 阅读 · 0 评论 -
c语言实现循环链表
循环链表的创建其实并不复杂,只需要在创建单链表时定义一个节点(本文章中为s)参与循环找到尾节点然后让其指向头节点的下一个(因为第一个节点时没有值的),在之后的遍历中则需要使用do while循环因为跳跃了第一个节点在我们遍历时新的第一个节点是有值的,之后的插入删除查找操作,则是在原文的基础上删除了循环中超越元素值的条件,举例:现有四个元素:1 2 3 4,删除第7个元素后:1 2 4.#define _CRT_SECURE_NO_WARNINGS#include<stdio.h>#incl原创 2020-10-27 22:52:11 · 896 阅读 · 0 评论 -
简单的c语言入门题目4
微博上有个“点赞”功能,你可以为你喜欢的博文点个赞表示支持。每篇博文都有一些刻画其特性的标签,而你点赞的博文的类型,也间接刻画了你的特性。本题就要求你写个程序,通过统计一个人点赞的纪录,分析这个人的特性。输入格式:输入在第一行给出一个正整数N(<=1000),是该用户点赞的博文数量。随后N行,每行给出一篇被其点赞的博文的特性描述,格式为“K F1 … FK”,其中 1<=K<=10,Fi(i=1, …, K)是特性标签的编号,我们将所有特性标签从1到1000编号。数字间以空格分隔。输原创 2020-10-26 13:24:38 · 203 阅读 · 0 评论 -
学生成绩录入管理系统
一个简单的录入系统,录入学生的姓名,学号,和三科考试成绩,主要考察结构体,指针数组,函数构造与if的应用#include<stdio.h>#include<stdlib.h>#include<string.h>//定义数据struct Student{int id;char name[16];int score[3];};Student data[100];//存储所有数据int count = 0;//总个数int input(Student*原创 2020-10-26 13:21:43 · 3176 阅读 · 0 评论 -
简单的c语言入门题目3
用if判断未来一段时间的周末节假日会有几天,每个周末会有两天,但是当数到周六时只能加一天,为此我们需要一个if条件来判断#include<stdio.h>int main(){int m, n;while (scanf("%d", &m) != EOF){n = m / 7 * 2;if (m % 7 == 6){n++;}printf("%d\n", n);}return 0;}...原创 2020-10-26 13:19:00 · 100 阅读 · 0 评论 -
简单的c语言入门题目2
在坐标轴x轴上有一机器人在原点,第一次输入一个数m表示接下来要操作的次数,当输入LEFT x时,表示机器人向左移动x,当输入RIGHT时同理,当输入SAME AS n时表述重复第n步动作(m>n)最后则输出机器人当前所在坐标轴位置#include< iostream>#include< cstring>#include< string>musing namespace std;int main(){int T, n, a[110], shu;st原创 2020-10-26 13:16:24 · 102 阅读 · 0 评论 -
简单的c语言入门题目1
输入一个整数m来确定正方形的边长,然后输入一个字符类型的n确定组成正方形的字符,左后打印时使用for循环输出#include<stdio.h>#include<stdlib.h>int main(){int m;char n;scanf("%d %c", &m, &n);for (int i = 0; i < m; i++){for (int i = 0; i < m; i++){printf("%c", n);}printf("原创 2020-10-26 13:10:06 · 168 阅读 · 0 评论 -
单链表栈的数值转换
首先我们需要一个单链表来存储我们的数值,当输入的十进制数被转换为二进制数时,我们可以对每个数位上的数字进行入栈的操作,然后在出栈时再逐个打印组合成二进制数#include<stdlib.h>#include<stdio.h>typedef struct LNode {int data;struct LNode *next;}LNode, *LinkList;typedef struct Lstack{LinkList base;LinkList top;}Lsta原创 2020-10-26 13:08:05 · 289 阅读 · 0 评论 -
c语言实现顺序表
顺序表在应用是还需要考虑多一部的存储问题,需要定义足够大的空间#include<stdio.h>#include<stdlib.h>#include<Windows.h>#define MaxSize 100typedef struct SqList{int data[MaxSize];int length;}SqList;void InitList(SqList &L) {L.length = 0;}SqList CreatList(Sq原创 2020-10-26 13:03:05 · 91 阅读 · 0 评论 -
c语言实现单链表的插入删除和查找
#include<stdlib.h>#include<stdio.h>typedef struct LNode{int data;struct LNode *next;}LNode,*LinkList;LinkList CreateList_L(LinkList L) { //创建链表int n;scanf("%d", &n);L->next = NULL;LNode * p;for (int i = 0; i < n; i++){p =原创 2020-10-26 13:00:44 · 1226 阅读 · 3 评论 -
java创建54张扑克牌
我们知道一副扑克牌有54张,因为大小王的特殊性我们可以分为52张和两张,最终以54张的数组来输出并使用 String[] deck=new String[54]; String[] suits={"黑桃","梅花","红桃","方片"}; String[] num={"A","2","3","4","5","6","7","8","9","10","J","Q","K"}; for(int i=0;i<52;i++) { if(i<13) { for(int j=0;j.原创 2020-10-26 12:54:46 · 1360 阅读 · 0 评论