分析: 三种类型, A.2月比较特殊,平年的2月只有28天,而闰年的2月有 29 天: B.4.6.9.11月: C.其他1.3.5.7.8.10.12月. 代码: /*输入一个年份和月份,输出该月的天数*/ #include<stdio.h> int main() { int year, month; printf("输入年和月(用空格分隔):\n"); scanf_s("%d %d", &year, &month); switch (…
public class Demo4 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Demo4 demo = new Demo4(); demo.show(1900,3); } //定义一个工具方法:判断平年还是闰年 public boolean isLeapYear(int year){ if(year % 400 == 0 || (year…
public class year {    public static void main(String arg[]){        Scanner a=new Scanner(System.in);        System.out.print("请输入一个年份:");       int b=a.nextInt();        System.out.print("请输入一个月份:");       int f=a.nextInt();        i…
第 13 题(链表):题目:输入一个单向链表,输出该链表中倒数第 k 个结点.链表的倒数第 0 个结点为链表的尾指针.链表结点定义如下: struct ListNode {int m_nKey;ListNode* m_pNext;}; 我的思路:先翻转链表,再从翻转后的链表的头向尾数k-1个,返回,再次翻转链表. 代码如下:注意这个思路非常差.差的原因是:如果只是用最原始的方法,先遍历一遍计数,再遍历一遍找倒数第k个,需要遍历两遍.但我的思路,翻转两次链表就要遍历两遍.还要在走k-1步找倒数第k…
用了半小时才写出来啊, 其实这种思路应用范围很广,利用有序性这个特点,比如本体只要是有序就行,例如两个集合是有序的,求交集,有序数组的查找,有序数组的归并,有序有了优化的可能. 输入一个正数 n,输出所有和为 n 连续正数序列         例如输入 15,由于 1+2+3+4+5=4+5+6=7+8=15,所以输出 3 个连续序列 1-5.4-6 和 7-8.         分析:我们用两个数small和big分别表示序列的最小值和最大值.首先把small初始化为 1,big初始化为 2.…
输入一个单向链表,输出该链表中倒数第K个结点,具体实现如下: #include <iostream> using namespace std; struct LinkNode { public: LinkNode(int value = 0) : nValue(value){ pNext = NULL; } ~LinkNode() { pNext = NULL; } //private: friend class LinkList; int nValue; LinkNode *pNext; }…
输入一个正数n,输出所有和为n连续正数序列.例如输入15,由于1+2+3+4+5=4+5+6=7+8=15,所以输出3个连续序列1-5.4-6和7-8. #define N 15 void findSubquence(int n) { int end = (n + 1) / 2; int small = 1; int big = 2; int sum = small + big; //N/2<=small<big,small>N/2,否则,small+big>N while (sm…
python练习:编写一个程序,要求用户输入一个整数,然后输出两个整数root和pwr,满足0<pwr<6,并且root**pwr等于用户输入的整数.如果不存在这样一对整数,则输入一条消息进行说明.(第一部分为使用穷举法求立方根) 重难点:input()函数返回值为字符串类型,需要转换为整型.while循环判断条件ans**3<abs(x),是关键.满足0<pwr<6,就需要使用for循环进行遍历.最后记得每一次for遍历之后,需要给root重新置0. print("…
package bianchengti; /* * 输入一个整数n,输出契波那契数列的第n项 * 斐波那契数列:1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89... */ public class Fibonacci { public static int FibValue(int n) { if(n<=0) { return 0; }else if(n==1){ return 1; }else if(n==2) { return 1; }else { return F…
package leetcode;import edu.princeton.cs.algs4.Cycle;import java.util.ArrayList;import java.util.Arrays;import java.util.LinkedList;import java.util.List;import java.util.function.Consumer;public class FirstDay { public static void main(String[] args…
             R语言两种方式求指定日期所在月的天数 days_monthday<-function(date){ m<-format(date,format="%m") days31<-c("01","03","05","07","08","10","12") days30<-c("04",&…
#include<stdio.h>int main(int arge,char *argv[]){ char ch; int alp=0,num=0,oth=0,len,alp_start,num_start,oth_start,i; while((ch=getchar())!=-1) { if(ch>='0'&&ch<='9') num++; else if((ch>='a'&&ch<='z')||(ch>='A'&&am…
将数字转化为对应的字符,可以通过n%10+48来实现,也可以通过n%10+'0'来实现,因为‘0’的ASCII码的数值就是48 因为字符串‘0’ 对应的10进制 整数是48 字符串'9'对应的10进制整数是57 所以 整数0-->0+48=48='0' 2.该算法中建立了一个数组buffer用来存放字符串,通过递归调用让数字前往后依次转化为字符,然后通过指针p的自增,将字符串依次存放到数组中,每次p自增之后都赋值‘\0’,当还有新的字符需要转化的时候,就会有新的值覆盖‘\0’,当没有新的数字转化…
1.for循环实现 #include <stdio.h> #include <time.h> clock_t start, stop; double duration; void printfN(); int main(){ int N; printf("Pleade enter a number: "); scanf("%d", &N); start = clock(); printfN(N); stop = clock(); du…
#include<stdio.h>int factorial (int n); int main(){ int n; scanf("%d",&n); printf("%d \n",factorial(n)); return 0;} int factorial(int n){ int i,fact=1; for(i=1;i<=n;i++) fact = fact*i; return fact; }…
public static void main(String[] args) { Scanner sc = new Scanner(System.in); while (true) { System.out.println("please input a positive integer: "); int n = sc.nextInt(); getSubInteger(n); System.out.println("========================="…
Java实现给定任意年份和月份,输出该月有多少天 项目开发过程中,细节性的地方需要判定某年某月多少天,写了个下面的小工具解决了此问题. package weiming.lmapp.utils; public class GetDays { /** * 闰年的条件(满足之一即可):(1)能被4整除,但不能被100整除;(2)能被400整除 * @param year * @param month * @return 返回天数 */ public static int getDays(int yea…
第一题 (Map)利用Map,完成下面的功能: 从命令行读入一个字符串,表示一个年份,输出该年的世界杯冠军是哪支球队.如果该 年没有举办世界杯,则输出:没有举办世界杯. 附:世界杯冠军以及对应的夺冠年份,请参考本章附录. 附录 历届世界杯冠军 届数 举办年份 举办地点 冠军 第一届 1930年 乌拉圭 乌拉圭 第二届 1934年 意大利 意大利 第三届 1938年 法国 意大利 第四届 1950年 巴西 乌拉圭 第五届 1954年 瑞士 西德 第六届 1958年 瑞典 巴西 第七届 1962年…
编写程序输入一个5x5的矩阵,将最大元素与中心元素交换,并按行列对齐输出. 题目描述 编写程序输入一个5x5的矩阵,将最大元素与中心元素交换,并按行列对齐输出. 输入描述 编写程序输入一个5x5的矩阵 输出描述 将最大元素与中心元素交换,并按行列对齐输出. 样例输入 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 样例输出 1 2 3 4 5 6 7 8 9 10 11 12 25 14 15 16 17 18…
题目描述 输入一个int型整数,按照从右向左的阅读顺序,返回一个不含重复数字的新的整数. 输入描述: 输入一个int型整数 输出描述: 按照从右向左的阅读顺序,返回一个不含重复数字的新的整数 输入例子: 9876673         import java.util.Scanner; public class Main {     public static void main(String[] args) {         @SuppressWarnings("resource"…
编写一个C语言函数,要求输入一个url,输出该url是首页.目录页或者其他url 首页.目录页或者其他url 如下形式叫做首页: militia.info/ www.apcnc.com.cn/ http://www.cyjzs.comwww.greena888.com/ www.800cool.net/ http://hgh-products.my-age.net/ 如下形式叫做目录页: thursdaythree.net/greenhouses--gas-global-green-house-…
import java.util.*; public class Demo { public static void main(String[] args){ int days = 0; Scanner sc = new Scanner(System.in); System.out.print("输入年份: "); int year = sc.nextInt(); System.out.print("输入月份: "); int month = sc.nextInt(…
//求旋转数组的最小数字,输入一个递增排序的数组的一个旋转,输出其最小元素 #include <stdio.h> #include <string.h> int find_min(int arr[],int len) { int i = 0; for (i = 1; i < len; i++) { if (arr[i] < arr[0]) return arr[i]; } return arr[0]; } int main() { int i; int arr1[] =…
//旋转数组的最小数字 //题目:把一个数组最開始的若干个元素搬到数组的末尾.我们称之为数组的旋转. //输入一个递增排序的数组的一个旋转.输出旋转数组中的最小元素. //比如:数组{3.4,5,1,2}为{1,2.3.4.5}的一个旋转,最小元素是1. #include <stdio.h> #include <assert.h> int min_equ(int *src, int left, int right) { int i = 0; int ret = src[left];…
题目补充: 在存放源程序的文件夹中建立一个子文件夹 myPackage.例如,在“D:\java”文件夹之中创建一个与包同名的子文件夹 myPackage(D:\java\myPackage).在 myPackage 包中创建一个YMD类,该类具有计算今年的年份.可以输出一个带有年月日的字符串的功能.设计程序SY31.java,给定某人姓名和出生日期,计算该人年龄,并输出该人姓名.年龄.出生日期.程序使用YMD的方法来计算年龄. 主要考包的运用 用到java.util.Calendar;求时间日…
动手有益. 输入一个表达式,没有括号,数字小于0-9之间,输出计算结果,所有的中间结果化为整形.例如:  输入:3+8×2/9-2  输出:2 /** * input a calculate string, calcuate the value * the number between 0-9 * round the middle vlaue to int * */ public static void main(String[] args) { //8*6+2-6/3*6+2 String c…
编写一个函数,要求输入年月日时分秒,输出该年月日时分秒的下一秒. 如输入 2004 年 12 月 31 日 23 时 59 分 59 秒,则输出 2005年 1 月 1 日 0 时 0 分 0 秒. void ResetTheTime(int *year,int *month,int *date,int *hour,int *minute,int*second) { int dayOfMonth[12]={31,28,31,30,31,30,31,31,30,31,30,31}; if( *ye…
 题目 解决代码及点评 /* 编一程序,打入月份号,输出该月的英文月名. 例如,输入"3",则输出"March",要求用指针数组处理. */ #include <stdio.h> #include <stdlib.h> void main() { int i; char *a[12]={"January","February","March","April",…
17.从键盘上输入一个正整数n,请按照以下五行杨辉三角形的显示方式, 输出杨辉三角形的前n行.请采用循环控制语句来实现. (三角形腰上的数为1,其他位置的数为其上一行相邻两个数之和.) 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 package com.bao; import java.util.Scanner; public class Yanghui { public static void main(String[] args) { Scanne…
import java.util.Scanner; /** * @author:(LiberHome) * @date:Created in 2019/3/6 22:06 * @description: * @version:$ */ /*请输入一个大于7的整数,输出小于k并且至少满足下面2个条件中的1个条件的所有正整数 * 1.它是7的倍数 * 2.组成该正整数的数字钟有7*/ public class K7 { public static void main(String[] args) {…