C語言問題,C語言問題

2021-07-30 12:52:42 字數 4141 閱讀 6978

1樓:匿名使用者

'\' 符合,相當於一個字元,ascii字元可以直接轉成short整型數字。

'101'不符合,這是一個字串,不能作為常數。

"\"不符合,因為\"會對雙引號轉義,找不到另一個雙引號。**會出錯。而且就算是"\""也不符合,因為編譯器會把它理解成一個字串,而非單個字元。

e3不符合。

019不符合,0開頭代表8進位制數,不能出現9。

0x1e符合,十六進位制數。

“ab\n"不符合,同第三個。

1.e5符合,

(2+3)e(4-2)不符合,5e4是可以的,但e被括號分開後會被理解成一個識別符號。

5.2e2.5不符合,因e後的數字不能出現小數點。

2樓:

指數形式:字母e之前必須要有數字,且e後面的指數必須為整數,如,e3 e前少了數字, 5.2e2.5 指數2.5不是整數。

019 以0開頭的表示八進位制數,八進位制數中不能出現大於7的數。

3樓:

在c語言裡,單引號裡只能是一個字元,但反斜槓要兩個,因為第一個表示轉義作用。科學表示法前面要是個實數,指數必須是個非負整數。所以第四個,五個,六個,七個是正確的。

4樓:

printf("ab\n");此時,\n被翻譯成轉義字元

char a="ab\n";,此時ab\n是字串

c語言問題

5樓:

#include

#define n 30

typedef struct student;

student r[n];

int main(void)

num=1;

for(i=0;ir[max].score)max=j;

if(max!=i)

if((i>0)&&(r[i].score小錯誤比較多,格式有點亂,整理**縮排就花了好久……基本都是小錯誤,對比看一下就知道了。

c語言問題 10

6樓:

#include

#define n 10

int delnum(int a,int num,int n){int i,j=0;

/*用j記錄陣列a中不等於num的元

素個數(即需要儲存的元素個數),

邊掃描陣列a邊統計j,並將不等於num的元素向前放置在j位置上,最後修改陣列的長度

*/for(i=0;i

示例執行如下:

7樓:匿名使用者

如果有幾個相同的值都刪除嗎?

c語言問題

8樓:匿名使用者

這句話提示的意思是:用型別“int (const char *,...)”隱式宣告瞭庫函式printf。

該提示的背景知識:因為printf這一類庫函式太常用了,所以編譯器在編譯的時候,發現原始檔中並沒有宣告printf這個函式就直接使用了它,那麼編譯器就會為printf函式隱式生成一個宣告。你那個編譯器提示你,它為printf生成的隱式宣告是:

int printf(const char *, ...)

該提示後果:通常情況下,這個提示只是一個warning,而不是error,編譯仍然可以通過。

解決方案:要消除這個提示,只要加上printf的宣告就行了。printf函式是一個庫函式,它的宣告在stdio.

h檔案裡。所以,你只要在原始檔中#include 就可以了。

9樓:匿名使用者

少了標頭檔案:

#include

10樓:匿名使用者

printf使用不當吧。

11樓:渠彩榮熊釵

#include

float

n;int

main()

integer

表示整數

real表示實數

如果這個數取整之後還等於原數,則說明這個數是整數。、

12樓:巢文賦愛蕊

deque::push_back

原型void

push_back(const

t&x);

typedef

deque

intdeque;

intdeque

dequetest;

dequetest.push_back(value)就是在當前的佇列尾部插入一個數value

例如:dequetest.push_back(1);

dequetest.push_back(2);

dequetest.push_back(3);

依次插入了1,2,3

與pop_back不同,pop_back是刪當前的隊尾值。

push_back

類似堆疊操作push,

pop_back

類似堆疊操作

pop.

這裡的"back"

容易把人搞糊塗。

自己看吧

c語言程式設計問題

13樓:手機使用者

解題思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語言問題

14樓:賈可

too many actual parameters for macro 'max'

巨集 max 的實際引數太多

看樣子你包含的某個檔案中已經定義了一個巨集 max,與你的 max 函式衝突了。

試試將 max 函式改名,呼叫的地方也改名。

15樓:145飛雪

經驗證,程式沒什麼問題,只是函式名起max可能和標頭檔案中什麼巨集定義重複了,所以會報錯,改了函式名就好了

我的vc不改也是這個錯誤,和樓主一樣

16樓:匿名使用者

執行完全正確,但是建議把main函式定義為int型,你那樣是不標準的.

17樓:匿名使用者

經vc 6.0除錯沒有錯誤。

18樓:二麻子

直接貼**了我

#include "stdlib.h"

#include“stdio.h”

#include "time.h"

int max(int a,int b,int c)int main()

c語言問題題

19樓:莊政警

沒考慮邊界資料,給你改了下:

int prime(int p)

}int primesum(int m, int n)return sum;}

c語言問題!!

20樓:寂寞無心可愛豬

#include

void main()

else

else

}printf("\n");}}

}增加了對輸入的判斷

21樓:聽不清啊

#include

int main()

return 0;}

22樓:林聲飄揚

#include

int judement(int y);

int main()

return 0;

}int judement(int x)

C語言問題,c語言問題

這是值傳遞,值傳遞的過程的是,系統會給你的實參的值進行乙個拷貝,把這個拷貝傳遞給形式引數。因為是拷貝,所以實參裡頭的值是不會改變的。如果是位址傳遞就不一樣了。補充 你可以定義乙個指標,這個指標指向主函式的結構體。然後子函式的形參也定義乙個指向結構提的指標。這樣就是位址傳遞了。樓主還是好好花點時間看看...

c語言問題,求助,C語言問題,求助!!!

這種問題用哈夫曼樹的逆向思想就可以解決了,所以我建議還是自己按這思想好好研究一下。自食其力。c語言問題 因為 define s a p a a 定義後 是直接替換 運算過程是這樣的 3 3 5 3 5 所以是29 弱勢這樣定義的 p a a 結果就是192 3 3 5 3 5 9 15 5 29 巨...

c語言程式設計問題,c語言程式設計問題?

include int main int i,n double sum 0 scanf d n for i 1 i n i sum i i 1.0 i 1 printf f n sum return 0 include void main c語言程式設計問題 解題思bai路 完全跟百錢買百雞的問題是...