原文:
各位蓝点17级的伙伴们,这是蓝点第一次任务,也是你们的科技月月评的题目,蓝点始终保持着不刷人的原则,希望你们在这个过程中可以得到成长,锻炼自己编写代码和独立思考的能力,题目不要求全部都完成,但希望你们尽力去思考。如果你想变得优秀,那么就一定要比别人多付出时间和精力,过程中有什么问题都可以在群里讨论或者私聊学长学姐。希望大家可以每天进步一点点,加油!
要求:源代码打包,每题的思路,运行结果截屏(word文档)。
提交日期:科技月月评结束前一天。
科技月月评题目
大一组题目(第1,2,3,4题为必做题,第5,6题为选做题)
1.一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如6=1+2+3.编程找出1000以内的所有完数。并输出。
2.设计一个函数Compare,功能为逐个比较String A,String B两个字符串中的值,将相同位置的值中较大或者相同的值放入String C当中。例如String A为acDf1A,String B为bg5A1,则String C为bgDf1A
输入案例: acDf1A bg5A1
输出案例: bgDf1A
3. 有N只蚂蚁以每秒1cm的速度在长为Lcm的竿子上爬行。当蚂蚁爬到竿子的端点时就会掉落。由于竿子太细,两只蚂蚁相遇时,它们不能交错通过,只能各自反向爬回去,对于每只蚂蚁,我们只知道它距离竿子左端Xi,但不知道它当前的朝向。请计算所有蚂蚁都从竿子上掉落所需的最短时间和最长时间。
(输入:
多组测试数据
每组数据包含两行,每一行包含2个整数N、L
接下来一行有N个整数Xi,Xi表示第i只蚂蚁距离竿子左端点的距离)
(输出:
每组数据输出两行,每两组数据之间输出一个换行)
4.马上就要考四级了,请你编写一个程序 要求实现的功能为统计一篇文章内不同单词的个数。
输入:有多组数据,每组一行,每组就是一篇小文章。每篇小文章都是由小写字母和空格组成,没有标点符号,遇到#时表示输入结束。
输出:每组只输出一个整数。其单独成行,该整数代表一篇文章里不同单词的总数。
输入案例:you are my friend
输出案例:4
输入案例:good good study day day up
输出案例:4
输入:#(表示结束)
5.(1):实现多项式的整数计算器
如输入:10-(20-5)*2/5
输出:2
6. 问题描述
如图有若干线连接若干点,现需要将一物体经过两次传递后到达目的地,该物体可能在任意一点产生,求一共有多少种不同的传递路径?
(其中该物体产生地点和目标地地点可以相同,但经过的中间节点必须不同。)
1 -> 2 -> 3 -> 1 是允许的
1 -> 2 -> 1 -> 2 或者 1 -> 2 -> 3 -> 2 都是非法的。
输入格式
输入数据的第一行为两个整数N M,分别表示节点个数和连接线路的条数(1<=N<=10000; 0<=M<=100000)。
接下去有M行,每行为两个整数 u 和 v,表示节点u 和 v 联通(1<=u,v<=N , u!=v)。
输入数据保证任意两点最多只有一条边连接,并且没有自己连自己的边,即不存在重边和自环。
输出格式
输出一个整数,表示满足要求的路径条数。
样例输入1
3 3
1 2
2 3
1 3
样例输出1
6
样例输入2
4 4
1 2
2 3ti
3 1
1 4
样et输出2
10
解题:
第一题
解题思路:判断一个数是否为完数,从2到1000对需要判断的数进行整除,如果可以则对因子进行求和,若所加的和为该数则判断为是完数并输出因子。
编写程序:
#include<stdio.h>
#include<stdlib.h>
int main()
{
int n=0,i=0,sum; //n为要判断的数,i为数的因子,sum为因子的和
for (n=2;n<1000;n++)
{
sum=0;
for(i=1;i<n;i++) //判断n能否被i整除,如果可以则是因子,对因子进行求和
{
if(n%i==0)
{
sum=sum+i;
}
}
if (sum==n)
{
printf("%d 它的因子有:",n);
for (i=1;i<n;i++)
{
if (n%i==0)
{
printf("%d ",i); //输出完数的因子
}
}
printf("\n");
}
}
system("pause");
return 0;
}
I am very cai (▰˘︹˘▰)