❶ c語言中,有哪些算術運算符
C語言中算術運算符有以下這些
實例:
#include<stdio.h>
intmain()
{
inta=21;
intb=10;
intc;
c=a+b;
printf("Line 1 - c 的值是 %d ",c);
c=a-b;
printf("Line 2 - c 的值是 %d ",c);
c=a*b;
printf("Line 3 - c 的值是 %d ",c);
c=a/b;
printf("Line 4 - c 的值是 %d ",c);
c=a%b;
printf("Line 5 - c 的值是 %d ",c);
c=a++; // 賦值後再加 1 ,c 為 21,a 為 22
printf("Line 6 - c 的值是 %d ",c);
c=a--; // 賦值後再減 1 ,c 為 22 ,a 為 21
printf("Line 7 - c 的值是 %d ",c);
return0;
}
當上面的代碼被編譯和執行時,它會產生下列結果:
Line 1 - c 的值是 31
Line 2 - c 的值是 11
Line 3 - c 的值是 210
Line 4 - c 的值是 2
Line 5 - c 的值是 1
Line 6 - c 的值是 21
Line 7 - c 的值是 22
(1)c語言運算字元擴展閱讀:
C語言中,除了算數運算符,還提供以下運算符:
1、關系運算符
2、邏輯運算符
3、位運算符
4、賦值運算符
5、雜項運算符
運算符優先順序:
C語言中,運算符的運算優先順序共分為15 級。1 級最高,15 級最低。
在表達式中,優先順序較高的先於優先順序較低的進行運算。而在一個運算量兩側的運算符 優先順序相同時,則按運算符的結合性所規定的結合方向處理。
運算符結合性:
C語言中各運算符的結合性分為兩種,即左結合性(自左至右)和右結合性(自右至左)。例如算術運算符的結合性是自左至右,即先左後右。
如有表達式x-y+z 則y 應先與「-」號結合,執行x-y 運算,然後再執行+z 的運算。這種自左至右的結合 方向就稱為「左結合性」。而自右至左的結合方向稱為「右結合性」。
最典型的右結合 性運算符是賦值運算符。如x=y=z,由於「=」的右結合性,應先執行y=z 再執行x=(y=z)運算。C語言運算符中有不少為右結合性,應注意區別,以避免理解錯誤。
優先順序從上到下依次遞減,最上面具有最高的優先順序,逗號操作符具有最低的優先順序。
所有的優先順序中,只有三個優先順序是從右至左結合的,它們是單目運算符、條件運算符、賦值運算符。其它的都是從左至右結合。
具有最高優先順序的其實並不算是真正的運算符,它們算是一類特殊的操作。()是與函數相關,[]與數組相關,而->及.是取結構成員。
其次是單目運算符,所有的單目運算符具有相同的優先順序,因此在我認為的 真正的運算符中它們具有最高的優先順序,又由於它們都是從右至左結合的,因此*p++與*(p++)等效是毫無疑問的。
❷ C語言中算術運算符%,++,— —,都是什麼意思能舉例子說明嗎
C語言中,算術運算符「%」代表模(取余)運算,「++」代表變數自增運算,「--」代表變數自減運算。
1、模運算「%」
「模」是「Mod」的音譯,模運算多應用於程序編寫中。 Mod的含義為求余。模運算在數論和程序設計中都有著廣泛的應用,從奇偶數的判別到素數的判別,從模冪運算到最大公約數的求法,從孫子問題到凱撒密碼問題,無不充斥著模運算的身影。
C語言用「%」代表模運算,例如7%2=1、8%5=3等。
2、自增運算「++」
C語言用「++」代表自增運算,分為前綴自增和後綴自增,其效果均為自身變數值+1。前綴自增例如「a=5;b=++a;」,則運行結果是「a=6,b=6」。後綴自增例如「a=5;b=a++;」,則運行結果是「a=6,b=5」。
3、自減運算「--」
C語言用「--」代表自減運算,分為前綴自減和後綴自減,其效果均為自身變數值-1。前綴自減例如「a=5;b=--a;」,則運行結果是「a=4,b=4」。後綴自減例如「a=5;b=a--;」,則運行結果是「a=4,b=5」。
(2)c語言運算字元擴展閱讀:
C語言常用運算符:
+:加法
-:減法
<<:位左移
>>:位右移
<:小於
<=:小於等於
>:大於
>=:大於等於
+=:加賦值運算
-=:減賦值運算
*=:乘賦值運算
/=:除賦值運算
%=:模賦值運算
❸ C語言中都有哪些運算符
運算符的種類C語言的運算符可分為以下幾類:
1.算術運算符
用於各類數值運算。包括加(+)、減(-)、乘(*)、除(/)、求余(或稱模運算,%)、自增(++)、自減(--)共七種。
2.關系運算符
用於比較運算。包括大於(>)、小於(<)、等於(==)、
大於等於(>=)、小於等於(<=)和不等於(!=)六種。
3.邏輯運算符
用於邏輯運算。包括與(&&)、或(||)、非(!)三種。
4.位操作運算符
參與運算的量,按二進制位進行運算。包括位與(&)、位或(|)、位非(~)、位異或(^)、左移(<<)、右移(>>)六種。
5.賦值運算符
用於賦值運算,分為簡單賦值(=)、復合算術賦值(+=,-=,*=,/=,%=)和復合位運算賦值(&=,|=,^=,>>=,<<=)三類共十一種。
6.條件運算符
這是一個三目運算符,用於條件求值(?:)。
7.逗號運算符
用於把若干表達式組合成一個表達式(,)。
8.指針運算符
用於取內容(*)和取地址(&)二種運算。
9.求位元組數運算符
用於計算數據類型所佔的位元組數(sizeof)。
10.特殊運算符
有括弧(),下標[],成員(→,.)等幾種。
❹ c語言中的字元型的運算。
#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
void k_add(string a, string b, int k)
{
//將長的字元串放在前面
if (a.size() < b.size())
{
string temp = a;
a = b;
b = temp;
}
//對源字元串進行翻轉
reverse(a.begin(), a.end());
reverse(b.begin(), b.end());
bool carry = false; //進位
//字元串相加
size_t i = 0;
for (; i < b.size(); i++)
{
if (i < b.size())
{
a[i] += b[i] - '0';
if (carry) a[i] += 1;
carry = false;
if (a[i] >= k + '0')
{
a[i] -= k;
carry = true;
}
}
}
for (; i < a.size(); i++)
{
if (carry) a[i] += 1;
carry = false;
if (a[i] >= k + '0')
{
a[i] -= k;
carry = true;
}
}
if (carry)
{
a.push_back('1');
}
//輸出
bool begin = false;
for (int j = a.size() - 1; j >= 0 ; j--)
{
if (a[j] > '0')
{
begin = true;
}
if (begin)
{
cout << a[j];
}
}
cout << endl;
}
簡單模擬即可
10進制測試
❺ C語言 運算符%是怎麼運算的
C語言中%的作用:%作為運算符是用來取余的
運算符(operator)是可以對數據進行相應操作的符號。如對數據求和操作,用加法運算符 '+',求積操作使用乘法運算符 '*' ,求余數用運算符'%'。等等
例如 :
一、25%4=1 ;25除以4商6餘數是1
二、33%5=3 ;33除以5商6餘數是3
(5)c語言運算字元擴展閱讀:
C語言常用的運算符
1. 算術運算符
用於各類數值運算。包括加(+)、減(-)、乘(*)、除(/)、求余(或稱模運算,%)、自增(++)、自減(--)共七種。
2.關系運算符
用於比較運算。包括大於(>)、小於(<)、等於(==)、 大於等於(>=)、小於等於(<=)和不等於(!=)六種。
3.邏輯運算符
用於邏輯運算。包括與(&&)、或(||)、非(!)三種。
4.位操作運算符
參與運算的量,按二進制位進行運算。包括位與(&)、位或(|)、位非(~)、位異或(^)、左移(<<)、右移(>>)六種。
5.賦值運算符
用於賦值運算,分為簡單賦值(=)、復合算術賦值(+=,-=,*=,/=,%=)和復合位運算賦值(&=,|=,^=,>>=,<<=)三類共十一種。
6.條件運算符
這是一個三目運算符,用於條件求值(?:)。
7.逗號運算符
用於把若干表達式組合成一個表達式(,)。
8.指針運算符
用於取內容(*)和取地址(&)二種運算。
9.求位元組數運算符
用於計算數據類型所佔的位元組數(sizeof)。
10.特殊運算符
有括弧(),下標[],成員(→,.)等幾種。
❻ 關於C語言:運算符的用法
a?b:c這個是條件表達式,也稱三目運算符,表示如果a為真,則表達式值為b,如果a為假,則表達式值為c。
條件表達式語法舉例說明如下:
if(a>b) {max=a} ; else {max=b};
可用條件表達式寫為
max=(a>b)?a:b;
執行該語句的語義是:如a>b為真,則把a賦予max,否則把b 賦予max。
(6)c語言運算字元擴展閱讀
使用條件表達式的注意點:
1、條件運算符的運算優先順序低於關系運算符和算術運算符,但高於賦值符。
因此 max=(a>b)?a:b
可以去掉括弧而寫為 max=a>b?a:b
2、條件運算符?和:是一對運算符,不能分開單獨使用。
3、條件運算符的結合方向是自右至左。
例如: a>b?a:c>d?c:d 應理解為 a>b?a:(c>d?c:d)
❼ C語言字元 運算
我覺得你那句while根本就不可能對~你應該用if語句來判斷,如果按照你用while語句寫的話,那就會一直循環,直到a的值小於'A',你應該用if語句,然後如果是小寫的話,讓它減去32,如果是大寫,就不用動了:
比如你這么寫:
char
a;
scanf("%c",&c);/*由用戶輸入a*/
if(a>'a'&&a<'z')
a=a-32;
printf("%c",a);
上面這個是主要的代碼,樓主再完善完善,不懂再來問