如何用c語言給變數a,b賦值,賦值範圍是確定的

時間 2021-10-14 23:03:19

1樓:匿名使用者

c語言中規定不同的型別的取值範圍是一定的,所以應當將賦值與變數型別想對應。

賦值和初始化時有區別的,初始化如:int a = 1;賦值:int a;a = 1;

要是是從標準的輸入裝置(鍵盤)輸入的值的話:scanf("%d",&a)這裡要注意了,&符號是不能省的,表示的意思是將輸入的值放到變數a的地址(&a)所指向的空間。

希望對你有所幫助。

我的建議是:要是您要學習c的話,不如從c++學:具體點來說:

c只是c++的一部分。對於現在物件導向的程式設計來說,c有點不適應。但c與c++是相通的,c++只是增加了類,並且在c的基礎上做了改進。

要是學c++的話推薦一本書:c++ primer

2樓:

根據你的賦值變數範圍確定具體的資料型別,例如:如果你的賦值範圍是整型、1~1000,則可以為int a=?,b=?

; 或short a=?,b=?;具體檢視基本資料型別範圍。

3樓:維多

程式裡寫的話,就這麼寫:

int a,b;

a=1;

b=2;

如果是要從執行終端手動輸入的話,就這麼寫:

int a,b;

scanf("%d%d", &a, &b);

4樓:匿名使用者

用隨機數賦值。

/* 通過1+ rand()%10 產生 1-10 的隨機數 */#include

#include

// rand 能生成0到rand_max(在標頭檔案中定義的符號常量)之間的整數

int main()

5樓:匿名使用者

先定義變數型別,例如定義a,b為整型int,即int a,b;這樣就決定了a,b的取值範圍在-32768到32767之間了。

如果你想要使a,b不是在-32768到32767之間,而變成0到90等等,你可以定義int a;int c=a%100(可以變);這樣的話c的範圍就變小了。具體也講不清楚,你如果看不明白的話可以繼續問我哦、

6樓:

先定義變數型別 比如整形是 int 定義x y

int x=1,y=2;

7樓:沉沉卡

int a,b;

1

1

a!=b;

但這樣不能執行,在後面還需要給ab賦值才行賦值一般是一個確定的值,除非在條件中才用範圍

8樓:恭俊達

c語言中不同的變數型別有不同的取值範圍,根據範圍確定該變數的型別。

給變數賦值有多種不同的方法。最簡單的可以用賦值語句“a=什麼;b=什麼;”。

也可以呼叫scanf函式如:“scanf("%d%d",&a,&b);"。不過你提到問題有點模糊,不太好具體回答,如果還有疑問歡迎提問。

9樓:匿名使用者

//先定義變數a,b的型別

//比如

int a,b; //定義a,b為int型,也就是整型,範圍是-32768到32767

//然後可以賦值啦

//比如

a=1,b=2; // 這裡 = 不是等號,是賦值號,等號是 ==

//也可以直接在定義時賦值,

int a=1,b=2;

//輸入的話是

scanf("%d%d",&a,&b); //int 型用%d long型用%ld,樓上那位少了 & 地址符

//賦值範圍是根據定義的型別決定的,看你需要了

10樓:匿名使用者

scanf("%d%d",a,b);

11樓:匿名使用者

多翻翻書就知道了……

12樓:匿名使用者

例如int a=1;b=2

13樓:dotaer小劍

用rand()隨機函式吧!

14樓:行年十八載

不懂你在說什麼?

不太清楚你的問題。

c語言中a=b,意思是說把b賦值給a,還是說把b裡面的值賦值給a?

15樓:墨汁諾

當a和b為普通變數時, a=b,是把b的值賦值給a, b不變;

當a和b為指標時, a=b, 是把b的指向回賦值給答a, 讓a也可以指向b的指向,b的指向不變;

比如 a=1 b=2 c=3,把b賦值給a 就是 a=b 因為b是等於2的 現在 a=b=2。

把b值賦給a指的是把b的值代入a裡,打個比方,a=b,而b=100,那麼,在這個式子中,把b值賦給a就指的是a=b=100,也就是a=100。

16樓:姚老頭兒

把b裡面的值賦值給a,更準確!一般嫌麻煩簡單的說:b賦值給a,同時b還是原來的值,a改變了!

17樓:獵人的背後

是說把b賦值給a

但是b還是原來的值

請問:微控制器c語言中如何實現將變數a中某1位賦值給b中某1位的操作?

18樓:匿名使用者

假如將a第三位賦給b第二位

對於c51架構微控制器,可使用位定址:

bdata a, b;

sbit a3 = a^3; //位變數指向a第三位sbit b2 = b^2;

b2 = a3;

對於其他任何型別微控制器,可使用位操作巨集(同樣適用於c51):

#define get_bit(var, n) (var & (1<

#define set_bit(var, n) (var |= (1<

#define clr_bit(var, n) (var &= ~(1<

使用方法

if(get_bit(a, 3))set_bit(b, 2);

else clr_bit(b, 2);

這是速度最快的方法。移位操作在編譯的時候已經被優化了。

19樓:

我這個效率最高,因為我查過彙編。不相信你可以測試看看。

以下0x02 和 0x40 是假設的位置。你可以用任何取代。

if (a & 0x02) b |= 0x40;

else b &= ~0x40;

你用移位 << 或者》 速度都慢。

20樓:匿名使用者

changebit(char i,char j,char a, char b)

21樓:匿名使用者

b=((a&0x01)|(b&0xfe))(假定都是最低位,其他位的話改改也ok),沒有判斷,不用跳轉,或許這樣效率高一點

22樓:電子妓院

int a;

a=a&0x40;//第六位

b=b&a;

用c語言編寫一個程式,從鍵盤上輸入兩個字元給字元變數a,b,並輸出變數a,b的值。

23樓:a羅網天下

程式**如下:

#include //編譯預處理命令

int main(int argc, char *ar**) //主函式,字元的宣告

擴充套件知識:

matlab變數的特點:不需事先宣告,也不需指定變數型別,matlab自動根據所賦予變數的值或對變數所進行的操作來確定變數的型別;在賦值過程中,如果變數已經存在,matlab會用新值代替舊值,並以新的變數型別代替舊的變數型別。

變數的預設型別為double。

24樓:匿名使用者

#include

int main()

#include

int main()

25樓:匿名使用者

1、#include

int main(int argc, char *ar**)2、#include

#include

int main(int argc, char *ar**)

在c語言中,當變數a賦值給變數b後,a的值是多少?

26樓:狂雪嬴昭

怎麼會變0啊,你這裡的**沒問題

你全貼出來看看

看了,專應該這

屬樣#include

void

main()

if(a>c)if(b>c)

printf("%d,%d,%d\n",a,b,c);

getch();}

27樓:佴金生邴釵

賦值就是複製懂不,而不是像倒水一樣,倒出來就沒了

c#使用了未賦值的區域性變數,如何賦值?

28樓:匿名使用者

string name1 = “”;

string name2 = “”;

int age1 = 0;

int age2 = 0;

定義變數是直接初始化,養成好的習慣可以減少很多不必要的錯誤。

29樓:汝諾步天心

假設你的number=-1,你會發現你的if一條都沒執行,這時候cost等於多少呢?編譯器沒辦法確回定答cost的值,所以會給你標紅,你需要在定義它的時候初始化一下,如cost=0(如果是c#

7.0,你可以用cost=default),或保證你的if能覆蓋所有情況。

30樓:無秉朋佳

對於string型別的變數,最好的初始賦值是string

name1=null;

string

name2=null;

而判斷是否賦值最好是用

if(name1.length>1)

判斷,之後再輸出比較好

31樓:空湘章元瑤

console.writeline("第二個學員的姓名(0),年齡歲",

name2,

age2);

這句話好像沒有給值吧,樓主

c語言,變數a賦值給b,為什麼a的值還是改變了

32樓:_蘇辰西射手

當a和b為普通變數時, a=b,是把b的值賦值給a, b不變;

當a和b為指標時, a=b, 是把b的指向賦值給a, 讓a也可以指向b的指向,b的指向不變;

c語言中,是如何賦值的?a=b+c=1為什麼是錯的?

33樓:剛哥不會文明

賦值端左面只能是一個儲存資料的符號。。你這裡1賦值給b+c,這是不行的。b+c不是一個儲存資料的符號。

我建議你買本清華大學c++版的工具書,譚浩強出的。。那本書裡比較詳細。

34樓:上虞潘永傑

在c語言中只能給變數賦值,不能給表示式賦值,你這個式子的運算順序是從右到左,1是不能賦值給表示式b+c的

35樓:匿名使用者

a=7+b+c=a+7; //不符合,因來為7是const也就是源常量型別,不可以bai對其賦du值,zhi7+b+c含有常量,對其賦值也是錯誤的

daoc=7+b++=a+7; //同上

a=a+7;//可以

---------------------------------------

b++=7是可以運算的,先賦值b=7,再加1

36樓:蛇的獨孤

因為賦值是賦值給變數的,而b+c不是變數……a=b+c是對的,但是b+c=1是錯誤的

37樓:匿名使用者

vb中賦值的話,應該是"變數=值"的形式,只能是"a=1"

c語言把int型變數a高位賦值給char型變數b其中

右移操作需要區分有符號右移和無符號右移,無符號數右移時在前面補零,有符號數右移時在前面補符號位 0或1 本題16位int型轉化為8位char型,int型的高8位將被階段,實際傳給char型的數值只有低8位,可以用 b char a 8 實現,加上後面的 有利於 的規整性與可讀性 表明你考慮到了右移操...

C語言中static變數的賦值問題

小夏在深圳 static int a 0 執行期時初始化一次,下次再呼叫時,不進行初始化工作如下 printf d a a int main staticlocalvar 第一次呼叫,輸出a 0 staticlocalvar 第二次呼叫,記憶了第一次退出時的值,輸出a 1 return 0 擴充套件...

c語言的賦值問題,C語言指標的賦值問題

上面的說法中,都存在錯誤或不足.1.首先 c a b 的意義是把 a 和 b 這兩個變數的內容 5 和 6 相加得 11,再把 11 這個結果值傳送至 變數 c 所在的儲存單元儲存起來 而不是你想像的 將 a 和 b 這兩個變數組合為一個變數作為 c,或者複製一份變數組合再作為 c.當你用int a...