c語言乘法運算
1. c語言,求任意兩數相乘的積!
#include <stdio.h>
void main()
{
int a,b,c;
printf("請輸入a和b的值:");
scanf("%d %d", &a, &b);
c = a * b;
printf("a*b = %d ",c);
}
(1)c語言乘法運算擴展閱讀:
C語言中,運算符的運算優先順序共分為15 級。1 級最高,15 級最低。 在表達式中,優先順序較高的先於優先順序較低的進行運算。而在一個運算量兩側的運算符 優先順序相同時,則按運算符的結合性所規定的結合方向處理。
結合性:C語言中各運算符的結合性分為兩種,即左結合性(自左至右)和右結合性(自右至左)。例如算術運算符的結合性是自左至右,即先左後右。如有表達式x-y+z 則y 應先與「-」號結合,執行x-y 運算,然後再執行+z 的運算。這種自左至右的結合 方向就稱為「左結合性」。
而自右至左的結合方向稱為「右結合性」。最典型的右結合 性運算符是賦值運算符。如x=y=z,由於「=」的右結合性,應先執行y=z 再執行x=(y=z)運算。C語言運算符中有不少為右結合性,應注意區別,以避免理解錯誤。
2. C語言2個數相乘
兩數相乘的C語言編程:
#include <stdio.h>
void main()
{
int a,b,c;
scanf("%a%b",&a,&b);//輸入兩個整數
c=a*b; //兩個數的相乘運算
printf("兩數相乘的結果: %d\n",c);
}
3. c語言大整數乘法
#include<stdio.h>
#include<string.h>
void chengfa(char *a,char*b)
{
char c[10000];
int fuhao1,fuhao2;
if(a[0] == '-' || a[0] == '+') {
if(a[0] == '-')
fuhao1 = -1;
else fuhao1 = 1;
strcpy(c,a+1);
strcpy(a,c);
}
if(b[0] == '-' || b[0] == '+') {
if(b[0] == '-')
fuhao2 = -1;
else fuhao2 = 1;
strcpy(c,b+1);
strcpy(b,c);
}
int i , j;
for(i = 0; i< 10000;i++){
c[i] = '鄭衫0';
}
int lena = strlen(a);
int lenb = strlen(b);
for(i = lena-1;i >=0;i--){
int k = 0;
for(j = lenb-1;j >=0;j--) {
char l = c[i+j+1];
c[i+j+1] = (c[i+j+1]-'0'+(b[j]-'0')*(a[i]-'0')+k)%10+'0';
k = (l-'0'+(b[j]-'0') * (a[i] -'0')+k)/10;
}
if(k!= 0) c[i] += k;
}
i = 0;
j = 0;
while(c[i] == '0') i++;
while(i <= lena+lenb-1) {
a[j] = c[i];
j ++;
i ++;
}
a[j] = '銷逗\0';
if(a[0] == '\0') a[0] = '0',a[1] = '\0';
if(fuhao1*fuhao2 == -1 && a[0] !='0') {
strcpy(c,a);
a[0] = '-';
a[1] = '\0';
strcat(a,c);
}
}
int main()
{
char a[10000],b[10000];
while(scanf("%s %s",a,b) == 2) {
chengfa(a,b);
printf("%s\喊斗腔n",a);
}
}
/*
//測試數據
3 4
12
1782362317836127863178 5
8911811589180639315890
2364782367834627864826 23478962483263478
*/
4. 乘法在c語言中怎麼表示比如加法是add
估計你的意思是說C語言編譯成匯編語言之後乘法怎麼表示吧,因為在匯編中加法確實是用ADD表示的,下面給你運算符表:
ADD
加法.
ADC
帶進位加法.
INC
加
1.
AAA
加法的ASCII碼調整.
DAA
加法的十進制調整.
SUB
減法.
SBB
帶借位減法.
DEC
減
1.
NEC
求反(以
0
減之).
CMP
比較.(兩操作數作減法,僅修改標志位,不回送結果).
AAS
減法的ASCII碼調整.
DAS
減法的十進制調整.
MUL
無符號乘法.
IMUL
整數乘法.
以上兩條,結果回送AH和AL(位元組運算),或DX和AX(字運算),
AAM
乘法的ASCII碼調整.
DIV
無符號除法.
IDIV
整數除法.
以上兩條,結果回送:
商回送AL,余數回送AH,
(位元組運算);
或
商回送AX,余數回送DX,
(字運算).
AAD
除法的ASCII碼調整.
CBW
位元組轉換為字.
(把AL中位元組的符號擴展到AH中去)
CWD
字轉換為雙字.
(把AX中的字的符號擴展到DX中去)
CWDE
字轉換為雙字.
(把AX中的字元號擴展到EAX中去)
CDQ
雙字擴展.
(把EAX中的字的符號擴展到EDX中去)
5. 用c語言實現兩個矩陣相乘怎麼做
1、程序運行輸入數據時,第一行為A矩陣的行列數和B矩陣的行列數,接著分別輸入A、B兩個矩陣的值。
6. C語言乘號用法
C語言中*是二元運算符:乘號,用於將兩個表達式的值相乘;
也是一元運算符:取值,用在指針表達式的左邊,取指針指向的存儲位置的值。
使用示例:
#include <stdio.h>
int main()
{
int a = 12;
int b = 100;
float c = 8.5;
int m = a + b;
float n = b * c;
double p = a / c;
int q = b % a;
printf("m=%d, n=%f, p=%lf, q=%d ", m, n, p, q);
return 0;
}
(6)c語言乘法運算擴展閱讀
C語言後綴表達式2級
postfix-expression [ expression ],數組下標運算。
postfix-expression ( argument-expression-list),函數調用,括弧內的參數可選。
postfix-expression . identifier,成員訪問,
postfix-expression -> identifier,成員訪問,->號之前應為指針。
postfix-expression ++,後綴自增
postfix-expression --,後綴自減
( type-name ) { initializer-list }
( type-name ) { initializer-list , } 復合初始化,C99後新增。