//题目52:用递归打印以下图形
//*
//*.*.
//*..*..*..
//*...*...*...*...
//*....*....*....*....*.... #include<stdio.h>
#include<stdlib.h> //分析:熟练使用递归,递归比较难以理解,可以先写出for循环,再写递归
//递归的一般形式
//void 函数名(参数列表){
// if (终止条件)
// {
// return;
// }
// else{
// //执行的操作
// //调用本身
// }
//} int m = , n = ;
void run111(int num){
if (num==)
{
return;
}
else{
printf("*");
for (int k = ; k < n - ; k++)
{
printf(".");
}
run111(num - );
//
}
} void run10(int num){
if (num == )
{
return;
}
else{
m = n = num;
run111(num);
printf("\n");
run10(num + );
}
} void main(){
run10();
/*int m = 0,n=0;
for (int i = 1; i < 10; i++)
{
m=n = i;
while (m){
printf("*");
for (int k = 0; k < n - 1; k++)
{
printf(".");
}
m--;
}
printf("\n");
}*/ system("pause");
}

//题目53:有一个字符串开头或结尾含有n个空格(”   abcdefgdddd    ”),欲去掉前后空格,返回一个新字符串。
//请自己定义一个接口(函数),并实现功能 #include<stdio.h>
#include<stdlib.h> int trimSpace(char *pin, char *pout){
//定义返回数据
int ERRO_MSG = ;
//检测输入数据
if (pin == NULL||pout==NULL)
{
ERRO_MSG = 1;
printf("pin == NULL||pout==NULL err0 msg:%d\n", ERRO_MSG);
return ERRO_MSG;
}
//遍历输入字符串
while (*pin != '\0'){
//ascll码中 32是空格
//判断字符是否是空格
if (*pin!=)
{
//如果不是空格压入字符数组pout中
*pout++ = *pin;
}
pin++;
}
//字符串是以'\0'结尾的
*pout = '\0';
return ERRO_MSG;
} void main(){
char *p = " abcdefgd ddd";
//定义新字符串数组
char p1[];
//调用函数
trimSpace(p, p1);
printf("%s\n", p1);
system("pause");
}

//题目54:有一个字符串”1a2b3d4z”,;
//要求写一个函数实现如下功能,
//功能1:把偶数位字符挑选出来,组成一个字符串1。valude;20分
//功能2:把奇数位字符挑选出来,组成一个字符串2,valude 20
//功能3:把字符串1和字符串2,通过函数参数,传送给main,并打印。
//功能4:主函数能测试通过。 #include<stdio.h>
#include<stdlib.h> //分析:需要输入2个字符串,加上原始字符串,需要三个参数
int getStr1Str2(char *pin,char *pout1,char *pout2){
int ERRO_MSG = ;
int index = ;
//判断传入数据是否规范
if (pin == NULL || pout1 == NULL || pout2==NULL)
{
ERRO_MSG = ;
printf("pin == NULL || pout1 == NULL || pout2==NULL err0 msg:%d\n", ERRO_MSG);
return ERRO_MSG;
}
do{
if (index%==)
{
//奇数
*pout1++ = *pin;
}
else{
//偶数
*pout2++ = *pin;
}
index++;
} while (*pin++ != '\0');
*pout1 = *pout2 = '\0';
return ERRO_MSG;
} void main(){
char *p = "1a2b3d4z";
char p1[], p2[];
//p1奇数 p2偶数
getStr1Str2(p, p1, p2);
printf("奇数字符串是%s,偶数字符串是%s\n",p1,p2);
system("pause");
}

C语言 百炼成钢18的更多相关文章

  1. C语言 百炼成钢19

    /* 题目55: 有一个字符串符合以下特征(”abcdef,acccd,eeee,aaaa,e3eeeee,sssss,";),要求写一个函数(接口),输出以下结果 1) 以逗号分割字符串, ...

  2. C语言 百炼成钢10

    //题目28:有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁.问第4个人岁数,他说比第 //3个人大2岁.问第三个人,又说比第2人大两岁.问第2个人,说比第一个人大两岁.最后 //问第一个人 ...

  3. C语言 百炼成钢6

    //题目16:输入两个正整数m和n,求其最大公约数和最小公倍数. #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include< ...

  4. C程序设计语言练习题1-8

    练习1-8 编写一个统计空格.制表符与换行符个数的程序. 代码如下: #include <stdio.h> // 包含标准库的信息. int main() // 定义名为main的函数,它 ...

  5. Java入门 - 语言基础 - 18.正则表达式

    原文地址:http://www.work100.net/training/java-regular-expression.html 更多教程:光束云 - 免费课程 正则表达式 序号 文内章节 视频 1 ...

  6. C语言 百炼成钢3

    //题目7:用*号输出空心菱形图案 #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> # ...

  7. C语言 百炼成钢2

    //题目4:输入某年某月某日,判断这一天是这一年的第几天? #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<st ...

  8. C语言 百炼成钢1

    //题目:有1.2.3.4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> ...

  9. C语言 百炼成钢17

    //题目49:老师将糖果分成若干份,让学生按任意次序领取,第一个领取的,得到1份加上剩余糖果的1/10, //第二个领取的,得到2份加上剩余糖果的1/10,第三个领取的,得到3份加上剩余糖果的1/10 ...

随机推荐

  1. Activity与Fragment的生命周期

    今天看到一张图,详细描述了Activity和Fragment的生命周期,好资源共享咯!

  2. CoreAnimation(CA)

    开发者真会玩,原来我看到CA都懵了.啥是CA?原来就是Core Animation.哎,读书少啊,被虐成

  3. Android 系统版本&API对照表

    最新Android系统版本与API等级对应关系表 数据来源:http://d.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLe ...

  4. 【读书笔记】iOS-GCD-API

    一,Dispatch Queue dispatch_async(queue, ^{ /* *想执行的任务 */ }); 其中queue分为两种: 1,Serial Dispatch Queue 等待现 ...

  5. JAVA基础学习day16--集合三-Map、HashMap,TreeMap与常用API

    一.Map简述 1.1.简述 public interface Map<K,V> 类型参数: K - 此映射所维护的键的类型 key V - 映射值的类型 value 该集合提供键--值的 ...

  6. IOS 瀑布流UICollectionView实现

    IOS 瀑布流UICollectionView实现 在实现瀑布流之前先来看看瀑布流的雏形(此方法的雏形 UICollectionView) 对于UICollectionView我们有几点注意事项 它和 ...

  7. Runtime 方法替换 和 动态添加实例方法 结合使用

    前言: 方法替换,可以替换任意外部类的方法,而动态添加方法只能实现在被添加类创建的对象里,但是将方法替换和动态添加方法结合使用,可以实现,对任意外部类动态添加需要的方法,这个方法可以是类方法也可以是实 ...

  8. oracel数据泵的使用

    1.查看目录,用下面任意一条查询语句即可. select * from dba_directories;         select * from ALL_DIRECTORIES; 2.一般安装好数 ...

  9. Effective Java 13 Minimize the accessibility of classes and members

    Information hiding is important for many reasons, most of which stem from the fact that it decouples ...

  10. SQLServer中登录名的用户名配置

    其实这个问题困扰我很久了. 今夏(13.7)实习的时候第一次接触sqlserver 当时是统一安排,按部就班的做就行. 那时候链接数据库用的id是sa. 后来自己做小程序时候举得不管什么都用sa登录好 ...