C语言
木木牙
一杯茶,一包烟,一题WA一整天
展开
-
0-6 数组循环右移(O(n)版)
一个数组a中存有n(>0)个整数,将每个整数循环向右移m(≥0)个位置,即将a中的数据由 变换为 最后m个数循环移至最前面的m个位置)。输入格式:输入有两行。第一行给出n和m,分别表示数据的个数和需要右移的个数。其中n的值不超过1000000,m为int型非负整数。第二行给出由空格分隔的n个整数。输出格式:输出只有一行,为右移m个数后的结果,数之间由一个空格分隔,但行尾没有多余空格。输入样例:6 21 2 3 4 5 6输出样例:5 6 1 2 3 4#include<原创 2021-09-22 17:10:33 · 567 阅读 · 0 评论 -
LeetCode中等题:147. 对链表进行插入排序(使用C语言)
输入一个链表,输出该链表中倒数第k个节点。为了符合大多数人的习惯,本题从1开始计数,即链表的尾节点是倒数第1个节点。 例如:一个链表有 6 个节点,从头节点开始,它们的值依次是 1、2、3、4、5、6。这个链表的倒数第 2 个节点是值为 4 的节点。 示例:给定一个链表: 1->2->3->4->5, 和 k = 2.返回链表 4-&g原创 2021-02-01 18:57:38 · 216 阅读 · 0 评论 -
LeetCode简单题:67. 二进制求和(使用C语言)
给你两个二进制字符串,返回它们的和(用二进制表示)。输入为 非空 字符串且只包含数字 1 和 0。示例 1:输入: a = “11”, b = “1”输出: “100”示例 2:输入: a = “1010”, b = “1011”输出: “10101”提示:每个字符串仅由字符 ‘0’ 或 ‘1’ 组成。1 <= a.length, b.length <= 10^4字符串如果不是 “0” ,就都不含前导零。通过次数146,855提交次数269,849来源:力扣(Leet原创 2021-01-31 00:23:20 · 1053 阅读 · 0 评论 -
了解一下 C语言的动态规划(LeetCode简单题分析)
例1: 剑指 Offer 10- I. 斐波那契数列写一个函数,输入 n ,求斐波那契(Fibonacci)数列的第 n 项(即 F(N))。斐波那契数列的定义如下:F(0) = 0, F(1) = 1F(N) = F(N - 1) + F(N - 2), 其中 N > 1.斐波那契数列由 0 和 1 开始,之后的斐波那契数就是由之前的两数相加而得出。答案需要取模 1e9+7(1000000007),如计算初始结果为:1000000008,请返回 1。示例 1:输入:n = 2输出原创 2021-01-30 17:13:44 · 529 阅读 · 0 评论 -
LeetCode简单题: 415. 字符串相加(使用C语言)
给定两个字符串形式的非负整数 num1 和num2 ,计算它们的和。提示:num1 和num2 的长度都小于 5100num1 和num2 都只包含数字 0-9num1 和num2 都不包含任何前导零你不能使用任何內建 BigInteger 库, 也不能直接将输入的字符串转换为整数形式题目来源:力扣(LeetCode)附链接:https://leetcode-cn.com/problems/add-stringschar * addStrings(char * num1, char *原创 2021-01-29 23:20:42 · 380 阅读 · 0 评论 -
学习笔记12:程序设计基础(C)实验(数组)
【描述】输入10个整数,存放在一维数组中,找出值最大和最小的元素,输出最大值、最小值及它们所在的元素下标。【输入】输入10个整数,整数以空格间隔。【输出】第一行输出最大值及其所在的元素下标,最大值和下标以空格间隔。第二行输出最小值及其所在的元素下标,最小值和下标以空格间隔。【输入示例】1 3 5 7 9 6 0 8 2 4【输出示例】9 40 6【来源】《程序设计基础——以C为例》第6章上机实验题1。#include<stdio.h>#include<stdl原创 2020-12-16 22:38:43 · 2603 阅读 · 0 评论 -
学习笔记11:程序设计基础(C)实验(指针)
【描述】定义和调用swap函数,实现两个整数的交换。函数参数是指针。在main函数中输入交换前和输出交换后的值。【输入】输入的第一行是一个正整数n(1≤n≤100),表示测试数据的总数。接下来的n行,每行为测试数据,包含交换前的两个整数。【输出】输出包括n行,每行为测试结果,包含交换后的两个整数。【输入示例】212345 67890213879 7892【输出示例】67890 123457892 213879#include <stdio.h>void swap(原创 2020-12-10 12:14:55 · 1945 阅读 · 0 评论 -
学习笔记10:程序设计基础(C)实验(函数)
【描述】求三个整数的最大值。要求定义和调用函数:int max(intnum1, int num2, int num3),它返回num1、num2和num3中的最大值。【输入】输入三个整数,整数之间以空格间隔。【输出】输出三个整数的最大值。【输入示例】3 4 5【输出示例】5【来源】《程序设计基础——以C为例》第4章上机实验题2。#include <stdio.h>int max(int num1, int num2, int num3);int main(void原创 2020-12-03 17:36:02 · 3820 阅读 · 0 评论 -
团体程序设计天梯赛-练习集 L1-003 个位数统计 C语言
请编写程序统计每种不同的个位数字出现的次数。例如:给定 N=100311,则有 2 个 0,3 个 1,和 1 个 3。输入格式:每个输入包含 1 个测试用例,即一个不超过 1000 位的正整数 N。输出格式:对 N 中每一种不同的个位数字,以 D:M 的格式在一行中输出该位数字 D 及其在 N 中出现的次数 M。要求按 D 的升序输出。#include <stdio.h>#include <stdlib.h>int main(){ int n[10]={原创 2020-12-01 13:44:49 · 419 阅读 · 0 评论 -
团体程序设计天梯赛-练习集 L1-002 打印沙漏 C语言
所谓“沙漏形状”,是指每行输出奇数个符号;各行符号中心对齐;相邻两行符号数差2;符号数先从大到小顺序递减到1,再从小到大顺序递增;首尾符号数相等。给定任意N个符号,不一定能正好组成一个沙漏。要求打印出的沙漏能用掉尽可能多的符号。输入格式:输入在一行给出1个正整数N(≤1000)和一个符号,中间以空格分隔。输出格式:首先打印出由给定符号组成的最大的沙漏形状,最后在一行中输出剩下没用掉的符号数。#include <stdio.h>#include <stdlib.h>in原创 2020-11-30 21:44:28 · 236 阅读 · 0 评论 -
学习笔记9:计算n个正整数对应二进制中1的个数
#include <stdio.h>#include <stdlib.h>int main(){ int n; scanf("%d",&n); int a; int b=1; int c=1; int sum[100]={0}; while(b<=n) { scanf("%d",&a); do { sum[b]+=a%2原创 2020-11-28 18:39:48 · 1890 阅读 · 0 评论 -
学习笔记8:C语言计算
【描述】计算如下式子:1+(1+2)+(1+2+3)+(1+2+3+4)+…的前n项之和。【输入】输入一个正整数n。【输出】输出数列前n项的和。【输入示例】3【输出示例】10【来源】《程序设计基础——以C为例》第3章上机实验题7强化练习。#include <stdio.h>#include <stdlib.h>int main(void){ int n; int sum=0; scanf("%d",&n);原创 2020-11-28 16:31:41 · 935 阅读 · 0 评论 -
学习笔记7:阶乘倒数相加
【描述】计算如下式子:的值,计算到最后一项的值小于0.000001时为止。【输入】没有输入。【输出】输出式子的值,计算到最后一项的值小于0.000001时为止。【来源】《程序设计基础——以C为例》第3章上机实验题8强化练习。#include <stdio.h>#include <stdlib.h>int main(){ double n=1; double sum=1; int m=1; while(1/n>0.000原创 2020-11-27 23:50:28 · 6142 阅读 · 0 评论 -
学习笔记6:控制结构程序设计
【描述】计算如下式子:的值,计算到最后一项的值小于0.0000001时为止。【输入】没有输入。【输出】输出式子的值,计算到最后一项的值小于0.0000001时为止。【提示】这是一个累加问题,因此需要一个存放累加和的变量,其初始值为0;每个子项的绝对值可表示为:,这里要注意正负交替的情况;当某一子项的绝对值小于0.0000001时终止计算。【来源】《程序设计基础——以C为例》第3章上机实验题8。#include<stdio.h>#include<stdlib.h原创 2020-11-26 12:49:50 · 2285 阅读 · 0 评论 -
学习笔记5:循环结构程序设计
【描述】计算如下式子:1+2+3+…+n前n项之和。【输入】输入一个正整数n。【输出】输出数列前n项的和。【输入示例】100【输出示例】5050【来源】《程序设计基础——以C为例》第3章上机实验题6。#include<stdio.h>#include<stdlib.h>int main(void){ int n; int sum=0; scanf("%d",&n); for(int i=1;i<=n;i+原创 2020-11-26 12:43:47 · 2141 阅读 · 0 评论 -
学习笔记4:选择结构程序设计
【描述】输入一个整数,检查它是否能同时被2和3整除,是否被2或3整除,是否被2或3整除且只被其一整除。【输入】输入一个整数。【输出】分行输出该整数是否能同时被2和3整除,是否被2或3整除,是否被2或3整除且只被其一整除。见输出示例。【输入示例】18【输出示例】18 divisible by 2 and 3? 118 divisible by 2 or 3? 118 divisible by 2 or 3, but not both? 0【来源】《程序设计基础——以C为例》第3章上机原创 2020-11-26 12:38:07 · 1454 阅读 · 0 评论 -
学习笔记3:布尔类型及运算
【描述】判断两个整数之间的关系:大于、小于、等于、不等于。【输入】输入整数a和b。【输出】分行输出整数a和b之间的关系(若a大于b,输出1,否则输出0)。【输入示例】5 3【输出示例】1001【提示】程序中不要有任何用户友好性提示等的输出,只能严格按照题目中所规定的输出格式的要求来输出。可以运行自己的程序,用题目中的输入示例来输入,如果得到的输出和输出示例完全相同,一个字符也不多,一个字符也不少,那么这样的格式就是对的了。【来源】《程序设计基础——以C为例》第2章上机实验题2原创 2020-11-26 12:32:22 · 2118 阅读 · 0 评论 -
学习笔记2:数值类型及运算
【描述】将摄氏温度转换为华氏温度。转换公式为:f表示华氏温度,c表示摄氏温度。【输入】输入一个摄氏温度。【输出】输出对应的华氏温度。【输入示例】100【输出示例】212.000000【提示】程序中不要有任何用户友好性提示等的输出,只能严格按照题目中所规定的输出格式的要求来输出。可以运行自己的程序,用题目中的输入示例来输入,如果得到的输出和输出示例完全相同,一个字符也不多,一个字符也不少,那么这样的格式就是对的了。【来源】《程序设计基础——以C为例》第2章上机实验题1。#inc原创 2020-11-26 12:26:17 · 619 阅读 · 0 评论 -
学习笔记1:使用C语言程序集成环境
【描述】在屏幕上显示“Hello World!”并换行。【输入】没有输入。【输出】#include<stdio.h>int main(void){ printf("Hello World!\n"); return 0;}【描述】在屏幕上显示下列图案。**********【输入】没有输入。【输出】**********#include<stdio.h>int main(void){ int i,j; fo原创 2020-11-26 12:21:58 · 839 阅读 · 0 评论