C語言部分題目解析

2021-07-04 01:54:08 字數 2641 閱讀 3702

c語言部分題目解析1

、有以下程式

#include int main ()

答案:223

解析:|| 全假為假,有真即真  ,i++ == 1, 先取i與1比較,再自增,成立且+1為2,||後面不再計算2、

char a[7] = 「a0\0a0\0」;則

sizeof (a) = 7;   陣列位元組數1 * 7 = 7

strlen (a) = 2;   計算有效長度,即第乙個\0為止,且不計算\0

3、

#includevoid f(int *x, int *y)

int main ()

,i, *p, *q;

p= a;

q= &a[7];

while(p < q)

for(i = 0; i < 8; i++)

printf("%d",a[i]);

return 0;

}

答案:12345678

4、

#includeint fun(int a)

int main()

答案:09110211

解析:static int c = 2,靜態變數,在記憶體的靜態儲存區,只初始化一次以後再次使用將使用上一次的值。i = 0, a = 5, b = 1, c = 3;  i= 1,a = 5, b = 1, c = 4;  i = 2, a = 5,b= 1, c = 5

5、

#include#include //free()

#include //strlen()

int main()

*(d + len + 1) = '\0'; //倒序賦值結束之後,*d後面加'\0',*d ='\0';

printf("%s,%ld\n",dest,sizeof(strlen(src)));

free(dest); //釋放開闢的堆空間

return 0;

}

6、

#includevoid main()

a = 3;

}printf("%d\n",b);

}

答案:4

解析:b = 1, a = 1,進入迴圈,a += 5, a變成6,continue 結束本次迴圈進行下一次迴圈; b = 2,  a = 6, 第二次迴圈,a = 3,a變成3; b = 3, a = 3, 第三次迴圈,a +=5 , a變成 8; b = 4, a = 8 , 第四次迴圈,break,跳出迴圈

7、程式設計實現,刪除字串

s中值為

c的字串

void delchar(char s , char c)

}}

8、該程式有什麼問題?

#include #include void getmemory(char **p, int num)

int main()

printf("str3 is %s \n",str);

}

9、該程式有什麼問題?

#include int main()

10、

#include  int main()

; int *p = (int *)(&a + 1);

printf ("%p\n",a);

printf ("%p\n",&a);

printf ("%p\n",&a[0]);

printf ("%p\n",a+1);

printf ("%p\n",&a[1]);

printf ("%p\n",&a+1);

printf ("%p\n",p);

printf ("%p\n",&a[5]);

printf ("%p\n",&a[4]);

printf ("%p\n",p-1);

printf("%d, %d\n",*(a + 1),*(p - 1));

}

答案:2, 5

解析:

0x7fff5fbff8c0  a的位址,即a[0]的位址

0x7fff5fbff8c0  &a

0x7fff5fbff8c0  a[0]的位址

0x7fff5fbff8c4  a[1]的位址

0x7fff5fbff8d4  p的位址

0x7fff5fbff8d4  a[5]的位址

0x7fff5fbff8d0  a[4]的位址

0x7fff5fbff8d0  p-1的位址

2, 5

11、

#include intmain()

朗訊筆試題目 C語言部分 zz

標 題 朗訊筆試題目 c語言部分 跳出main 函式後還能不能執行其他 不使用第三個變數,將兩個變數a,b得值互換 不准用函式 如何判斷乙個檔案是由c編譯環境還是c 編譯環境編譯完成的?不用任何條件語句求兩個整形數的最大值?不准用函式 struct student 所佔空間多大?下面是一些解法,又可...

NOIP2015初賽部分題目解析

對我這輩子都ak不了初賽md。在洛谷上做的,又被坑了若干分。選擇題自己想錯了,結果完形填空又tm把變數名打錯了。14.對圖 g 中各個結點分別指定一種顏色,使相鄰結點顏色不同,則稱為圖 g 的乙個正常 著色。正常著色圖 g 所必需的最少顏色數,稱為 g 的色數。那麼下圖的色數是 a.3 b.4 c....

陣列概念和題目分析 C語言部分 z

1.陣列的賦值有幾種型別 注意 裡的是逗號,1.全部賦值,int a 5 或者int a 這個給全部元素賦值可以不給出陣列的長度 2.部分賦值,int a 5 這個意思是前面三個元素是1.2.3,後面兩個自動賦0 所以給整體賦0的方法就是 int a 10 特殊的幾點 1.給全部元素賦0,有int ...