C語言爭論
① c語言的學習問題
1.如果你真想以後吃程序員這碗飯的話,C語言幾乎就是基礎、必修課程。
2.萬能的編程語言是C++,不過跟C是兼容的,學好C是很重要的。
3.編程的具體領域不同,所以用到的語言一般不同,真正工作起來會要求你學習其他的很多種語言,但跟C有相通之處,可以很快上手。
4.當今社會,最需要的就是人才,程序員的前途也很好,不過你要有真才實學,才能在這條道路上走好,走遠。不能怕苦,要自己鑽研。
5.實習對你很重要,最好有過實際的項目經驗,那樣畢業找工作就相對容易多了。
希望能幫到你!
② c程序對嗎
不對
你要麼寫 c != '\n' /*字元*/
要麼就寫 c != 10;/*10進制*/
要麼就寫 c != '\12'/*8進制*/
要麼就寫 c != '\xa'或'\x0a';/*16進制*/
不能在 x 前加 0,因為轉義符里 \ddd 表示1-3位8進制 \xhh 表示1-2位16進制
哈哈抄樓上的拉, 回車的ASCII碼是13了用製表符表示的8進製表示就是'\15'
你的c=getche(); 錯了拉應該是c=getchar();
還有就是好象你的程序沒有任何你意義,你想要這個程序做什麼呢?
③ 對c語言編程特別有感覺,適合學習別的什麼語言
c語言真的學好了嗎?
問問你
*(void* (*)()0)() 是什麼意思。。。
如果搞懂了,可以學別的語言了。
記住。沒學會走之前,別跑。
④ C語言和C++的區別
C語言與C++的區別有很多,下面是簡要概述:
1、面向不同
C語言是面向過程的,
C++是面向對象的。
函數庫
C語言有標準的函數庫,它們鬆散的,只是把功能相同的函數放在一個頭文件中;
C++對於大多數的函數都是有集成的很緊密,特別是C語言中沒有的C++中的API是對Window系統的大多數API有機的組合,是一個集體。但你也可能單獨調用API。
3、結構概念不同
C言中結構只有成員變數,而沒成員方法,C語而在但是在C語言中結構的成員是公共的,什麼想訪問它的都可以訪問;
C++中結構中,它可以有自己的成員變數和成員函數。
4、寫作數量不同
C語言可以寫很多方面的程序,
C++可以寫得更多更好,C++可以寫基於DOS的程序,寫DLL,寫控制項,寫系統。
5、組織不同
C語言對程序的文件的組織是鬆散的,幾乎是全要程序處理;
C++對文件的組織是以工程,各文件分類明確。
⑤ C語言 %le 是什麼
%le意思是用科學計數法輸出的double數據。
其中%l表示雙精度數據double,e表示科學計數法,也就是指數形式。
比如:
double x = 10;
printf("%l", x) ;//輸出 10.00000
printf("%le", x) ;//輸出 1.00000e+01
(5)C語言爭論擴展閱讀:
printf函數格式字元:
常用的有以下幾種格式字元:
(1)d格式字元。用來輸出十進制整數。有以下幾種用法:
%d,按整型數據的實際長度輸出;
%md,m為指定的輸出欄位的寬度;
%ld,輸出長整型數據。
(2)o格式符,以八進制整型式輸出整數。
(3)x格式符,以十六進制數形式輸出整數。
(4)u格式符,用來輸出unsigned型數據,即無符號數,以十進制形式輸出。
(5)c格式符,用來輸出一個字元。
(6)s格式符,用來輸出一個字元串。
(7)f格式符,用來輸出實數(包括單雙精度),以小數形式輸出。
(8)e格式符,以指數形式輸出實數。
(9)g格式符,用來輸出實數,它根據數值的大小,自動選f格式或e格式(選擇輸出是占寬度較小的一種),且不輸出無意義的零。
(10)p格式符,用於變數地址的輸出。
(11) %[scanfset]:
⑥ C語言到底有幾個版本
有幾種都沒關系,反正基本都是一樣的。
不一樣的版本,使用的語言還是一樣的C,所以不用擔心版本不同。
至於C Builder,應改是C++ Builder 是基於C上的另一種編程語言。
以下是介紹:
一個公司出的以c為基礎的編程工具
C++builder
C++Builder 是Borland公司98年推出的全新32位Windows開發工具。C++Builder 不僅繼承了Delphi使用簡便,功能強大,效率高等特點,而且它還結合C++語言所有優點.是一個Windows環境下基於C++語言進行快速程序開發的集成開發環境,提供了一個強大的可視化控制項庫,能夠使用C++語言方便、快速、高效地進行Windows應用程序開發,尤其是開發界面、資料庫等Windows應用程序更加快速、高效。
C++ Builder是Borland繼Delphi之後又推出的一款高性能可視化集成開發工具。C++ Builder具有快速的可視化開發環境:只要簡單地把控制項(Component)拖到窗體(Form)上,定義一下它的屬性,設置一下它的外觀,就可以快速地建立應用程序界面;C++ Builder內置了100多個完全封裝了Windows公用特性且具有完全可擴展性(包括全面支持ActiveX控制項)的可重用控制項;C++ Builder具有一個專業C++開發環境所能提供的全部功能:快速、高效、靈活的編譯器優化,逐步連接,CPU透視,命令行工具等。它實現了可視化的編程環境和功能強大的編程語言(C++)的完美結合。
C++ Builder優化的32位原碼(Native Code)編譯器建立在Borland公司久經考驗的編譯技術基礎之上,提供了高度安全性、可靠性、快速性的編譯優化方法,完全編譯出原始機器碼而非中間碼,軟體執行速度大大提高。在編譯和連接過程中,C++ Builder自動忽略未被修改的原代碼和沒有使用的函數,從而大大提高了編譯和連接速度。C++ Builder的CPU透視工具包括五個獨立的小面板,可以對正在運行程序從內部進行深層次的了解。另外C++ Builder還提供了一個專業開發環境所必需的命令行工具,以幫助建立C++程序或者准備編譯和連接的程序進行更精細的控制。
C++ Builder可以編譯所有符合ANSI/ISO標準的原代碼,支持最新ANSI C++/C語言特徵:模板(Templates)、例外(Exceptions)、運行類型信息(Runtime Type Information)、Namespaces等,另外它還可以使用標准C++庫且支持標准模板庫(STL),以前的所有C++/C原代碼可以不經過修改,直接移植到C++ Builder環境下來。C++ Builder完全支持32位長文件名、多線程程序設計,且允許程序員直接調用任何Win95和NT API函數。
C++ Builder的集成開發環境(IDE)提供了可視化窗體設計器、對象觀察器、控制項板、工程管理器、集成編輯器和調試器等一系列可視化快速應用程序開發(RAD)工具,讓程序員可以很輕松地建立和管理自己的程序和資源。
不久前對開發工具優劣的討論在程序員中引起極大的反響,紛紛在論壇發表自己的看法,程序員們都堅定的支持自己的開發工具。爭論集中在borland和微軟的開發工具上,borland提供了兩種優秀的開發工具Delphi和C++ Builder,不少人欣賞borland產品的優越性能,而更多的人則看好微軟的強大實力,但在小編看來在目前他們都能在市場中存在,那麼就證明無論C++ Builder還是Vsiual C++都是非常優秀的開發工具,如果你選擇了,那麼就堅持下去。在這場爭論中有不少精彩的評論,我選擇了其中的兩篇佼佼者供大家賞析。
⑦ c語言編程循環語句
語句內容如下:
# include < stdio.h >
Voidmain()
{
Int[100].
Ints=0,I,num,Max,min,av;
Printf("enternumberofstudents:");
Thescanf("%d",num);
Printf("inputfraction\n");
(I = 0; The < num; + +)
{printf("%d:",I+1);
Scanf("%d",and[I]);}
(I = 0; The < num; + +)
Printf("%4d",[I]);
Printf("\n");
Max=[0];
Min=[0];
(I = 0; The < num; + +)
S=s+[I];
Av=s/10;
(I = 0; The < num; + +)
{if ([I]> Max) Max =[I];
If ([I]< min) minutes =[I];
}
Printf("Max=%d,min=%d,assertion=%d\n",Max,min,av);
}
goto語句的爭論
在20世紀60年代末和70年代初,關於 goto 語句的用法的爭論比較激烈。主張從高級程序語言中去掉 goto 語句的人認為,goto 語句是對程序結構影響最大的一種有害的語句,他們的主要理由是: goto 語句使程序的靜態結構和動態結構不一致,從而使程序難以理解,難以查錯。
去掉 goto 語句後,可直接從程序結構上反映程序運行的過程。這樣,不僅使程序結構清晰,便於理解,便於查錯,而且也有利於程序的正確性證明。
持反對意見的人認為, goto 語句使用起來比較靈活,而且有些情形能提高程序的效率。若完全刪去 goto 語句,有些情形反而會使程序過於復雜,增加一些不必要的計算量。
⑧ C語言中goto語句的用法舉例來說。
用法如下:
goto語句也稱為無條件轉移語句,其一般格式如下:
goto 語句標號; 其中語句標號是按標識符規定書寫的符號, 放在某一語句行的前面,標號後加冒號(:)。語句標號起標識語句的作用,與goto 語句配合使用。
例子: label: i++;
loop: while(x<7);
C語言不限製程序中使用標號的次數,但各標號不得重名。goto語句的語義是改變程序流向, 轉去執行語句標號所標識的語句。
goto語句通常與條件語句配合使用。可用來實現條件轉移, 構成循環,跳出循環體等功能。
但是,在結構化程序設計中一般不主張使用goto語句, 以免造成程序流程的混亂,使理解和調試程序都產生困難。
(8)C語言爭論擴展閱讀:
goto語句的討論
(1)goto語句確實有害,應當盡量避免;
(2)完全避免使用goto語句也並非是個明智的方法,有些地方使用goto語句,會使程序流程更清楚、效率更高。
(3)爭論的焦點不應該放在是否取消goto語句上,而應該放在用什麼樣的程序結構上。其中最關鍵的是,應在以提高程序清晰性為目標的結構化方法中限制使用goto語句
⑨ 談論:C和C++哪個難
如今我基本掌握了C和C++ ,接觸過一些C的高級編程,也使用過C++的標准模板庫(STL),目前正在研究C#(所謂的C++++),回過頭來想想這個問題,有了自己的體會和感受,也有了幾分資格討論這個話題了。 C和C++哪個難?我對這個問題的回答是C++學起來難,但是用起來簡單。 我個人認為C語言里就兩個核心的東西——函數和指針,把這兩個玩熟了,你的C語言水平就到了一定程度了。 而到了C++,除了要學習C語言里絕大多數東西以外,還要學習一個重中之重的東西——類。面向對象是門高深的學問,要說學會那是比較困難,要說學通那是相當頂尖的了,目前我只覺得我算是入門了。也許這么說會嚇到很多還沒接觸C++的人,但這卻是事實。在C++里,跟面向對象有關的很多概念(比如重載、繼承、多態)在C裡面是根本沒有的,還有什麼虛函數、純虛函數、流、抽象類、模板函數、模板類、異常等等一系列概念,光了解就要花上一定時間,要理解的話就得下苦功夫了。所以說C++比C語言難學。 stack stk;// 定義棧 stk.push(…);// 壓棧 stk.pop();//彈棧 stk.empty();//棧空判斷 目前我在學習。net平台下的C# ,又可以拋出一個問題——C、C++和C#哪個難?C#裡面的概念更多了,在C++的類里只有成員函數和數據成員,而在C#裡面則出現了常數、欄位、事件、方法、屬性、索引等等概念。但是C#工作在。net平台下面,這么龐大的一個類庫幾乎幫我們做了所有必要的工作,使我們的操作起來更簡單了。所以我的答案照舊:C#比C、C++難學,但是比它們易用。 我寫這篇文章不是討論哪個語言更優秀,因為這是個爭論不休的話題。只是想給那些即將學習或已經學習這些語言的朋友一些參考。
⑩ c語言判斷題目
我沒聽說過你找的那道題。
但是我們老師最近給我們培訓,
倒是做過一到類似的題目,
你看行不行?
10個小孩分皮糖
十個小孩圍成一圈分皮糖,教員分給熬頭個小孩10塊,第二個小孩2
塊,第三個小孩8塊,第四個小孩22塊,第五個小孩16塊,第六個小孩4塊,
第七個小孩10塊,第八個小孩6塊,第九個小孩14塊,第十個小孩20塊然後
所有的小孩同時將手中的糖分一半給右邊的小孩;糖塊數為奇數的人可向教
員要一雙數求和c語言塊問顛末如許幾次後大家手中的糖的塊數同樣多?每
一人各有幾多塊糖?
解法:
#include<stdio.h>
void print(int s[]);
int judge(int c[]);
int j=0;
void main()
{
static int sweet[10]={10,2,8,22,16,4,10,6,14,20}; /*初始化數組數據*/
int i,t[10],l;
printf(" chellold\\n");
printf(" round 1 2 3 4 5 6 7 8 9 10\\n");
printf(".............................\\n");
print(sweet); /*輸出每一個做事的人中糖的塊數*/
whellole(judge(sweet)) /*若不饜足要求則接續進行輪回*/
{
for(i=0;i<10;i++) /*將每一個做事的人中的糖分成一半*/
if(sweet%2==0) /*若為雙數則直接分出一半*/
t=sweet=sweet/2;
else /*若為奇數則加1後再分出一半*/
t=sweet=(sweet+1)/2;
for(l=0;l<9;l++) /*將分出的一半糖給右(後)邊的孩子*/
sweet[l+1]=sweet[l+1]+t[l];
sweet[0]+=t[9];
print(sweet); /*輸出時下每一個孩子中手中的糖數*/
}
}
int judge(int c[])
{
int i;
for(i=0;i<10;i++) /*判斷每一個孩子手中的糖是不是不異*/
if(c[0]!=c) return 1; /*不不異返回 1*/
return 0;
}
void print(int s[]) /*輸出數組中每一個元素的值*/
{
int k;
printf(" %2d ",j++);
for(k=0;k<10;k++) printf("%4d",s[k]);
printf("\\n");
}
其實,
這是很經典的一道題目,
仔細分析下來感覺收獲可多。
希望能夠幫助你。
Good、Luck。