1樓:
for(i=1;i<=15;j+=4)一定是給錯了,應該是for(i=1;i<=15;i+=4),取4個值1,5,9,13;
for(j=3;j<=19;j+=4) m++會執行5次m++,也就是m+5,j分別取3,7,11,15,19;
兩個迴圈是巢狀關係,合計執行為4*5=20。
2樓:匿名使用者
外層迴圈應該是
for(i=1;i<=15;i+=4)
i=1(i<=15成立):
j=3(j<=19成立): m++;(此時m=1)j=7(j<=19成立):m++;(此時m=2)j=11(j<=19成立):
m++;(此時m=3)j=15(j<=19成立):m++;(此時m=4)j=19(j<=19成立):m++;(此時m=5)j=23(j<=19不成立):
內層迴圈結束i=5(i<=15成立):
j=3(j<=19成立): m++;(此時m=6)j=7(j<=19成立):m++;(此時m=7)j=11(j<=19成立):
m++;(此時m=8)j=15(j<=19成立):m++;(此時m=9)j=19(j<=19成立):m++;(此時m=10)j=23(j<=19不成立):
內層迴圈結束i=9(i<=15成立):
j=3(j<=19成立): m++;(此時m=11)j=7(j<=19成立):m++;(此時m=12)j=11(j<=19成立):
m++;(此時m=13)j=15(j<=19成立):m++;(此時m=14)j=19(j<=19成立):m++;(此時m=15)j=23(j<=19不成立):
內層迴圈結束i=13(i<=15成立):
j=3(j<=19成立): m++;(此時m=16)j=7(j<=19成立):m++;(此時m=17)j=11(j<=19成立):
m++;(此時m=18)j=15(j<=19成立):m++;(此時m=19)j=19(j<=19成立):m++;(此時m=20)j=23(j<=19不成立):
內層迴圈結束i=17(i<=15不成立):外層迴圈結束所以雙重迴圈結束,輸出m的值為20。
從上面的分析可以看出,外層迴圈每執行1次,內層迴圈執行5次(即m累加5次)。外層迴圈一共執行4次,所以m的值20
3樓:匿名使用者
不對啊。第一個for迴圈的應該是i+=4
這樣外層迴圈4次 內層迴圈5次 m=20.。。。
4樓:
裡面的for迴圈執行5次,外面的執行4次,4*5即20
c語言 以下程式段的輸出結果是多少
5樓:xu水冰淼
printf輸出:bai110
第一括號du:1;zhi
第二括號:5
第三括號:5
第四括號:5
最後的三dao個括號填的內
值是有歧義的,容比如要是隻是那個條件,然後分別問:
int a[4]=,*p;p=a;此時*p的值是( )int a[4]=,*p;p=a;此時*p++的值是( )int a[4]=,*p;p=a;此時(*p)++的值是( )
就應該是樓下的答案:5 5 5
6樓:德迷聯盟
ch的值是( 65 )。
duwhile(ch=getchar()==’
zhia’);
5、int a[4]=,*p;p=a;此時*p的值是(3 ),dao*p++的值是( 6 ),(*p)++的值是( 5 )。
這是編譯器運內行出來的結容果。
7樓:窮圖末錄
110155
5注意++後置
8樓:匿名使用者
110,1,
5,3.6
c語言題目:下面程式段的輸出結果是什麼? 15
9樓:匿名使用者
答案是0
int k沒有初始化,所以初始值不確定,但是int型別 4個位元組(範圍是-2147483648~2147483647). 所以在計算k的值時候,從起始地址往下數32位, 超出32位的會被截斷
如果是正數,那最後就是0,很直觀
如果是負數(8個位元組來看)
0xffffffffffffffff === -10xfffffffffffffffe === -20xffffffff80000000 === -21474836480xffffffff7fffffff === -2147483649但整型4個位元組,所以對於-2147483649,它計算0x7fffffff的大小,變成了2147483647,回到正數,最後為0
10樓:匿名使用者
如果正確答案是a;那麼那個老師是有問題的;c語言中出現這種情況,答案是d才對
11樓:知道嗎
你沒賦值,預設數值為0 的
一道c語言題:下面的程式段執行後,輸出結果是
12樓:匿名使用者
答案是0;
int i,j,x=0;
static int a[8][8]; //定義的bai時候系統自動初du
始化,把陣列中zhi所有的元dao素都賦成0;
for(i=0;i<3;i++)
for(j=0;j<3;j++)
a[i][j]=2*i+j; //將陣列右上角的回3x3的子矩答陣賦值;(注意,此時結束時j的值是3)
for(i=0;i<8;i++)
x+=a[i][j];//這裡j的值是3,所以相當於把a[0][3] a[1][3] a[2][3]到a[7][3]累加到x上,而在上面的賦值中又沒有給這些值賦值,所以這些值都是0;而x的初值也是0,所以最後輸出的x應當為0;
printf("%d",x);
13樓:匿名使用者
用來static定義陣列,就已經給陣列初值了源,即使所有的值均為0.
你用for在給陣列賦值的時候,只給了a[0][0]至a[2][2]的值,即那些值現在已經有變化了.在經過兩個for之後,j的值應該變為了3.
那麼再經歷下一個for,應該執行的語句就是x+=a[i][3],可想而知,不論你經歷多少次迴圈,只要j是3,那麼些a[n][3]就是0.因為第3列根本就沒有變化過.值仍舊為0
所以結果為0
14樓:匿名使用者
static int a[8][8], a中的每個元素都是0
第三個for的時候 j=3, a[i][3]都是0,所以結果是0
15樓:匿名使用者
是0 e:\case.win\nasm>gcc z.c -o z.exe
e:\case.win\nasm>z
0 e:\case.win\nasm>
#include "stdio.h"
int main()
C語言有以下程式程式執行後的輸出結果為
一看到這種題目就是讓你看的這個書,不是什麼好書。正經的書不會寫乙個這麼不符合書寫規範的題目。你工作以後寫成這樣會 正規寫法 c語言問題!若有以下程式 輸出結果是?include main int argc,char argv 主函s是程式名,所以不列印.現在dos提示符下鍵入s aa bb cc後字...
c語言以下程式執行後的輸出結果是
選a。因為strlen 函式不計算 0 所以其統計數字較sizeof少乙個。c語言,以下程式執行後的輸出結果是 c a a 5 是乙個 表示式,a b,b 3 是另乙個表示式。a 0,a a 5 5,a a a 5 5 10,將值賦給c,c 10,此時,a 5 a b,將b的值賦給a,a 0,執行b...
以下程式段的輸出結果是chars
字串為 141aabc 表示 t水平製表符,不顯示 長度為9 表示符號 141表示十進位制的97,ascii碼的a t是水平製表符 有以下程式段,輸出結果是 char s 141 141abc t printf d n strlen s char s 141 141abc t 轉義字元 141 三個...