中大網路教育C語言作業
⑴ 單片機中大都使用什麼語言編程
學習單片機實在不是件易事,一來要購買高價格的編程器,模擬器,二來要學習編程語 言,還有眾多種類的單片機選擇真是件讓人頭痛的事。在眾多單片機中 51 架構的晶元風行 很久,學習資料也相對很多,是初學的較好的選擇之一。51 的編程語言常用的有二種,一 種是匯編語言,一種是 C 語言。匯編語言的機器代碼生成效率很高但可讀性卻並不強,復 雜一點的程序就更是難讀懂,而 C 語言在大多數情況下其機器代碼生成效率和匯編語言相 當,但可讀性和可移植性卻遠遠超過匯編語言,而且 C 語言還可以嵌入匯編來解決高時效 性的代碼編寫問題。對於開發周期來說,中大型的軟體編寫用 C 語言的開發周期通常要小 於匯編語言很多。
記得採納啊
⑵ 用c語言表達式來描述:將x,y中大的值送給d
好吧,就這個了
d=(x>y)?x:y
這個不要加分號,就是一個表達式,賦值表達式。如果加上分號,就成了語句了,C語言所有的表達式加上分號,就成了表達式語句了。
⑶ 中山大學的C語言教程是什麼,一套的
不同學院可能不一樣,我們大一的時候是用的一本叫做 《C How to Program》的英文書。
⑷ C語言中大括弧{ }, 有什麼意思具體怎麼用
函數包含語句范圍標示if(){這里的語句都屬於if為真時候執行的語句}main(){這里的語句都是主函數的執行語句}class N{這里都是類N的成員};struct student{這里都是結構體student的成員};
⑸ 單片機中大都使用什麼語言編程
一、使用的語言編程
一般接觸的就是匯編和C語言。但還有其他可選擇的項目,比如AVR單片機可以用BASIC;ARM9、ARM11等高端的用C++。
二、什麼是匯編
匯編大多是指匯編語言,匯編程序。把匯編語言翻譯成機器語言的過程稱為匯編。在匯編語言中,用助記符(Memoni)代替操作碼,用地址符號(Symbol)或標號(Label)代替地址碼。這樣用符號代替機器語言的二進制碼,就把機器語言變成了匯編語言。於是匯編語言亦稱為符號語言。用匯編語言編寫的程序,機器不能直接識別,要由一種程序將匯編語言翻譯成機器語言,這種起翻譯作用的程序叫匯編程序,匯編程序是系統軟體中語言處理的系統軟體。
三、什麼是c語言
C語言是一門通用計算機編程語言,應用廣泛。C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、產生少量的機器碼以及不需要任何運行環境支持便能運行的編程語言。盡管C語言提供了許多低級處理的功能,但仍然保持著良好跨平台的特性,以一個標准規格寫出的C語言程序可在許多電腦平台上進行編譯,甚至包含一些嵌入式處理器(單片機或稱MCU)以及超級電腦等作業平台。
C語言繪圖能力強,具有可移植性,並具備很強的數據處理能力,因此適於編寫系統軟體,三維,二維圖形和動畫。它是數值計算的高級語言。
常用的編譯軟體有Microsoft Visual C++,Borland C++,gcc(linux系統下最常用的編譯器),Watcom C++ ,Borland C++, Borland C++ Builder,Borland C++ 3.1 for DOS,Watcom C++ 11.0 for DOS,GNU DJGPP C++, Lccwin32 C Compiler 3.1,Microsoft C,High C等。
⑹ c語言中大括弧使用問題 if語句可以沒有大括弧 while可不可以沒有大括弧
如果跟單條語句可以沒有大括弧
⑺ C語言編程中大括弧的作用,哪些可省略
大括來號的作用就是把括起來的語自句看成是一個整體,你可以把它當成一條語句。
如果if else while for這些判斷或循環語句後面的執行語句只有一條,就可以省略大括弧。
例如:
if(a>b)
{a = b;}
可以寫成:
if(a>b)
a = b;
⑻ C語言編程中大括弧的作用,哪些可省略
函數、程序塊必須用,選擇如if
在滿足條件的情況下需要執行的多條語句要用大括弧,如果是單條語句則可以省略,循環如for後面的循環體包括多條語句時也必須使用大括弧,單條語句可以省略
⑼ C語言,如下代碼中大括弧能穿透執行嗎
沒什麼不同,多餘的括弧直接被編譯器幹掉了
⑽ 求C語言高精度除法中大數除以大數的代碼,盡量精簡,能看懂就行
#include <stdio.h>
#include <string.h>
#define MAX_LEN 200
char a[MAX_LEN + 10];
char b[MAX_LEN + 10];
int va[MAX_LEN + 10]; //被除數, an1[0]對應於個位
int vb[MAX_LEN + 10]; //除數, an2[0]對應於個位
int vc[MAX_LEN + 10]; //存放商,aResult[0]對應於個位
//長度為 nLen1 的大整數p1 減去長度為nLen2 的大整數p2
//結果放在p1 里,返回值代表結果的長度
//如不夠減返回-1,正好減完返回 0
//下面判斷p1 是否比p2 大,如果不是,返回-1
int Substract( int * p1, int * p2, int nLen1, int nLen2)
{
int i;
if( nLen1 < nLen2 )
return -1;
if( nLen1 == nLen2 )
{
for( i = nLen1-1; i >= 0; i -- )
{
if( p1[i] > p2[i] ) break; //p1>p2
else if( p1[i] < p2[i] ) return -1; //p1<p2
}
}
for( i = 0; i < nLen1; i ++ )
{ //要求調用本函數確保當i>=nLen2 時,p2[i] = 0
p1[i] -= p2[i];
if( p1[i] < 0 )
{
p1[i]+=10;
p1[i+1] --;
}
}
for( i = nLen1 -1 ; i >= 0 ; i-- )
if( p1[i] )//找到最高位第一個不為0
return i + 1;
return 0;//全部為0,說明兩者相等
}
int main()
{
freopen("test.txt","r",stdin);
int test;
scanf("%d",&test);
while(test--){
scanf("%s", a);
scanf("%s", b);
int i, j;
int lena = strlen(a);
memset( va, 0, sizeof(va));
memset( vb, 0, sizeof(vb));
memset(vc, 0, sizeof(vc));
for( j = 0, i = lena - 1;i >= 0 ; i --)
va[j++] = a[i] - '0';
int lenb = strlen(b);
for( j = 0, i = lenb - 1;i >= 0 ; i --)
vb[j++] = b[i] - '0';
if( lena < lenb )
{
printf("0\n");
continue;
}
int nTimes = lena - lenb;
if(nTimes > 0)
{
for( i = lena -1; i >= nTimes; i -- )
vb[i] = vb[i-nTimes];//朝高位移動
for( ; i >= 0; i--)//低位補0
vb[i] = 0;
lenb = lena;
}
for( j = 0 ; j <= nTimes; j ++ )
{
int nTmp;
//一直減到不夠減為止
//先減去若干個 an2×(10 的 nTimes 次方),
//不夠減了,再減去若干個 an2×(10 的 nTimes-1 次方),......
while( (nTmp = Substract(va, vb+j, lena, lenb-j)) >= 0)
{
lena = nTmp;
vc[nTimes-j]++; //每成功減一次,則將商的相應位加1
}
}
//下面輸出結果,先跳過高位0
for( i = MAX_LEN ; (i >= 0) && (vc[i] == 0); i -- );
if( i >= 0)
for( ; i>=0; i--)
printf("%d", vc[i]);
else
printf("0");
printf("\n");
}
return 0;
}