- 博客(10)
- 收藏
- 关注
原创 计算对称日
计算x年到y年之间的对称日思路:先判断每年是不是闰年,然后计算每年每月每天,再将年月日三个数连在一起,进行判断是不是对称日,再输出这一天,在循环中设置变量来求和。代码:#include<stdio.h>int main(){ int x,y,year=0,month=0,day=0; int m=0,n=0,j=0,a=0,b=0,c=0,t=0; scanf("%d%d",&x,&y); for(year=x;year<=y;year++){
2021-12-06 18:27:17 3361
原创 二分法计算
典型算法:算法:当数据量很大适宜采用该方法。采用二分法查找时,数据需是排好序的。基本思想:假设数据是按升序排序的,对于给定值n,从序列的中间位置mid开始比较,如果当前位置arr[mid]值等于n,则查找成功;若n小于当前位置值arr[mid],则在数列的前半段中查找,arr[left,mid-1];若n大于当前位置值arr[mid],则在数列的后半段中继续查找arr[left+1,right],代码思路以函数形式进行,在一个数组中寻找一个数是第几个,二分法进行每次取一半进行比较。1.
2021-11-23 20:46:13 599
原创 F - 约瑟夫环(简单版)
传说约瑟夫当年活下来就是靠快速计算这个问题。nn个人围成一圈,编号依次为1,2,3…n。从第一个人开始报数,数到m的人出列,再由下一个人重新从1开始报数,数到m的人再出圈。以此类推,直到所有的人都出列。请输出依次出圈人的编号。输入格式两个整数n,m 1≤n,m≤100。输出格式n个用空格分隔的整数,表示出圈人的编号。输入样例6 4输出样例4 2 1 3 6 5、思路:通过while语句循环,再用内循环for语句,进行报数,条件语句满足时输出,然...
2021-11-20 23:18:34 493
原创 简单排序题
蒜术师给了你一个10个整数的序列,要求对其重新排序。排序要求: 奇数在前,偶数在后; 奇数按从大到小排序; 偶数按从小到大排序。 输入格式输入一行,包含10个整数,彼此以一个空格分开,每个整数的范围是大于等于0,小于等于100。输出格式按照要求排序后输出一行,包含排序后的10个整数,数与数之间以一个空格分开。样例输入4 7 3 13 11 12 0 47 34 98样例输出47 13 11 7 3 0 4 12 34 98思路...
2021-11-18 18:26:04 227
原创 百钱买百鸡问题
百钱买百鸡问题:公鸡五文钱一只,母鸡三文钱一只,小鸡三只一文钱,用100100文钱买100100只鸡,公鸡、母鸡、小鸡各买多少只?本程序要求解的问题是:给定一个正整数nn,用nn文钱买nn只鸡,问公鸡、母鸡、小鸡各买多少只?输入格式输入一个正整数nn。输出格式如果有解,依次输出公鸡、母鸡、小鸡的个数(用正整数表示)。如果无解,输出。"No Answer."数据范围1 \le n \le 2001≤n≤200。样例输入100样例输出...
2021-11-17 19:32:58 644
原创 二进制换十进制
把一个二进制数转化为十进制数。输入格式第一行一个正整数n\ (1\le n\le 30)n(1≤n≤30),表示二进制数的长度。第二行一个二进制数。输出格式输出一个整数,表示对应的十进制数。样例输入510101样例输出21代码#include<stdio.h>int main(){ char ch; int a=0,n; scanf("%d\n",&n); while(ch=getchar(),ch!='\n') ..
2021-11-16 18:50:42 600
原创 计算今年第几天
请你计算出xx年yy月zz日是xx年的第几天。请注意闰年对答案的影响。输入格式一行三个整数,xx,yy和zz。(1583\le x\le 21001583≤x≤2100)。数据保证输入合法。输出格式一个整数,表示是第几天。输入样例2016 3 1输出样例61输入样例1900 3 1输出样例60代码...
2021-11-15 19:22:46 410
原创 奇数递增简单排序
蒜头君给了一个长度为N(不大于500)的正整数序列(正整数的值不超过N),请将其中的所有奇数取出,并按升序输出。输入格式共2行:第1行为N;第2行为N个正整数,其间用空格间隔。输出格式增序输出的奇数序列,数据之间以逗号间隔。数据保证至少有一个奇数。输入样例101 3 2 6 5 4 9 8 7 10输出样例1,3,5,7,9代码#include<stdio.h>int main(){ int n; sc...
2021-11-14 19:13:14 385
原创 插入排序(N个数排序)
给出若干个数,将数字存储在数组中,然后使用插入排序,按照升序排列输出数字。输入一个整数n表示有n个数,接着输入这n个数。按照升序输出这n个数。#include<stdio.h>int main() { int k, x, N,i; scanf("%d", &N); int a[100]; for ( i = 0; i < N; i++) { scanf("%d", &a[i]); } int temp, ...
2021-10-23 18:45:02 2222
原创 找大小(N数比大小)
输入整数N(0<=N<=1000),紧接着在下一行连续输入N个数。随后输出这一组数的最小数和最大数。(输入的这N数,可以有小数也可以有负数;输出之间用换行隔开)#include<stdio.h>int main(void){int n;scanf("%d",&n);if(n==1){ printf("0\n0");}else if(n>=2){double a[n];int i;for(i=0;i<n;i++){ sca...
2021-10-23 18:41:43 942
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人