一道c語言題,考試中,一道C語言題

2023-05-26 07:30:10 字數 5111 閱讀 9679

1樓:匿名使用者

#include

#include

struct t

void sort(struct t items,int low,int high)

main()

另外,團idc網上有許多產品**,便宜有口碑。

2樓:清正還謙卑的小桃花

找最大值和最大值在陣列a中的索引。

for(i=0;i<10;i++)scanf(%d」,a+i); 輸入10個數字。

著重講一下這一句:for(p=a,s=a;p-a<10;p++)if(*p>*s)s=p;

其中,s為最大值的指標,p為遍歷陣列的指標,初始化最大值為a[0],遍歷陣列元素,找到比s指向的值大的元素時,將s修改成指向這個元素的指標,遍歷完成就找到了陣列的最大值。

而s - a為s距a[0]的偏移量,即最大值的索引。

3樓:匿名使用者

輸入10個數,找出其中最大的數,並給出其所在元素的下標 ,若有多個最大值,則只輸出最先出現的陣列下標。

4樓:元易夢

錄入陣列a的10個元素,然後找出最大的元素並輸出這個最大元素以及它所在下標。

5樓:

求陣列a[10]中的最大值和相應的下標。

一道c語言題

6樓:匿名使用者

首先肯定你的邏輯,之所以出現你所疑問的幾點問題,是因為冷門知識知道的少和不夠細心。我一一講解你遇到的問題,希望能幫到你。

一、獲取y的值為,如果你想輸出為科學計數法,那麼就需要在輸出函式中用%e而不是在輸入函式中。eg:printf("%e",y).

二、在輸入c1,c2時輸入abc,那麼你理解的對,應該c1=b,c2=c;之所以出現你的問題,是因為你輸入35,時按下鍵盤回車鍵,鍵盤緩衝區保留了一個『',這個''被讀取到c1中1次。你需要在讀取字元之前清空緩衝區。

我給你全碼:

#include

#include

int main(void)

7樓:拿起炸藥包

輸出的時候 y的控制符是%e 不是%f char是單個字元輸入。

8樓:0o揮霍

修改錯別字:"忘高手"的忘改為"望",修改完畢!

9樓:晉易詹曉絲

按順序填寫:

inta,b,c;

a,&b,&c

temp=a;

c=temp;

完整程式如下。

#include

main()

10樓:巢寒運向雪

那就買個電子詞典吧~~

現在都很便宜了~~

11樓:從素芹佘寅

1.假設a參加,根據(1)b也參加,根據(2)c就不參加,由(3)得到d不參加,由(4)得到e一定參加,根據(5)可以推斷a和d都參加,與a參加d不參加矛盾,所以a不參加。

2.根據第一個推論,剩下b、c、d、e。假設b參加,根據(2)c不參加,由(3)得到d不參加,由(4)得e參加,根據(5)得到a、d都參加,與d不參加矛盾,所以b也不參加。

3.根據前面2個結論,剩下c、d、e。假設c參加,則d也參加(條件(3)可以得到),假設e參加,則a、d都參加,與a、b不參加矛盾(前面2個推導可以得到),所以e不參加。

這條可以滿足條件!!)

4.假設c不參加,則d也不參加(條件3),那麼e一定要參加,得到a、d也都參加(條件5),與前面推導矛盾,所以c參加。

12樓:匡頌弭山芙

老師講課,自己整理,慢慢積累呀。

一道c語言題

13樓:匿名使用者

這題正確答案選擇b,x陣列長度大於y的長度。

原因:字串末尾預設會儲存一個'\0'表示字串的結束,所以x實際儲存的是'1', 2', 3', 4', 5', 0',而y陣列中儲存的就是初始化的'1', 2', 3','4', 5',所以x的長度為6大於y的長度為5

c語言一道題

14樓:匿名使用者

a>d++ 是先判斷a>d,再d++,a>++c 是先c++,再判斷a>c,for的那個,是b=5,6,7,8,9的時候會執行i++,所以是5while的那個,相對於for的那個,是c一上來先被加一了,所以少了一個,(c自加完之後)c=6,7,8,9的時候會執行j++,所以是4

do-while的那個,相對於for的那個,k上來先被加了1(do while迴圈體先執行一次),而(d自加完之前)d=5,6,7,8,9的時候會去執行k++,所以是6

話說這種問題我也感覺比較糾結,所以我可能也會犯錯,見諒……

15樓:光亮青劍

先迴圈體,然後再執行d++,再判斷a是否大於d,a>d++是先判斷a是否大於d,然後d增1,讓後迴圈體,然後再執行d++,再判斷a是否大於d

16樓:匿名使用者

關於++和--的問題,如果++在前面(如++a),就是將a先+1,然後返回計算後的值(a+1)。如果++在後面(如a++)則計算a+1之後,返回a原來的值。

所以這道題,a>d++,先計算d+1,並以計算前的值為返回值,再與a做比較,然後再進入迴圈或跳出迴圈。所以這個迴圈執行6次。

17樓:匿名使用者

先執行k++;如果滿足條件a>d,然後d++,再執行迴圈k++;

18樓:

不是的,do …while 結構是先執行迴圈體,再判斷條件。本題:先執行k++,再比較a>d,最後,執行d++。

所以,即使條件恆不成立,k也會加1的。故結果為6。希望幫到你^_^

c語言一道題

19樓:匿名使用者

c 「int」不能給賦值。

放c編譯器裡面試一下,最後輸出顯示i

20樓:零下而度

是c,函式申明過程中形參不能給確切的數值 ,這樣函式就沒有通用性了。

21樓:一杯墜

這個題目問的有點問題。

我解答一下吧:如果題目是:存在著語法錯誤的是().那麼答案是a、b、c

對於函式的宣告只有d選項是正確的。

解答:在函式生命中有兩類:無參函式和有參函式。它們的宣告有些差異,我用兩個例子來說明吧。

1、int max(int x,int y); 2、void chys();

1 屬於有參函式的宣告 2屬於無參函式的宣告。

例子是最好的說明,如果不是很清楚 還是去看一下書本,這個是定義性質的問題並不難。

一道c語言題目

22樓:匿名使用者

int func(int a,int n);這個函式宣告告訴我們:

1.這個函式返回值是int 型別。

2.這個函式里面有兩個引數,分別是整型陣列和整型題中定義了int a[10], n, x;三個變數b項:x = func( a, n );函式返回值是int型別 當然要用一個int型別的變數來接收。

呼叫函式里面的引數是a 而不是a或a[10],是因為c語言規定,在函式呼叫中 如果引數是陣列型別的,只寫陣列名就可以了。

23樓:匿名使用者

首先只能是函式的值賦給變數,其次,函式引數是陣列時,寫陣列的符號就行。

24樓:匿名使用者

關鍵在於寫陣列呼叫的時候,寫陣列名就行!

c語言中一道題

25樓:匿名使用者

您好!上面的表示式結果應該不是16吧。

如果是16的話5<7應該用括號括起來,否則整個式子只是一個邏輯判斷。那麼結果應該是1

因為 < 號 兩邊分別是兩個整體,當以%d的格式輸出結果時,左邊不小於右邊即判斷結果為假輸出0,如果小於即判斷結果為真時輸出結果為1 c語言中零是假 非零就是真用1表示。

如果5<7用括號括起來:

1 + 4/5 + 5<7) +4%5 + 8,10)就等於1 + 0 + 1 + 4 + 10

4/5 除法運算但取商 ..0

4%5 除法運算但取餘數 ..4

8,10) 這是c語言中的逗號表示式,執行過程是從左到右依次執行,但最終表示式的值是最後一項的值。10

26樓:匿名使用者

事實上這道題的答案根本就不是16,而是1,如果不信可以上機除錯,提個建議就是別為做題而做題,程式設計的精髓不是做題,而是實際程式設計,呵呵……純建議!

27樓:匿名使用者

從左往右,依次來;4/5(取商運算)就是0;5<7是真命題,其值為1;4%5(取餘運算)的結果是4,(8,10)括號內為逗號運算,按最後一個算,即10;

由上即 1+0+1+4+10=16

28樓:匿名使用者

1+4/5+5<7+4%5+(8,10)

1本人的才是絕對正確,不懂的別誤導人家。

一道c語言選擇題

29樓:頻姝泰吉星

什麼叫從左到右呢。

您看看。(a=3*5,a*4,a+5)

這是逗號表示式。從左到右計算,取最後一個逗號後面的東西為結果。

執行的過程是這樣的:

a=3*5=15,這時候a是15了。a*4,這句只是a*4,得到60,而a的值依然是15,然後a+5,結果是20

就輸出20咯。第二個表示式a*4是有計算的。但是沒有賦值給a呀。所以沒什麼影響。

30樓:瞿芙吾涵蕾

不是地址,錯。

b.++y,y是陣列名,是常量,不能++

x);相當於s=y+5,strcpy(s,x);x長度為9,加上結束符,總長為10位元組,但s指向的是y[5],之後只有y[6]到y[9]這4個位元組可用,因此會造成陣列訪問越界。

x+1);x+1即指向x[1]的指標,之後有8個字元和1個結束符,長度為9位元組,y+1之後正好也有9個可用位元組。正確。

s=y+1;y+1就是y[1]的地址。y+5就是y[5]的地址。

一道c語言程式設計題急求答案,一道C語言程式設計題 急求答案

最簡單的排序方法是氣泡排序方法。這種方法的基本思想是,將待排序的元素看作是豎著排列的 氣泡 較小的元素比較輕,從而要往上浮。在氣泡排序演算法中我們要對這個 氣泡 序列處理若干遍。所謂一遍處理,就是自底向上檢查一遍這個序列,並時刻注意兩個相鄰的元素的順序是否正確。如果發現兩個相鄰元素的順序不對,即 輕...

c語言中一道題不明白什麼意思C語言中一道題,不明白什麼意思

分段函式求值內容.main 分段來的自,bai也du就zhi 是dao if x 1 else if 1 x 10 else 其實,這是三複條選擇語 制句,你從右邊往左邊讀就行了,當x滿足。時,就執行對應左邊的函式表示式,把x值帶如對應的函式算就行了。你要明白,你帶入一次,只能從三個中選一個做運算,...

一道求ab的c語言題一道求AB的c語言題?

include define m 50 main 比較兩個的長短,把長的那個放到c裡,短的放到d裡 else if ia ib a 0 b 0 0 9 else 比較兩個的長短,把長的那個放到c裡,短的放到d裡 ic strlen c id strlen d 求出實際參加運算的c,d的長度 do 處...