0、计算100以内的奇数和。
1、打印所有“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如,153是一个水仙花数,因为153=1的立方 + 5的立方+ 3的立方。
2、有一整数序列
1,1,2,3, 5, 8, 13,21......
求出这个数列的前20项之和。
3、有一分数序列
2/1, 3/2, 5/3, 8/5, 13/8, 21/13,......
求出这个数列的前20项之和
4、写一个程序,将输入的字符串按反序输出,例如给定输入为abcde,输出结果为edcba。
命令行输入 s.exe abcde
结果 edcba
5、写一个程序,对10个任意数字进行由大到小的排序。
6、输入一行字符串,找出其中大写字母、小写字母、数字以及其他字符的个数。
7、接上题,将找出的结果按照大写字母、小写字母、数字以及其他字符的次序排列成一个新的字符串。
Ah0,BCg34.
ABChg034,.
8、写一个函数实现将任意位数(<=10)数字字符串(0-9)转化为相应的数字,如:将 “123”转化成 123。不能使用atoi函数
int str2num(char *s);
9、写一个函数实现将任意一个正整数(long)转化为一个相应的字符串,如:将 123转化成 “123”。
char *num2str(int num,char *str);
10、写一个求字符串的长度的函数。(不准使用库函数strlen),在main函数中输入字符串,并输出其长度。
int mystrlen(char *s);
11、写一个函数,实现两个字符串拼接的功能。(不准使用库函数strcat),在main函数中输入2个字符串。 hello world ==== helloworld
char *mycat(char *s1,char *s2);
12、写一个函数实现strcpy/strncpy的功能。
12-1、写一个函数实现strcmp/strncmp的功能。
13、写一个函数实现将任意字符串按照ASC值从小到大顺序排列。
函数原型为:
char *sort(char *s);
14、写一个函数将任意给定的两个字符串取交集
函数原型为:
char *jiaoji(char *s,char *s1,char *s2);
若s1: abcddebcdf ==》去重后的s1 abcdef
s2: bcdfgb
则返回的是 s: bcdf
15、写一个函数将任意给定的两个字符串取并集
函数原型为:
char *bingji(char *s,char *s1,char *s2);
若s1: abcdde
s2: bcdfg
则返回的是 abcdefg
16、定义学生信息如下:
struct stu
{
int stuId;
char name[5];
int score;
};
1)、手工输入增加5条信息,显示出来;
2)、列出分数大于80的学生信息
3)、按照分数高低排序并显示
17、将13题第3步的结果写入文件
18、写一个程序,找出一个文件中数字字符的个数。(文件自己给定)
19、int main(int argc,char **argv);
./m 111 254 求和 argv[2]
20、写一个程序,求一个任意给定文件的行数。 '\n'
21、给定一个含有n个字符的文件,在这n个字符的中间处插入一个给定的字符串。 如: 源文件里面的内容是 12345,插入abc,结果:123abc45;
如: 源文件里面的内容是 123456,插入abc,结果:123abc456;
1,鸡兔同笼
已知鸡和兔的总数量为n,总腿数为m。输入n和m,依次输出鸡和兔的数目,如果无解,则输出“No answer”(不要引号)。
2,判断正负
输入一个整数,请你不用任何关系运算符来判断出该数字是正数还是负数。
3,求差值
输入一个整数数组,将它们连接起来排成一个数,找出能排出的所有数字中最大,最小的两个数,
输出这两个数的差值。例如输入数组{1, 2},则输出9。
eg:
输入: 1 2 3
==> 321 - 123
输出: 198
4,寻找最大数
请在整数 n 中删除m个数字, 使得余下的数字按原次序组成的新数最大,
比如当n=92081346718538,m=10时,则新的最大数是9888
5,输入一个正整数n,打印出杨辉三角的前n行
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
。。。
6,输入一段字符串,把该字符串中的数字字符,以整数的形式提取出来。
eg:
输入: 123sdf+546fgs%32f&76bfh/*
输出: 123 546 32 76
7,回文字符串
所谓回文字符串,就是一个字符串,从左到右读和从右到左读是完全一样的,比如"aba"。
当然,我们给你的问题不会再简单到判断一个字符串是不是回文字符串。
现在要求你,给你一个字符串,可在任意位置添加字符,请求出最少再添加几个字符,可以使这个字符串成为回文字符串。
输入: 一个字符串
输出:所需添加的最少字符数
eg:
输入:Ab3bd
==> dAb3bAd
输出:2
8,占连坐
输入三个正整数 m n k,分别表示有m行n列的座位,k表示要占的连坐是几连坐
然后把座位的被占状态赋值;1表示被占,0表示没有被占,
请输出能占到连坐的方式有多少种。
eg:
m:3 n:5 k:3
1 1 0 0 0
0 0 0 0 1
1 0 1 1 1
输出:能占到连坐的方式有 3 种
9,分解连续数
输入一个数字,求出该数字能分解成连续数的方式有多少中
eg:
输入: 15
==> 15 = 1+2+3+4+5
15 = 4+5+6
15 = 7+8
输出: 3
10,点数
在一个二维的坐标系内有三个点,这三个点的x,y坐标都是整数,把这三个点构成一个三角形,
请你求出这个三角形内部和边界上的x,y坐标都为整数的点一共有多少个。
11,蛇形填数
在n*n方陈里填入1,2,...,n*n,要求填成蛇形。例如n=4时方陈为:
10 11 12 1
9 16 13 2
8 15 14 3
7 6 5 4
输入:
直接输入方陈的维数,即n的值。(n<=100)
输出:
输出结果是蛇形方阵。
eg:
输入: 3
输出:
7 8 1
6 9 2
5 4 3
12,整数解
小明是一名初中生,她现在很苦恼,因为老师布置了一个让她苦恼的作业,你能不能帮助她呢?题目信息如下。
已知二元一次方程 a*x+b*y=n, 判断这个二元一次方程有没有整数解 (x,y为未知数)
其中a,b,n都为整数且不等于零,同时满足0<a,b,n<2^16-1。
输入a,b,n的值
输出:yes / no
13,击鼓传花
输入三个正整数 m n k
m:总人数 n:间隔数 k:接花的目标的编号
把m个人围成一圈从1开始编号(1,2,3...),花从编号为1的人开始传递,花一传出去,该传花者就淘汰掉,
并击一次鼓,花要传递到下一个间隔数满足n的人手中(淘汰的人不算间隔数)。若该者的编号不为k,则该者再把花传递出去,
同时该传花者被淘汰掉,击鼓一次。重复此动作。直到花传递到编号为k的人手中。
输出击鼓的次数(注:若 k=1,则击鼓0次)
14,大数据乘法:
我们知道一般的整型的数据类型能表示的数字范围是有限的,如int的范围为 -2^15 ~ 2^15-1
现在请你帮忙写一个程序能求出两个非常大的数(20位)的积
eg:
输入: 6541635461316341663116 816579619846163168461164
输出: 841321613216461303486133543065433232654
提示:用字符数组实现