| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 871 人关注过本帖
标题:原来字符串函数还可以这样玩
取消只看楼主 加入收藏
九转星河
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:长长久久
等 级:贵宾
威 望:52
帖 子:5023
专家分:14003
注 册:2016-10-22
结帖率:99.25%
收藏
已结贴  问题点数:20 回复次数:2 
原来字符串函数还可以这样玩
这是一道大一新人的编程作业(目的是训练循环结构的应用),要求打印一个菱形,很经典吧(大神可以绕道)
图片附件: 游客没有浏览图片的权限,请 登录注册

学到后边,其实解决这题的方法有好几种,不光以控制循环变量为主体解决问题……只不过下面这种做法很新奇,拿出来给大家分享一下

用字符串函数打印一个菱形:目的是为了应用几个(说到底是三个而已)常用的字符串函数(还有些这题没有用)的用法和思维拓展——

为了让大家理解深刻(不懂的就去查书)就不写注释了

程序代码如下:

程序代码:
#include<stdio.h>
#include<string.h>
#define N 6
int main()
{
    char a[20]={""};
    char b[2]={" "};
    char *p=a;
    while (strlen(strcat(p,b))<N-1);
    p[strlen(p)]='*';
    while (strchr(p,' '))
    {
        printf("%s\n",p);
        *(strchr(p,'*')-1)='*';
        *strchr(p,'\0')='*';
    }
    while (strchr(p,'*'))
    {
        printf("%s\n",p);
        *strchr(p,'*')=' ';
        *(strchr(p,'\0')-1)='\0';
    }
}


这程序没有问题,只是觉得新奇拿出来给大家展示一下,顺便看看有什么分可以送。


搜索更多相关主题的帖子: 字符串 经典 拓展 
2016-11-04 15:58
九转星河
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:长长久久
等 级:贵宾
威 望:52
帖 子:5023
专家分:14003
注 册:2016-10-22
收藏
得分:0 
回复 3楼 吹水佬
原来字符串和输出小数的原理一样
学习了

[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2016-11-04 18:21
九转星河
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:长长久久
等 级:贵宾
威 望:52
帖 子:5023
专家分:14003
注 册:2016-10-22
收藏
得分:0 
回复 5楼 炎天
很好啊,该题做法越来越多样灵活了,这种算法也是比较优的,我只是抛砖引玉罢了

[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2016-11-04 22:55
快速回复:原来字符串函数还可以这样玩
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.022669 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved