請教C語言,請教一下C語言中按位取反 的使用

2023-02-20 18:30:22 字數 3448 閱讀 7841

1樓:匿名使用者

在你原來程式的基礎上做了些改動,如下:

# include

int main(void)

int i,j,k,j1,k1;

for(i=6;i<=100;i=i+2) {for(j=2;j<=i-2;j++) {       /*判斷i是由兩個素陣列成,尋找素數j*/

for(j1=2;j1<=j;j1++){     /*判斷j是不是素數*/

if(j%j1==0 && j!=j1)

break;  /*j不是素數跳出*/

k=i-j;

if(j == j1 - 1) /*這裡為改動處*/for(k1=2;k1<=k;k1++){     /*判斷k是不是素數*/

if(k%k1==0&&k!=k1)

break;  /*k不是素數跳出*/

if(k==k1 - 1){  /*改動處*/printf("%d=%d+%d\n",i,j,k);

break;

return 0;

寫**時注意書寫格式,以免難以閱讀。

另:自己找不出bug時,可以試試編譯器單步除錯功能。

2樓:匿名使用者

#include

int panduan(int j)//判斷素數函式/*j不是素數跳出*/

}return flag;//素數則返回1}int main(void)}}

return 0;}

3樓:匿名使用者

if(j=j1) 在此處 if判斷恆為真,程式無限迴圈。

請教一下c語言中按位取反~的使用

4樓:

short、char在算術運算時,如果int可以容納原來的範圍,則首先提升為int,否則提升為unsigned int.

也就是說,你這題跟i的型別是不是int沒關係,只要執行~運算,char型的就會首先提升成int。

用以下**可以證明

char a = 1;

printf("%d\n", sizeof(~a));

所以i = 0xff ~j=0xffffffff 就不相等了

5樓:

錯誤 i = 0xff ~j=0xffffffff 所以不相等

定義 改成char i = 0, j = 0; 則輸出正確

6樓:匿名使用者

錯誤i=255

j=0~j=-1

7樓:

i = 0xff;

j = 0x00;

~j返回0xffffffff

所以i==~j是不成立的

8樓:匿名使用者

既然是無符號的字元型別,這個應該是printf 正確

請教c語言

9樓:匿名使用者

c++ 新華書店。 不要亂刪 系統檔案刪了就廢了

10樓:匿名使用者

本質上來說是一樣的,開啟檔案會開啟已有的一個檔案,刪除當然是刪除已有的檔案

請教c語言中struct的用法

11樓:博學小趙是吃貨

在c語言中,可以使用結構體(struct)來存放一組不同型別的資料。結構體的定義形式為:

struct 結構體名huqinwei;

也許初期看不習慣容易困惑,其實這就相當於:

struct stuffhuqinwei;

把結構體名稱去掉,這樣更簡潔,不過也不能定義其他同結構體變數了——至少我現在沒掌握這種方法。

結構體變數及其內部成員變數的定義及訪問。

要分清結構體變數和結構體內部成員變數的概念。

就像剛才的第二種提到的,結構體變數的宣告可以用:

struct stuff yourname;

其成員變數的定義可以隨宣告進行: struct stuff huqinwei = ;

也可以考慮結構體之間的賦值:

struct stuff faker = huqinwei;

//或 struct stuff faker2;

// faker2 = faker;

列印,可見結構體的每一個成員變數一模一樣

如果不使用上邊兩種方法,那麼成員陣列的操作會稍微麻煩(用for迴圈可能好點)

huqinwei.job[0] = 'm';

huqinwei.job[1] = 'a';

huqinwei.age = 27;

huqinwei.height = 185;

結構體成員變數的訪問除了可以藉助符號".",還可以用"->"訪問。

12樓:

先申明結構體,也就是定義結構體具體形式,而後可以把它當做普通資料型別來修飾變數,也可以在定義型別時後面直接跟著定義幾個變數

通過變數名和點操作符來訪問結構體中各個成員,如果是指標,則用->符號來訪問結構體中的成員 例如:

strcut mydata haha;

這就定義了一個結構體,名稱為mydata有幾個不同在型的資料成員,而後面直接定義了一個這種結構體型別的變數例項 haha

可以給它們賦值 haha.i = 100; haha.c='\n';haha.p = "這是個串"; strcpy(haha.arr,haha.p);

haha.selftp=&haha;

另定義一個指標: mydata *p;

p=&haha;

p->arr[9] = 0;

想怎麼用就怎麼用,基本的和非基本的資料型別都可以整到裡面,用得怎麼樣,就看你發揮了,最靈活的一個型別,相當於是充許你自定義資料的組合

13樓:匿名使用者

是一種資料的型別,類似用記錄,裡面有一些欄位

比如一個學生資訊,可以有名字欄位,學號欄位,成績欄位。。

14樓:育知同創教育

這是用來定義結構的函式

例如:struct student;

請教如何用c語言輸出特殊字元

請教c語言

請教c語言程式設計

請教c語言問題?

15樓:匿名使用者

第一題 結果是5.5 第二題 char x = 『a』 x = x-30; 這樣就把小寫字母,換成大寫字母了。

16樓:匿名使用者

結果是4.5

2.#include

int main(void)

char s;

s='a';

printf("%c",s-32);

return 0;

請會C語言的請教一下

在呼叫scanf前,需要先呼叫fflush stdin 以清空輸入快取 否則,輸入快取中的殘留會導致意外的結果 也是直接結束了,不過是多了句結束語吧,非exit退出都會出現這種現象 nerror 107374176.000000?107374176.000000 107374176.000000 c...

c語言請教

b是一個指標變數,沒有初始化,它不指向任何值,for裡面的語句是毫無意義的!如果你是想將a拷貝給b,那就不需要那麼複雜了,如下 include int main 有,且還不少 1.從迴圈看,你要使 a i 0 作為終止條件,但是char a所指的字串並未包含 0,你至少得這麼定義 char a i ...

請教有關c語言的問題,請教一個有關C語言的問題

註釋一是幫助自己記憶設計程式時的思路,以備以後修改 一是在別人讀取你的程式時能讀懂。這個是利己利他的一項工作。如果程式中有比較重要的介面呼叫規則 複雜的演算法 重要的分支 容易混淆等情況時,可以加上一些註釋實現上述功能。如果這個程式是要公用的話,就更要新增必要的註釋來幫助別人理解程式 少範錯誤 避免...