今天做了一些關于列印圖案的練習,寫下這篇博客來分享自己對題目的思考還有自己的想法,來給大家一些參考的價值,
1.一個整數(1~20),表示正方形的長度,也表示輸出行數
#include<stdio.h>//多組輸入,一個整數(1~20),表示正方形的長度,也表示輸出行數,
void test(int a)
{
int i;
for (i = 0; i < a; i++)
{
printf("*");
}
printf("\n");
}
int main()
{
int x, y;
scanf_s("%d", &x);
for (y = 0; y < x; y++)
{
test(x);
}
return 0;
}
這個題我是選擇構建一個函式來顯示橫行的*數,最后用\n來開始下一行,也用了兩次for來表示橫和豎的*數量和排版,
最后運行代碼,運行成功!
2.KiKi學習了回圈,BoBo老師給他出了一系列列印圖案的練習,該任務是列印用“*”組成的直角三角形圖案
這個題算是上一個題的進階版,也增加了一點難度
#include<stdio.h>
int main()//KiKi學習了回圈,BoBo老師給他出了一系列列印圖案的練習,該任務是列印用“*”組成的直角三角形圖案,
{
int x, y, z;
scanf_s("%d", &x);
for (y = 0; y < x; y++)//豎列
{
for (z = 0; z < y + 1; z++)//橫列
{
printf("*");
}
printf("\n");
}
return 0;
}
這里我們利用了for回圈外加一個for回圈,第一個for回圈的y是一個變數,每次回圈結束y都會加一,我們用y回圈兩次來分析for (z = 0; z < y + 1; z++),y第一次回圈是帶入for回圈的y值為0,for回圈一次輸出為"*\n",第二次回圈是帶入y=1,回圈兩次為"**\n",這就解釋了for回圈加for回圈的原理,因此咱們運行這個代碼最后結果為
成功運行!
3.KiKi學習了回圈,BoBo老師給他出了一系列列印圖案的練習,該任務是列印用“*”組成的反向直角三角形圖案,
這個題同樣也是上個題的進階版,意思是讓他的直角三角形倒過來
#include<stdio.h>
int main()
{
int x, y, z;
scanf_s("%d", &x);
for (y = x; y >0; y--)//豎列
{
for (z =y; z > 0; z--)//橫列
{
printf("*");
}
printf("\n");
}
return 0;
}
因此我們還需要運用for回圈套著for回圈,只是for回圈里面得改變,上一個題的直角三角形是正常的所以我們的for回圈是從小到大開始回圈,最后在最大值處回圈結束,這個題把他倒過來了,意思就是for回圈得從大到小開始回圈了,最后在最小處回圈結束,因此回圈結束一次我們就要--
跟上一題一樣我們從剛剛開始的豎列就取用最大值x然后依次減少,第二個for回圈也是也跟著y走來體現出橫列,最后運行他
成功運行,沒嘛毛病!
感謝閱讀
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/386646.html
標籤:其他
上一篇:Nginx再出發
下一篇:經典題型--二分法查找
