您的位置:首页 > 职场人生

初级程序员的业务逻辑简单吗?

2017-07-05 01:44 190 查看

初级程序员的业务逻辑真的很简单吗

初级程序员,我不知道做些什么,但是总是有人告诉我天天写if - else,for循环让人烦闷,总想写点高级点的东西。可是令我汗颜的是,他们连最基本的打星号都打不好。我微信好友有一个做了两年程序员的同学,总是给我说公司很无聊。有一次我问他一个打星星的东西,他居然给我说百度不就行了。我终于明白他为什么工作不开心了,老被炒鱿鱼。连基本的if - else 循环之类的东西都写不好。谁还敢要你做更高级的东西。很喜欢老师说的话:饭要一口一口吃,习要一点一点的学。话不多说,上代码。

1.打印一个星号:

printf("*");


2.打印一行星号:

int i;
for(i = 0; i < 8; i++) {
printf("*");
}


3.打印一个矩形,不难阿.

int i, j;
int n = 5;
for(i = 0; i < n; i++) {
for(j = 0; j < n; j++) {
printf("*");
}
}


4.打印一个像左边倾斜的平行四边形,也简单阿:

int i, j;
for(i = 0; i < 5; i++) {
for(j = 0; j < i; j++) {
printf(" ");
}
for(j = 0; j < 5; j++) {
printf("*");
}
printf("\n");
}

//运行结果:
*****
*****
*****
*****
*****


5.打印一个向右倾斜的平行四边形。

int i, j;
for(i = 0; i < 5; i++) {
for(j = 0; j < 5 - 1 - i; j++) {
printf(" ");
}
for(j = 0; j < 5; j++) {
printf("*");
}
printf("\n");
}
//也不难嘛
*****
*****
*****
*****
*****


6.这种直角三角形。

int i = 0;
int j;
for(; i < 5; i++) {
for(j = 0; j < i + 1; j++) {
printf("*");
}
printf("\n");
}
//这种直角三角形。

*
**
***
****
*****


7.第二种直角三角形。

int i, j;
for(i = 0; i < 5; i++) {
for(j = i; j < 5; j++){
printf(" ");
}
for(j = 0; j < i + 1; j++) {
printf("*");
}
printf("\n");
}
//这样啊:

*
**
***
****
*****


8.第三种直角三角形:

int i, j;
for(i = 0; i < 5; i++) {
for(j = 0; j < 5 - i;j++) {
printf("*");
}
printf("\n");
}
//结果是这样的:

*****
****
***
**
*


9.还有这样的直角三角形:

int i, j;
for(i = 0; i < 5; i++) {
for(j = 0; j < i;j++) {
printf(" ");
}
for(j = 0; j < 5 - i; j++) {
printf("*");
}
printf("\n");
}
//结果诺:

*****
****
***
**
*


10.直角三角形打印完了,不妨打印等腰三角形

int i, j;
for(i = 0; i < 5; i++){
for(j = 0; j < 5 - i - 1 ; j++) {
printf(" ");
}
for(j = 0; j < 2 * (i + 1) - 1; j++) {
printf("*");
}
printf("\n");
}
//尖朝上的

*
***
*****
*******
*********


11.那朝下的还远吗?

int i, j;
for(i = 0; i < 5; i++) {
for(j = 0; j < i + 1; j++) {
printf(" ");
}
for(j = 0; j < 10 - 2 * (i+1) - 1; j++) {
printf("*");
}
printf("\n");
}
//诺。

*******
*****
***
*


12.朝左的还不会?

int i, j;
for(i = 0; i < 5; i++) {
for(j = 0; j < 5 - 1 -i; j++) {
printf(" ");
}
for(j = 0; j < i + 1; j++) {
printf("*");
}
printf("\n");
}
for(i = 0; i < 4; i++) {
for(j = 0; j < i + 1; j++) {
printf(" ");
}
for(j = 0; j < 4 - i; j++) {
printf("*");
}
printf("\n");
}
//结果?

*
**
***
****
*****
****
***
**
*
//朝右的你可以自己画,无非俩直角三角形压一起。


13.三角形画完了,总得画个菱形吧。

int i, j;
for(i = 0; i < 5; i++) {
for(j = 0; j < 5 - i -1; j++) {
printf(" ");
}
for(j = 0; j < (2 * (i + 1) - 1); j++) {
printf("*");
}
printf("\n");
}
for(i = 0; i < 4; i++) {
for(j = 0; j < i + 1; j++ ) {
printf(" ");
}
for(j = 0; j < 8 - (2 * (i + 1) - 1); j++) {
printf("*");
}
printf("\n");
}
//别说你菱形不会画了。

*
***
*****
*******
*********
*******
*****
***
*


14.一直打印星星多没意思,加点数字

int i, j;
int k = 0;
for(i = 0; i < 5; i++) {
for(j = 0; j < 2 * (i + 1) - 1; j++) {
if(j % 2 == 0) {
printf("%d", ++k);
} else {
printf("*");
}
}
printf("\n\n\n");
}
//给

1

2*3

4*5*6

7*8*9*10

11*12*13*14*15


15.这排列不行阿,不好看,那换个。

int i, j;
int k = 0;
for(i = 0; i < 5; i++) {
for(j = 0; j < 5 - i - 1; j++) {
printf(" ");
}
for(j = 0; j < 2 * (i + 1) - 1; j++) {
if(j % 2 == 0) {
printf("%d", ++k);
} else {
printf("*");
}
}
printf("\n\n\n");
}
//这样还好看点儿了。

1

2*3

4*5*6

7*8*9*10

11*12*13*14*15


16.什么,还想玩点其他花样,行嘛,可以。给你看。

int i, j, k, z;
int a[25];
for(i = 0; i < 5; i++) {
for(j = 0; j < 2 * (i + 1) - 1; j++) {
if(j % 2 == 0) {
//printf("%d", ++k);
a[j] = ++k;
} else {
a[j] = 42;
}
}
for(z = 0; z < j&&a[z]!= 0; z++) {
if((i + 1) % 2 == 1) {
if(a[z] == 42) {
printf("%c", a[z]);
} else {
printf("%d", a[z]);
}
} else {
if(a[j - z - 1] == 42) {
printf("%c", a[j - z - 1]);
} else {
printf("%d", a[j - z - 1]);
}
}
}
printf("\n");
}
//这样挺好看的,难度可不小.

1
3*2
4*5*6
10*9*8*7
11*12*13*14*15


画星星就到这里了,看着简单,引用我们Java老师的一句话:不动手你以为你什么都会,动了手才发现自己什么都不会。总说初级程序员烂大街,可是初级程序员能自己认认真真画这些的可能没几个吧。自己可以试着敲一遍,如果会恭喜你简单的东西你做的很好,难得肯定不在话下,如果不会,老老实实慢慢画。相信每个人都是这样过来的。程序员,切勿眼高手低。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  程序员