為什么我的答案是直角三角形,不是等邊三角形?
#include <stdio.h>
int main()
{
??? int i, j, k;
??? for(i=1; i<5; i++)
??? {
??????? /* 觀察每行的空格數量,補全循環條件 */
??????? for(j=4; j>0; j--) ?
??????? {
??????????? printf(" ");??? //輸出空格
??????? }
??????? /* 觀察每行*號的數量,補全循環條件 */
??????? for(k=1; k<2*i; k++)
??????? {
??????????? printf("*");?? //每行輸出的*號
??????? }
??????? printf("\n");???? //每次循環換行
??? }
??? return 0;
}
2015-11-29
#include <stdio.h> ? ? //要求輸出等邊三角形?
int main()
{
? ? int i, j, k;
? ? for(i=1; i<5; i++)
? ? {
? ? ? ? /* 觀察每行的空格數量,補全循環條件 */
? ? ? ? for(j=1; j<5-i; j++) ?
? ? ? ? {
? ? ? ? ? ? printf(" "); ? ?//輸出空格
? ? ? ? }
? ? ? ? /* 觀察每行*號的數量,補全循環條件 */
? ? ? ? for(k=1; k<2*i; k++)?
? ? ? ? {
? ? ? ? ? ? printf("*"); ? //每行輸出的*號
? ? ? ? }
? ? ? ? printf("\n"); ? ? //每次循環換行
? ? }
? ? return 0;
}
這個是修改以后的代碼。for(j=4; j>0; j--)這個是你的,每次i循環都會輸出4個空格,所以輸出就是直角三角形。?for(j=1; j<5-i; j++) ?改成這樣每次i循環都會少一個空格。