⑴ 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語言運算符中有不少為右結合性,應注意區別,以避免理解錯誤。
⑵ 關於C語言兩個大數相乘
//#include
<stdafx.h>
//此頭文件不可丟
#include
<stdio.h>
#include
<string.h>
#define
N
200
//預編譯將後面數組的的長度定義為200;
int
main()
{
void
GetDigits(int
a[],
char
s[]);
void
multiply(int
a[],
int
b[],
int
c[]);
char
s1[N],
s2[N];
//起初定義兩個字元串數組s1和s2,用來存儲兩個相乘的大數;
int
i,
j,
a[N],
b[N],
c[N
*
2];
printf("\n
input
number
a:
");//輸入兩個數字的字元串;
scanf("%s",
s1);
printf("\n
input
number
b:
");
scanf("%s",
s2);
//把輸入的字元串,按位存放到數組
GetDigits(a,
s1);
GetDigits(b,
s2);
multiply(a,
b,
c);
//找到最高位
j
=
N
*
2
-
1;
while(c[j]
==
0)
j--;
//列印計算結果
printf("\n
%s
*
%s=",
s1,
s2);
for(i
=
j;
i
>=
0;
i--)
printf("%d",
c[i]);
return
0;
}
//下面Getsights函數的目的是把字元串形式的數字按位存放到數組
void
GetDigits(int
*a,
char
*s)
{
int
i;
char
digit;
int
len
=
strlen(s);
for(i
=
0;
i
<
N;
i++)
a[i]
=
0;
for(i
=
0;
i
<
len;
i++)
{
digit
=
s[i];
a[len
-
1
-
i]
=
digit
-
'0';
}
}
//把a*b的結果存儲到數組c中,按位表示;
void
multiply(int
*a,
int
*b,
int
*c)
{
int
i,
j;
for(i
=
0;
i
<
N
*
2;
i++)
c[i]
=
0;
//先把結果數組設置為0;
for(i
=
0;
i
<
N;
i++)
for(j
=
0;
j
<
N;
j++)
c[i
+
j]
+=
a[i]
*
b[j];
//
處理進位
for(i
=
0;
i
<
N
*
2
-
1;
i++)
{
c[i
+
1]
+=
c[i]
/
10;
//進位累加到高位
c[i]
=
c[i]
%
10;
//該位的最後結果
}
}
⑶ c語言乘法計算
#include<stdio.h>//因為要用到scanf和printf函數,需要包含這個頭文件
voidmain(){inta,b,c;//沒有返回值的main函數
scanf("%d%d",&a,&b);//因為題目要求用空格分隔兩個數因此不可以用%d,%d
c=a*b;
printf("%d ",c);
//由於前面聲明main函數是void型,因此這里可以寫return;或者省略
}
⑷ 用C語言怎麼乘啊
直接使用:19*23*149即可。
在c語言中,加減乘除運算符號分別為:+,-,*,/。%表示取余符號,例如a%b即求a除以b後的余數,c語言中括弧運算只能使用()。
例如:
#include<stdio.h>
intmain(){
intn;
n=19*23*149;
printf("%d ",n);
return0;
}
/*
輸出:
65113
*/
⑸ C語言2個數相乘
兩數相乘的C語言編程:
#include <stdio.h>
void main()
{
int a,b,c;
scanf("%a%b",&a,&b);//輸入兩個整數
c=a*b; //兩個數的相乘運算
printf("兩數相乘的結果: %d\n",c);
}
⑹ C語言:乘號怎樣表示
C語言中乘號用「*」表示。
同時按住【Shift + 8】可打出「*」。
C語言中除號用「/」表示(shift鍵旁邊,需英文狀態下才能打出),求余用「%」表示(同時按住【Shift + 5】可打出)。
(6)c語言如何相乘擴展閱讀
其他運算符
加法運算符 6級
「 + 」加法運算符;「 - 」減法運算符。
移位運算符 7級
<< 左移運算符;>> 右移運算符。
關系運算符 8級
<、<=、>、>=關系運算符。
相等運算符 9級
「 == 」等於運算符;「 != 」不等於運算符。
位與運算符 10級
「 & 」按位與運算符
位異或運算符 11級
「 ∧ 」按位異或運算符(Bitwise exclusive OR operator)。
位或運算符 12 級
「 | 」按位或運算符(Bitwise inclusive OR operator)。
邏輯與運算符 13級
「&&」邏輯與運算符。
邏輯或運算符 14 級
「 || 」邏輯或運算符。
三元條件運算符 15級
? :條件運算符。
賦值運算符 16 級
=、 +=、 -=、 *=、 /=、 %=、 &=、 ^=、 |=、 <<=、 >>=賦值運算符。
逗號運算符 17級
「,」逗號運算符。
[pre]C 語言中,逗號(,)也可以是運算符,稱為逗號運算符(Comma Operator)。逗號運算符可以把兩個以上(包含兩個)的表達式連接成一個表達式,稱為逗號表達式。其一般形式為:子表達式1, 子表達式2, ..., 子表達式n。例如:a + b, c = b, c++。
逗號運算符的優先順序是所有運算符中級別最低的,通常配合 for 循環使用。逗號表達式最右邊的子表達式的值即為逗號表達式的值。上例中,c++ 的值(c 自增之前的值)即為該表達式的值。
逗號運算符保證左邊的子表達式運算結束後才進行右邊的子表達式的運算。也就是說,逗號運算符是一個序列點,其左邊所有副作用都結束後,才對其右邊的子表達式進行運算。因此,上例中,c 得到 b 的值後,才進行自增運算。
⑺ c語言乘法
嚴格來講,你的代碼是錯誤的,用int的b接收double型的a的計算結果,是不可以的,即使結果是整數。
結果當然也會出現誤差。正確的應該是:
double a=10.3845;
double b;
b=10000*a;
printf("%lf",b);
補充:把上面 printf("%lf",b);改為printf("%.0lf",b); 就能使後面無小數。
⑻ 用c語言實現兩個矩陣相乘怎麼做
1、程序運行輸入數據時,第一行為A矩陣的行列數和B矩陣的行列數,接著分別輸入A、B兩個矩陣的值。
⑼ C語言中求兩數相乘的程序
思路:double類型的范圍:
-1.7*10(-308)~1.7*10(308),如果兩個數的乘積不超過這樣的精度,可以直接使用*符號進行運算。
參考代碼:
#include<stdio.h>
int main()
{
double a,b;
scanf("%lf%lf",&a,&b);
printf("%.2lf",a*b); //保留兩位小數
return 0;
}
/*
運行結果:
1205 5985
7211925.00
*/