當前位置:首頁 » 編程語言 » c語言循環嵌套矩形
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言循環嵌套矩形

發布時間: 2022-10-05 17:32:55

❶ 各位幫忙解個題吧~~ 我實在不會~~ c語言的..根據用戶輸入的整數長度和寬度,用星號'*'畫出一個空心矩形

#include "stdio.h"

int main()
{
int r,c,i,j;
printf("輸入行數,列數(以逗號隔開):");
scanf("%d,%d",&r,&c);
if (r<1||c<1)printf("輸入錯誤\n");
else{
for (i=1;i<=r;i++)
{
for (j=1;j<=c;j++)
{
if(i>1&&i<r&&j>1&&j<c)printf(" ");
else printf("* ");
}
printf("\n");
}
}
return 0;
}

❷ C語言用for循環嵌套輸出n行圖形如:

#include <stdio.h>
void main()
{
int n,i,j;
int num=1;
char array[27]="ABCDEFGHIJKLMNOPQRSTUVWXYZ";
printf("輸入數字n:");
scanf("%d",&n);
for(i=1;i<=n;i++)
{
for(j=i;j<n;j++)
printf(" ");
for(j=0;j<num;j++)
printf("%c",array[j]);
num+=2;
printf("\n");

}
}

❸ C語言:星號繪制的矩形程序問題

改成這樣就行了

#include <stdio.h>
#include <stdlib.h>
int main(void)
{
int x = 0; /*長度*/
int y = 0; /*寬度*/
int i = 1;
int j = 1;
on:
printf("x=");
scanf("%d", &x);
printf("y=");
scanf("%d", &y);
if(x < 2 || y < 0)
{
printf("Please enter a right number");
goto on;
}
for( ; i <= x ; i++)
printf("*"); /*先輸出頂端的一條邊*/
x -= 2; /*用來輸出空格*/
for( ; j <= y - 2 ; j++) /*寬度*/
{
printf("\n*"); /*先輸出一個星號,後面輸出空格*/
for( i = 1; i <= x ; i++)
printf(" "); /*這個空格木有輸出,問題出在哪裡?*/
printf("*"); /*輸出完空格後要輸出一個星號*/
}
printf("\n");
x += 2;
for( i = 1; i <= x ; i++)
printf("*"); /*先輸出頂端的一條邊*/
system("pause");
return 0;
}

❹ 一個C語言的for循環嵌套的問題 ~~~ (輸出4*5的矩陣)

嵌套循環就是外層循環進行一次內層循環循環一圈。例如兩層的嵌套
for(i=1;j<=5;i++)
for(j=1,j<=5;j++,n++)
意思就是i=1的時候 j從1到5循環一遍,i=2的時候,j從1到5循環一遍,i=3的時候j從1到5循環一遍,這樣一直到最外層的循環 結束為止。

❺ c語言中的循環的嵌套是怎麼運行的

我給你來說一下
比如下面的for雙重循環
結果為01234 11234 21234 31234 41234
兩個for嵌套循環理解的方法:外面一個for一共要運行5次,裡面的for一共要運行4次,每當外面一個for運行1次,裡面的一個for就要運行四次,直到裡面的for四次運行完,然後又回到最外面的for繼續運行,然後裡面的for再運行四次。就這樣,給我加分哦
int i,j;
for(i=0;i<5;i++)
{
printf("%d",i);
for(j=1;j<5;j++)
{
printf("%d",j);。

❻ C語言for循環嵌套講解

循環的過程是先執行第一個大循環for(i=0;i<3;i++),此句中先給i賦值0,在判斷條件i<3是否成立賦值後的i=0了,所以條件成立,成立則做下面一條語句,就是for(j=0;j<4;j++),同樣這個循環還是先賦值j=0,在進行判斷j<4是否成立,成立就再做下一句。
此時scanf語句後面已經沒有語句了,所以程序就會跳上去到第二個循環中,即for(j=0;j<4;j++)這句話中,可能你會問為什麼不是第一句
(因為在循環嵌套中只有循環體執行完成所以的任務後才執行下面的語句,就是for(j=0;j<4;j++)
要全部執行完畢才能執行後面的語句。即j<4條件為假時跳出)跳到for(j=0;j<4;j++)這個循環體以後。就會自動加一,就是執行j++(注:在這個for裡面的j=0不再執行),這個賦值過程只在開始時執行。所以
j
這個循環要執行到條件不滿足時停止,即最後j的值要>=4.。
這樣
j
這個循環就結束了。結束後又跳到了第一句。因為第二個for是包含在第一個for
里的。只有第一個for
里包含的語句全部執行完後第一個for就再一次執行i++,i
變成了2,判斷條件i<3成立,就再執行下一句,所以下面的for(j=0;j<4;j++)又要再一次執行。執行完後就在回到第一個for執行。
原理:
i=0,j
執行4次,給a[0][0],a[0][1],a[0][2],a[0][3]賦值
i=1,j
執行4次,給a[1][0],a[1][1],a[1][2],a[1][3]賦值
i=2,j
執行4次,給a[2][0],a[2][1],a[2][2],a[2][3]賦值
i=3跳出.
還有不懂再問

❼ c語言利用循環嵌套實現如下圖形輸出(在線等)

#include<stdio.h>
voidmain()
{
inti,j,k;
for(i=1;i<=4;i++)
{
for(j=0;j<i;j++)
printf("%c",j+'A');
for(k=i;k>=1;k--)
printf("%c",k+'0');
printf(" ");
}
}

❽ C語言——嵌套循環

#include<stdio.h>

intmain(intargc,charconst*argv[])
{
intn=0;
while(1)
{
printf(" ");

scanf("%d",&n);
if(n<=0||n>100)
printf("Error,pleasetryagain! ");
else
break;
}
for(inti=1;i<n/20;++i)
{
for(intj=1;j<n/10;++j)
{
for(intk=1;k<n/5;++k)
{
if(20*i+10*j+5*k==n)
{
printf("$20:%d$10:%d$5:%d ",i,j,k);

}
}
}
}


return0;
}

❾ c語言的循環嵌套是先運行最裡面的循環在依次往外循環

始終記住一點,目前所有的語言都是順序執行的。程序從外循環執行下去,遇到內循環後就執行內循環語句。內循環語句執行完成後,繼續往下執行,遇到外循環的右}時,進入下一次外循環。下一次外循環又會執行內循環。這樣子說應該明白了吧。建議你多看本基礎的書,自己系統的學一遍基礎知識,養成計算機的思考方式。靜下心來看一下the c programming,一遍看不懂看2遍。這是C語言創始人寫的,他對C的了解比其他人深刻的多。有英文基礎的話最好英文版的。

❿ c語言中 for循環嵌套的運算流程

1.
for循環的一般形式為:
for(表達式1;
表達式2;
表達式3){

語句塊
}
2.
它的執行過程如下:
1)
先求解表達式1。
2)
求解表達式2,若其值為真(非0),則執行循環體,否則結束循環。
3)
執行完循環體,再求解表達式3。
4)
重復執行步驟
2)

3),直到循環結束。
注意:表達式1僅在第一次循環時求解,以後都不會再執行,可以認為這是一個初始化語句。
3.
for循環的執行過程可用下圖表示:
4.
比如我們用for循環來計算1加到100的值:
#include
int
main(){

int
i,
sum=0;

for(i=1;
i<=100;
i++){

sum+=i;

}

printf("%d\n",sum);

return
0;
}
運行結果:
5050
代碼分析:
1)
執行到
for
語句時,先給
i
賦初值1,判斷
i<=100
是否成立;因為此時
i=1,i<=100
成立,所以執行循環體。循環體執行結束後(sum的值為1),再計算
i++。
2)
第二次循環時,i
的值為2,i<=100
成立,繼續執行循環體。循環體執行結束後(sum的值為3),再計算
i++。
3)
重復執行步驟
2),直到第101次循環,因為此時
i
的值為101,i<=100
不成立,所以結束循環。