C/C++编程训练
1.程序实现目标:输入1~20的数字n,求n以内数据的阶乘之和。
void GetCount(int Num ,float pOutput[])
{
}
void main()
{
float pNumber[2] = {0};
Number = 20;
GetCount(Number ,pNumber);
}
2.程序实现目标:把一段字符串中的第一个空格和最后一个空格去掉。
实例:源字串:" asd bsdf df ",目的字串:"asd bsdf df"
3.程序实现目标:输入n个字符串,将各个字符串排序后的结果按顺序输出。
实例:n = 4,
输入:"abhhhhddffg"
"sd23354675"
"adssfdhsafs"
"sdabc"
输出:"sdabc"
"sd23354675"
"adssfdhsafs"
"abhhhhddffg"
4.一个数组里面存储了一些数字,其中有0元素和非0元素,要求经过处理,数组前面存储的是非0元素,后面是0元素,且非0元素保持原有顺序。然后输出。
实例:11111000003333333
处理结果:11111333333300000
5.输入一个数,将这个数的奇数位重新组合成一个数,其中高位数依然处于高位,低位数处于低位。
实例: input:345389
output:439
int Getnum(int input, int output)
{
}
void main()
{
}
6.输入一个字符串,将字符串中大写转成小写,过滤掉不是字母的字符
实例:
输入: ABCabc124#
输出: abcabc
void translate(char *p)
{
}
void main()
{
}
7.输入一个字符串,此字符串只包含小写字母,统计每个字母出现的次数,并输出。提示:(可以用数组存)
实例:
输入:aaaaccczzz
输出:a 4
c 3
z 3
x.变长参数的实现原理
通过对参数的传递方式进行调查,分析变长参数(类似:printf)函数的实现方式。
学习:C标准库提供的变长参数实现方法,一个类型(va_list)和三个宏(va_start、va_arg、va_end)