1樓:匿名使用者
若有說明語句double *p,a;則能通過scanf語句正確給輸入項讀入資料的程式段是()
解:p=&a;將a的地址賦值給p,
scanf("%lf",p);從鍵盤獲取一個數值賦值給地址p指向的變數
所以選d
有函式fun的定義形式如下。
int fun(float f){...}
則以下對函式fun的呼叫語句中,不正確的是()
a.fun(fun(0)); b.strlen(fun(0)); c.abs(fun(0)); d.scanf("%d",&(fun()));
解:fun的引數是個float型別的數,但是fun(0)返回的是一個int數,所以a錯誤;strlen的引數是個char*,所以b也錯誤;abs的引數可以是int,所以c對;
d中間對一個int數取地址是錯誤的
所以選c
有函式fun的定義形式如下。
int fun(float f){...}
則以下對函式fun的呼叫語句中,正確的是()
c.int x=1;x+fun(5)*4/6+8; d.printf("%d",fun());
解:x是int*,fun(0)返回int,所以a錯
fun引數是float,但是&x是int*,所以b錯
fun()不是變數,不能給fun()賦值,所以d錯
c是對的
2樓:匿名使用者
我的想法與匿名先生差不多。但他的回答我有一點補充,如果第二題只能選一個,那應該是d。因為strlen的引數是指標型,但指標本身與無符號整型的表示和計算是一樣的,因此在此應該可以算對。
c語言問題
3樓:匿名使用者
b) 使用者定義
bai的函式中
可以有多個return語句du,以便可以呼叫一zhi次返回多個函式dao值
使用者定義的函式中可以回有多個答return語句是對的,執行到哪一個return語句,哪一個語句起作用。
但呼叫一次最多隻能一個返回值,如果想多個返回值,得用指標實現了
4樓:匿名使用者
答案是b
一次只能返回一個函式值
c語言問題c語言問題
5樓:三天打魚
str2num(char *p)
num=num+k;
}return (num);}
c語言問題
6樓:聽不清啊
當輸入abc時,輸出結果是(abc6789)
因為當執行gets(ss);時,
ss[10]就變為了"abc",其後就是串結束符。儘管3,4,5仍存在於陣列中,但是卻已經被忽略掉了。後面的"6789"就被連線到'c'的後面了。
7樓:樂酷科技
gets(ss)從ss首地址開始存放 原來的被覆蓋 即現在是abc'\0'了,strcat把後面的字串連線到前面字元的後面 從'\0'開始 最後新增新的'\0' 所以輸出結果就是abc6789了
c語言程式設計問題
8樓:手機使用者
解題思bai路:完全跟百錢買百雞的問題是du一樣的!設大zhi馬,中馬,小馬dao的匹數分別為x,y,z;可以得到回兩個方程:
x+y+z=100; 3*x+2*y+z/2=100; 將第二個
答方程變形為:6*x+4*y+z=200; 從第二個方程變形的方程中,我們可以看到,x的最大值為200/6=33.3;即中馬,小馬都不用,只用大馬最多用34;1<=x<=34; 同樣中馬y的最大值為200/4=50;1<=y<=50;再將第三個方程減去第一方程變成5*x+3*y=100;這個方程就是我們簡化後的判斷條件用列舉法求可的如下的程式:
#include
int main()}
C語言問題,c語言問題?
一 c語言規定總是從main 開始執行的 這個函式也叫 主函式 因此,你發來的題目中的 1 6 8 敘述都是錯誤的,都應該選擇f。二 第2題中,c語言對其資料在記憶體中所佔用的實際位元組數,隨著程式中宣告的資料型別以及資料的多少而變化,c語言本身並沒有明確規定。這題應該選f。三 第3題,c語言中強制...
C語言問題,c語言問題?
你這個程式是捕捉0到9的按鍵狀態,按下再鬆開時才會記錄,想要識別所有按鍵,把for迴圈範圍擴大。比如for charch 32 ch 127 ch 這樣就包含了特殊符號及大小寫字母還有數字。但是,這個 是有問題的!一 你這個 需在鍵位已經按下後啟動才能識別,否則啟動時沒有按下對應鍵位,程式就結束了。...
c語言問題,C語言問題
for k 1 k 1 k 中,k 1是設循bai環du的初值,zhik 1是執行循dao環的條件,k 是迴圈的增量回。k 1時,k 1 2,為非0,c語言中,0代表答假,非0代表真。所以,k 1時往下執行迴圈,滿足k 4 列印k的值,即1。break 退出for 迴圈,下面的printf d k ...