⑴ 在c語言中怎樣判斷一個變數是字元還是數字
首先,看定義,應該有定義變數的類型啊;
其二,可以輸出它的ASCII碼,根據它的ASCII碼直來判斷,32~126(共95個)是字元(32sp是空格),其中48~57為0到9十個阿拉伯數字;65~90為26個大寫英文字母,97~122號為26個小寫英文字母,具體查閱課本後的附表。
其三,可以用sizeof()函數測長度,字元都是一個位元組,數字嘛,不同類型位元組數不同,同一類型位元組數在不同編譯系統中也不同,這個你可以查得到的。
⑵ 簡述c程序的基本組成結構。
C語言是目前世界上最流行、使用最廣泛的面向過程的高級程序設計語言。 C語言對操作系統和系統使用程序以及需要對硬體進行操作的場合,用C語言明顯優於其它高級語言,許多大型應用軟體都是用C語言編寫的。
中文名
c程序
C語言
世界上流行、使用最廣泛
類型
高級程序設計語言
相關
大型應用軟體都是用C語言
高級語言
三維,二維圖形和動畫
C程序是由函數構成的。函數是C程序的基本組成單位。一個C源程序中僅有一個main()函數,除main函數之外可以有若干個其它的函數。每個函數實現某一特定的操作。因此,函數是C程序的基本單位。
一個函數由兩部分組成:
函數的說明部分。包括函數名、函數類型、函數屬性、函數參數(形式參數)名、形式參數類型。
⑶ 請問Microsoft Visual C++ 6.0中有沒有c語言的關鍵字附表
C語言總共有32個關鍵字:
Turbo C2.0有以下關鍵字:
Turbo C2.0擴展的共11個
asm _cs _ds _es _ss cdecl far near huge interrupt pascal
由ANSI標準定義的共32個 :
auto double int struct break else long switch case enum register typedef char extern return union const float short unsigned continue for signed void default goto sizeof volatile do if while static
具體各關鍵字的意思請lz自行查詢
學編程的人嘛,還是得自己動手的哈
恩~
⑷ c語言源程序的擴展名是什麼
c語言源程序的擴展名是:「.c」。由C語言構成的指令序列稱為C源程序,源程序文件的後綴為「.c」。註:在絕大多數的操作系統里,C源代碼文件的後綴的大小寫無所謂,如「index.C」和「index.c」指的是同一個文件;但老練的程序員通常使用小寫。
對於計算機語言來說,其源代碼文件的命名會有一個特定的後綴。如C++的源代碼文件的後綴是「.cpp」;Python的源代碼文件的後綴是「.py」;而C的源代碼文件的後綴則是「.C」。
源程序的結構特點
1、一個C語言源程序可以由一個或多個源文件組成。
2、每個源文件可由一個或多個函數組成。
3、一個源程序不論由多少個文件組成,都有一個且只能有一個main函數,即主函數。
4、源程序中可以有預處理命令(include 命令僅為其中的一種),預處理命令通常應放在源文件或源程序的最前面。
5、每一個說明,每一個語句都必須以分號結尾。但預處理命令,函數頭和花括弧「}」之後不能加分號。
6、標識符,關鍵字之間必須至少加一個空格以示間隔。若已有明顯的間隔符,也可不再加空格來間隔。
⑸ C語言中這些符號的作用
這里的%ld\n 是什麼意思?
是 輸出 長整形 十進制 數
同樣的在別的地方還有 %u\n等等
輸出 無符號的 十進制數
類似的有多少符號,都在什麼地方用?
格式化字元串的例子,在C語言的參考里有
c Character a
d or i Signed decimal integer 392
e Scientific notation (mantise/exponent) using e character 3.9265e+2
E Scientific notation (mantise/exponent) using E character 3.9265E+2
f Decimal floating point 392.65
g Use the shorter of %e or %f 392.65
G Use the shorter of %E or %f 392.65
o Signed octal 610
s String of characters sample
u Unsigned decimal integer 7235
x Unsigned hexadecimal integer 7fa
X Unsigned hexadecimal integer (capital letters) 7FA
p Pointer address B800:0000
n Nothing printed. The argument must be a pointer to a signed int, where the number of characters written so far is stored.
% A % followed by another % character will write % to stdout.
在printf函數中使用,表示格式化輸出
getch() 是什麼意思?有什麼用?
這個不標准,標準的是 getchar()就是獲取一個字元輸入
return 0 有什麼用?
就是函數運行結束後返回一個值,這個值是0。因為有些程序是系統要用的,系統要根據返回的值做出反應。
⑹ c語言是什麼
C語言是一門面向過程、抽象化的通用程序設計語言,廣泛應用於底層開發。C語言能以簡易的方式編譯、處理低級存儲器。C語言是僅產生少量的機器語言以及不需要任何運行環境支持便能運行的高效率程序設計語言。
C語言是一門通用計算機編程語言,應用廣泛。C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、產生少量的機器碼。它既具有高級語言的特點,又具有匯編語言的特點。
C語言繼續發展,在1982年,很多有識之士和美國國家標准協會為了使這個語言健康地發展下去,決定成立C標准委員會,建立C語言的標准。委員會由硬體廠商,編譯器及其他軟體工具生產商,軟體設計師,顧問,學術界人士,C語言作者和應用程序員組成。
1989年,ANSI發布了第一個完整的C語言標准——ANSI X3.159—1989,簡稱「C89」,不過人們也習慣稱其為「ANSI C」。
⑺ 什麼是c語言裡面的運算符
所謂運算符簡單的說,和數學的一樣。。有一個操作對象叫一元運算符(a++,a--,!a),2操作對象叫2元運算符,數學上很多,+/*-。。還有一個三元運算符,?:
⑻ C語言中 譚浩強C程序設計後面附表A上有控制字元和字元,請問控制字元和字元有什麼區別呢
都是ASCII碼存放的,字元也是在那個附表A存放的,沒有本質區別,如\007代表響鈴,而\065代表字元A。
追究到硬體層面:2進制高低電平驅動電路實現不同的功能
ASCII都是人為設計好功能的了;
補充樓上不僅僅是控制顯示的格式,還是控制輸出信號
⑼ 單片機c語言編程時會用到哪些常用的C語
關鍵字
用 途
說 明
auto
存儲種類說明
用以說明局部變數,預設值為此
break
程序語句
退出最內層循環
case
程序語句
Switch語句中的選擇項
char
數據類型說明
單位元組整型數或字元型數據
const
存儲類型說明
在程序執行過程中不可更改的常量值
continue
程序語句
轉向下一次循環
default
程序語句
Switch語句中的失敗選擇項
do
程序語句
構成do..while循環結構
double
數據類型說明
雙精度浮點數
else
程序語句
構成if..else選擇結構
enum
數據類型說明
枚舉
extern
存儲種類說明
在其他程序模塊中說明了的全局變數
flost
數據類型說明
單精度浮點數
for
程序語句
構成for循環結構
goto
程序語句
構成goto轉移結構
if
程序語句
構成if..else選擇結構
int
數據類型說明
基本整型數
long
數據類型說明
長整型數
register
存儲種類說明
使用CPU內部寄存的變數
return
程序語句
函數返回
short
數據類型說明
短整型數
signed
數據類型說明
有符號數,二進制數據的最高位為符號位
sizeof
運算符
計算表達式或數據類型的位元組數
static
存儲種類說明
靜態變數
struct
數據類型說明
結構類型數據
swicth
程序語句
構成switch選擇結構
typedef
數據類型說明
重新進行數據類型定義
union
數據類型說明
聯合類型數據
unsigned
數據類型說明
無符號數數據
void
數據類型說明
無類型數據
volatile
數據類型說明
該變數在程序執行中可被隱含地改變
while
程序語句
構成while和do..while循環結構
附表1-1 ANSIC標准關鍵字
關鍵字
用 途
說 明
bit
位標量聲明
聲明一個位標量或位類型的函數
sbit
位標量聲明
聲明一個可位定址變數
Sfr
特殊功能寄存器聲明
聲明一個特殊功能寄存器
Sfr16
特殊功能寄存器聲明
聲明一個16位的特殊功能寄存器
data
存儲器類型說明
直接定址的內部數據存儲器
bdata
存儲器類型說明
可位定址的內部數據存儲器
idata
存儲器類型說明
間接定址的內部數據存儲器
pdata
存儲器類型說明
分頁定址的外部數據存儲器
xdata
存儲器類型說明
外部數據存儲器
code
存儲器類型說明
程序存儲器
interrupt
中斷函數說明
定義一個中斷函數
reentrant
再入函數說明
定義一個再入函數
using
寄存器組定義
定義晶元的工作寄存器
附表1-2 C51編譯器的擴展關鍵字
附錄二 AT89C51特殊功能寄存器列表(適用於同一架構的晶元)
符 號
地 址
注 釋
*ACC
E0H
累加器
*B
F0H
乘法寄存器
*PSW
D0H
程序狀態字
SP
81H
堆棧指針
DPL
82H
數據存儲器指針低8位
DPH
83H
數據存儲器指針高8位
*IE
A8H
中斷允許控制器
*IP
D8H
中斷優先控制器
*P0
80H
埠0
*P1
90H
埠1
*P2
A0H
埠2
*P3
B0H
埠3
PCON
87H
電源控制及波特率選擇
*SCON
98H
串列口控制器
SBUF
99H
串列數據緩沖器
*TCON
88H
定時器控制
TMOD
89H
定時器方式選擇
TL0
8AH
定時器0低8位
TL1
8BH
定時器1低8位
TH0
8CH
定時器0低8位
TH1
8DH
定時器1高8位
帶*號的特殊功能寄存器都是可以位定址的寄存器
⑽ c語言編程用的符號有哪些
如果真正掌握了C 語言,你就能很輕易的回答上來。這個問題就請讀者試著回答一下吧。本章不會像關鍵字一樣一個一個深入討論,只是將容易出錯的地方討論一下。
表(2.1)標准C 語言的基本符號
C 語言的基本符號就有20 多個,每個符號可能同時具有多重含義,而且這些符號之間相互組合又使得C 語言中的符號變得更加復雜起來。
你也許聽說過「國際C 語言亂碼大賽(IOCCC)」,能獲獎的人毫無疑問是世界頂級C程序員。這是他們利用C 語言的特點極限挖掘的結果。下面這個例子就是網上廣為流傳的一個經典作品:
#i nclude <stdio.h>
main(t,_,a)char *a;{return!0<t?t<3?main(-79,-13,a+main(-87,1-_,
main(-86,0,a+1)+a)):1,t<_?main(t+1,_,a):3,main(-94,-27+t,a)&&t==2?_<13?main(2,_+1,"%s %d %d
"):9:16:t<0?t<-72?main(_,t,"@n'+,#'/*{}w+/w#cdnr/+,{}r/*de}+,/*{*+,/w{%+,/w#q#n+,/#{l+,/n{n+,/+#n+,/#;#q#n+,/+k#;*+,/'r :'d*'3,}{w+K w'K:'+}e#';dq#'l q#'+d'K#!/+k#;q#'r}eKK#}w'r}eKK{nl]'/#;#q#n'){)#}w'){){nl]'/+#n';d}rw' i;# ){nl]!/n{n#'; r{#w'r nc{nl]'/#{l,+'K {rw' iK{;[{nl]'/w#q#n'wk nw'
iwk{KK{nl]!/w{%'l##w#' i; :{nl]'/*{q#'ld;r'}{nlwb!/*de}'c ;;{nl'-{}rw]'/+,}##'*}#nc,',#nw]'/+kd'+e}+;#'rdq#w! nr'/ ') }+}{rl#'{n' ')# }'+}##(!!/"):t<-50?_==*a?putchar(31[a]):main(-65,_,a+1):main((*a=='/')+t,_,a+1):0<t?main(2,2,"%s"):*a=='/'||main(0,main(-61,*a,"!ek;dc i@bK'(q)-[w]*%n+r3#l,{}:
uwloca-O;m.vpbks,fxntdCeghiry"),a+1);}
還沒發狂?看來你抵抗力夠強的。這是IOCCC 1988 年獲獎作品,作者是Ian Phillipps。
毫無疑問,Ian Phillipps 是世界上最頂級的C 語言程序員之一。你可以數數這裡面用了多少個符號。當然這里我並不會討論這段代碼,也並不是鼓勵你也去寫這樣的代碼(關於這段代碼的分析,你可以上網查詢)。