原来字符串函数还可以这样玩
这是一道大一新人的编程作业(目的是训练循环结构的应用),要求打印一个菱形,很经典吧(大神可以绕道)学到后边,其实解决这题的方法有好几种,不光以控制循环变量为主体解决问题……只不过下面这种做法很新奇,拿出来给大家分享一下
用字符串函数打印一个菱形:目的是为了应用几个(说到底是三个而已)常用的字符串函数(还有些这题没有用)的用法和思维拓展——
为了让大家理解深刻(不懂的就去查书)就不写注释了
程序代码如下:
程序代码:
#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'; } }
这程序没有问题,只是觉得新奇拿出来给大家展示一下,顺便看看有什么分可以送。