❶ c語言編程。輸入兩個正整數,分別賦給變數a,b,計算ab之間所有整數之和。
#include<stdio.h>
void main()
{
int a,b,sum=0;
printf("請輸入兩個正整數:\n");
scanf("%d %d",&a,&b);
if(a>b)
{
int temp;
temp=a;a=b;b=temp;
}
for(int i=a;i<=b;i++)sum+=i;
printf("兩者之間所有正整數的和為:%d\n",sum);
}
❷ C語言賦值運算符與賦值表達式
我們都知道基本的賦值運算符是"=",他的優先順序別低於其他的運算符,所以對該運算符往往最後讀取。下面和大家分享一下C語言賦值運算符與賦值表達式,一起來看看吧!
C語言賦值運算符與賦值表達式1
一、賦值運算符與賦值表達式
賦值符號「=「就是賦值運算符,作用是將一個數據賦給一個變數或將一個變數的值賦給另一個變數,由賦值運算符組成的表達式稱為賦值表達式。一般形式為:
變數名=表達式
在程序中可以多次給一個變數賦值,每賦一次值,與它相應的存儲單元中的數據就被更新一次,內存中當前的數據就是最後一次所賦值的那個數據。
例:a=12;此表達式讀作「將10的值賦值給變數a」。
說明:
a、如果賦值號兩邊的運算對象類型不一致,系統會自動進行類型轉換,轉換的規則:將賦值號右邊表達式的值的類型轉換成賦值號左邊變數的類型,
例:inty=3.5;在變數y中最終存儲的是整數3。
b、可以將復製表達式的.值再賦值給變數,形成連續賦值。
例如:x=y=25是一個連續賦值表達式,x=y=25等價於x=(y=25),所以表達式x=y=25最終的值為25。
二、復合的賦值運算符
在賦值運算符之前加上其他運算符可以構成復合賦值運算符。其中與算術運算有關的復合運算符是:+=,—=,x=,/=,%=。
兩個符號之間不可以有空格,復合賦值運算符的優先順序與賦值運算符的相同。表達式n+=1等價於n=n+1,作用是取變數n中的值增1再賦給變數n,其他復合的賦值運算符的運算規則依次類推。
如求表達a+=a—=axa的值,其中a的初值為12。
步驟:
(1)先進行「a—=axa「運算,相當於a=a—axa=12—144=—132。
(2)再進行「a+=—132「運算,相當於a=a+(—132)=—132—132=—264。
C語言賦值運算符與賦值表達式2
其一般形式為:
變數=表達式
例如:
x=a+b
w=sin(a)+sin(b)
y=i+++--j
賦值表達式的功能是計算表達式的值再賦予左邊的變數。賦值運算符具有右結合性,因此a=b=c=5可理解為a=(b=(c=5))。
在其它高級語言中,賦值構成了一個語句,稱為賦值語句。 而在C中,把「=」定義為運算符,從而組成賦值表達式。 凡是表達式可以出現的地方均可出現賦值表達式。
例如:式子x=(a=5)+(b=8)是合法的。它的意義是把5賦予a,8賦予b,再把a,b相加,和賦予x,故x應等於13。
在C語言中也可以組成賦值語句,按照C語言規定,任何錶達式在其未尾加上分號就構成為語句。因此如x=8;a=b=c=5;都是賦值語句,在前面各例中我們已大量使用過了。
類型轉換
如果賦值運算符兩邊的數據類型不相同,系統將自動進行類型轉換,即把賦值號右邊的類型換成左邊的類型。具體規定如下:
實型賦予整型,捨去小數部分。
整型賦予實型,數值不變,但將以浮點形式存放,即增加小數部分(小數部分的值為0)。
字元型賦予整型,由於字元型為一個位元組,而整型為二個位元組,故將字元的ASCII碼值放到整型量的低八位中,高八位為0。整型賦予字元型,只把低八位賦予字元量。
【例3-18】
#include
int main(void){
int a,b=322;
float x,y=8.88;
char c1=k,c2;
a=y;
x=b;
a=c1;
c2=b;
printf("%d,%f,%d,%c",a,x,a,c2);
return 0;
}
本例表明了上述賦值運算中類型轉換的規則。a為整型,賦予實型量y值8.88後只取整數8。x為實型,賦予整型量b值322, 後增加了小數部分。字元型量c1賦予a變為整型,整型量b賦予c2 後取其低八位成為字元型(b的低八位為01000010,即十進制66,按ASCII碼對應於字元B)。
注意:經大家反饋,筆者發現上面的例子容易造成誤解,現已對代碼進行更改,更改時間 2014-07-04 09:12:45,看評論的讀者請注意評論時間,不要混淆。
更改後的代碼如下:
#include
int main(void){
int a,c,b=322;
float x,y=8.88;
char c1=k,c2;
a=y;
x=b;
c=c1;
c2=b;
printf("a=%d, x=%f, c=%d, c2=%c ", a, x, c, c2);
return 0;
}
輸出結果:
a=8, x=322.000000, c=107, c2=B
復合的賦值運算符
在賦值符「=」之前加上其它二目運算符可構成復合賦值符。如+=、-=、*=、/=、%=、<<=、>>=、&=、^=、|=。
構成復合賦值表達式的一般形式為:
變數 雙目運算符=表達式
它等效於
變數=變數 運算符 表達式
例如:
a+=5 等價於 a=a+5
x*=y+7 等價於 x=x*(y+7)
r%=p 等價於 r=r%p
❸ 用c語言編寫一個程序,從鍵盤上輸入兩個字元給字元變數a,b,並輸出變數a,b的值。
程序代碼如下:x0dx0a#include
❹ 定義兩個變數ab如何用c語言編程使兩個變數的值能相互交換
1、首先,就是最基本的知識,寫頭文件,函數聲明,定義變數。
❺ c語言 中'ab'的值
a的ASCII碼是10進制的97,16進制的61,b的ASCII碼是10進制的98,16進制的62,順序寫到一起是16進制的6162,轉換為10進制就是24930。
'ab'佔用2個位元組(字面上是這樣),賦給int類型變數在某些編譯器(如Dev-C++)中是可能的,但沒有推廣價值,也米有應用價值,所以這也不會出現在考試、或者筆試題目中。
❻ 如何用c語言給變數a,b賦值,賦值范圍是確定的。
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
❼ 如何用c語言給變數a,b賦值,賦值范圍是確定的。
用隨機數賦值。
/*
通過1+
rand()%10
產生
1-10
的隨機數
*/
#include<stdio.h>
#include<stdlib.h>
//
rand
能生成0到RAND_MAX(在<stdlib.h>頭文件中定義的符號常量)之間的整數
int
main()
{
int
a,
b;
a=1+(rand()%10);
b=1+(rand()%10);
while(a==b)
b=1+(rand()%10);
printf("%d
%d",a,b);
return
0;
}