- 博客(20)
- 收藏
- 关注
原创 链表的一些基本操作
#include<stdio.h>#include<stdlib.h>struct Node{ int data; struct Node *next;};struct Node *create() //头插法,逆序构成链表{ struct Node *head,*p; head=NULL; int x; while(scanf("%d",&x)&&x!=-1) { p=(struct Node*)malloc(size.
2021-12-25 11:30:42
502
原创 函数指针
排序实例#include<stdio.h>void mysort(int a[],int n,int (*p)(int,int)){ int i,j,t; for(i=0;i<n-1;i++) { for(j=0;j<n-1-i;j++) { if(!(*p)(a[j],a[j+1])) { t=a[j]; a[j]=a[j+1]; a[j+1]=t; } } } return ;}int cmp1(int
2021-12-21 12:39:11
117
原创 Dirichlet‘s Theorem on Arithmetic Progressions
DescriptionIf a and d are relatively prime positive integers, the arithmetic sequence beginning with a and increasing by d, i.e., a, a + d, a + 2d, a + 3d, a + 4d, ..., contains infinitely many prime numbers. This fact is known as Dirichlet's Theorem on.
2021-12-21 09:13:22
271
原创 Sum of Consecutive Prime Numbers
DescriptionSome positive integers can be represented by a sum of one or more consecutive prime numbers. How many such representations does a given positive integer have? For example, the integer 53 has two representations 5 + 7 + 11 + 13 + 17 and 53. Th.
2021-12-21 08:39:34
110
原创 Goldbach‘s Conjecture
DescriptionIn 1742, Christian Goldbach, a German amateur mathematician, sent a letter to Leonhard Euler in which he made the following conjecture:Every even number greater than 4 can bewritten as the sum of two odd prime numbers.For example:8 = .
2021-12-21 08:02:30
146
原创 各位平方和数
把一个整数的每个数位都平方后求和,又得到一个整数,我们称这个整数为位平方和。对新得到的整数仍然可以继续这一运算过程。比如,给定整数为4,则一系列的运算结果为:16,37,58,89,....。已知一个整数x,求第n步的运算结果。#include<stdio.h>#include<math.h>int digit(int m){ int temp=m; int i,s=0; while(temp>0) { s+..
2021-12-19 20:10:16
394
原创 排列组合。
10个人中选3个人参加活动,一共有120种选法。那么从m个人中选n个人参加活动,一共有多少种选法?#include<stdio.h>int zh(int m,int n){ if(m<n) return 0; if(n==0) return 1; return zh(m-1,n-1)+zh(m-1,n);}int main(){ int m,n; scanf("%d %d",&m,&n); ..
2021-12-19 20:01:12
79
原创 冒泡排序。
用冒泡排序方法将输入的n个整数按从小到大的顺序排列输出#include<stdio.h>int main(){ int n; int temp,i,j; scanf("%d",&n); int a[n]; for(i=0;i<n;i++) { scanf("%d",&a[i]); } for(i=0;i<=n-1;i++) { for(j=0;..
2021-12-19 19:51:29
308
原创 输出1000以内能被3整除且个位数为6的所有整数
#include<stdio.h>int main(){ int i,num; for(i=0;i<=100;i++) { num=i*10+6; if(num%3==0) { printf("%d\n",num); } } return 0;}
2021-12-19 19:46:53
2538
原创 猴子吃桃问题
猴子摘下若干个桃子,第一天吃了桃子的一半多一个,以后每天吃了前一天剩下的一半多一个,到第十天吃以前发现只剩下一个桃子,问猴子共摘了几个桃子?#include<stdio.h>int main(){ int x=1,s; int d=9; while(d-->0) { s=2*(x+1); x=s; } printf("%d",x); return 0;}...
2021-12-19 19:44:30
228
原创 关于字符串的空格
先从清除空格开始:编写一个程序,删去其中的空格,例如输出“I am a student”,则输出“Iamastudent”#include<stdio.h>#include<string.h>int main(){ char s1[250],s2[250]; gets(s1); char *p=s1,*q=s2; while(*p!='\0') { if(*p!=' ') { *q++=.
2021-12-19 15:44:47
1071
原创 数组循环右移
问题描述: 设有m个元素的数组,先输入正整数n,表示数组中每个元素循环右移n个单位,求输出后的数组基本初步思路:一个一个移动,循环n次每次要使用temp储存a[m-1]#include<stdio.h>int main(){ int m,n; scanf("%d %d",&m,&n); n%=m; int a[m]; int i; for(i=0;i<m;i++) { ...
2021-12-19 08:58:43
962
原创 关于水仙花数及拓展
一个三位整数(100~999),若各位数的立方和等于该数自身,则称其为“水仙花数”(如:153=13+53+33),找出所有的这种数。现在对问题进行拓展,有n位的水仙花数,现在要求给定输入n,求出n位的所有水仙花数#include<stdio.h>#include<math.h>int main(){ int n; scanf("%d",&n); int b=pow(10,n)-1; //表示范围 int a=pow(10,n-1)..
2021-12-18 10:31:12
440
原创 14:求10000以内n的阶乘
总时间限制:5000ms内存限制:655360kB描述求10000以内n的阶乘。输入只有一行输入,整数n(0<=n<=10000)。输出一行,即n!的值。样例输入100样例输出933262154439441526816992388562667004907159682643816214685929638952175999932299156089414639761565182862536979208272237582511852109...
2021-12-17 20:15:02
268
原创 10:大整数加法
总时间限制:1000ms内存限制:65536kB描述输入两个字符串,验证其中一个串是否为另一个串的子串。输入输入两个字符串, 每个字符串占一行,长度不超过200且不含空格。输出若第一个串s1是第二个串s2的子串,则输出(s1) is substring of (s2)否则,若第二个串s2是第一个串s1的子串,输出(s2) is substring of (s1)否则,输出 No substring。样例输入abcdddncabca样例输出..
2021-12-17 19:43:14
817
原创 06:校门外的树
总时间限制:1000ms内存限制:65536kB描述某校大门外长度为L的马路上有一排树,每两棵相邻的树之间的间隔都是1米。我们可以把马路看成一个数轴,马路的一端在数轴0的位置,另一端在L的位置;数轴上的每个整数点,即0,1,2,……,L,都种有一棵树。由于马路上有一些区域要用来建地铁。这些区域用它们在数轴上的起始点和终止点表示。已知任一区域的起始点和终止点的坐标都是整数,区域之间可能有重合的部分。现在要把这些区域中的树(包括区域端点处的两棵树)移走。你的任务是计算将这些树都移..
2021-12-17 19:27:23
427
原创 23:过滤多余的空格
总时间限制:1000ms内存限制:65536kB描述一个句子中也许有多个连续空格,过滤掉多余的空格,只留下一个空格。输入一行,一个字符串(长度不超过200),句子的头和尾都没有空格。输出过滤之后的句子。样例输入Hello world.This is c language.样例输出Hello world.This is c language.#include<stdio.h>#include<string..
2021-12-17 19:18:09
920
原创 18:验证子串
18:验证子串查看 提交 统计 提问总时间限制:1000ms内存限制:65536kB描述输入两个字符串,验证其中一个串是否为另一个串的子串。输入输入两个字符串, 每个字符串占一行,长度不超过200且不含空格。输出若第一个串s1是第二个串s2的子串,则输出(s1) is substring of (s2)否则,若第二个串s2是第一个串s1的子串,输出(s2) is substring of (s1)否则,输出 No substring。样例输入..
2021-12-17 19:08:45
736
原创 25:最长最短单词
总时间限制:1000ms内存限制:65536kB描述输入1行句子(不多于200个单词,每个单词长度不超过100),只包含字母、空格和逗号。单词由至少一个连续的字母构成,空格和逗号都是单词间的间隔。试输出第1个最长的单词和第1个最短单词。输入一行句子。输出两行输出:第1行,第一个最长的单词。第2行,第一个最短的单词。样例输入I am studying Programming language C in Peking University样例输出..
2021-12-17 18:51:27
723
原创 21.单词替换
描述输入一个字符串,以回车结束(字符串长度<=100)。该字符串由若干个单词组成,单词之间用一个空格隔开,所有单词区分大小写。现需要将其中的某个单词替换成另一个单词,并输出替换之后的字符串。输入输入包括3行,第1行是包含多个单词的字符串 s;第2行是待替换的单词a(长度 <= 100);第3行是a将被替换的单词b(长度 <= 100).s, a, b 最前面和最后面都没有空格.输出输出只有 1 行,将s中所有单词a替换成b之后的字符串。样例输入You
2021-12-16 21:41:15
391
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人