糯米文學吧

位置:首頁 > 計算機 > C語言

c語言程序設計練習題

C語言1.56W

篇一:c語言程序設計基礎單元總結與練習題及答案

c語言程序設計練習題

C語言程序設計》單元總結與練習題

答 案

單元一 程序設計宏觀認識

單元總結提升

本單元中,核心內容有C語言程序框架結構、程序的構成和程序開發過程。通過本單元

的學習,我們應該知道: 1.C語言程序最基本的程序框架由兩部分構成,分別是:

(1) 編譯預處理

(2) 函數組

2.C程序最大的特點就是所有的程序都是用函數來裝配的,函數是構成C語言程序的

基本單位,函數包括主函數、庫函數和自定義函數。函數的一般結構形式為:

3.標識符是用來標識程序中的某個對象名字的字符序列。C語言把標識符分為三類,

即關鍵字、預定義標識符、用户自定義標識符。對於用户自定義標識符的命名C語言規

定:

(1) 所有的用户標識符必須先定義後使用;

(2) 用户標識符由字母(A~Z,a~z)、數字(0~9)、下劃線“_”組成,並且首字符不

能是 數字 ;

(3) 區分大小寫;

4)不能用關鍵字作為用户自定義標識符,通常不使用預定義標識符作為用户自定義

標識符。

4.理論上講,程序開發過程分為四個步驟,分別為:

(1) 編輯源程序

(2) 編譯源程序,生成目標程序

(3) 連接目標程序及其相關模塊,生成可執行文件

(4) 運行可執行文件

5.簡單描述使用VC++6.0開發應用程序的步驟:

如圖所示:

總之,通過本單元的學習,應該掌握C語言程序框架結構和程序開發過程,還要對C

語言程序設計的知識脈絡有一定的瞭解。

單元練習

一.選擇題

1.構成C語言程序的基本單位是(c )。

A.框架 B.預處理 C.函數 D.語句

2.在程序開發過程中,把文本文件格式源程序轉化為二進制格式的目標程序的過程稱之為( b )。

A.編輯B.編譯 C.連接 D.運行

3.關於主函數,下列説法不正確的是( c )。

A.一個完整的C語言應用程序有唯一的主函數

B.主函數的名稱只能是main

C.主函數可以被其他自定義函數調用

D.C語言程序的運行從主函數開始,以主函數為核心展開

4.關於標識符,下列説法不正確的是( c )。

A.庫函數名稱為預定義標識符,不建議用作用户自定義標識符

B. 關鍵字不能作為用户自定義標識符

C.用户自定義標識符中不區分大小寫字母

D.標識符中可以出現下劃線,且可以出現在標識符的任意位置

5.以下可用作用户自定義標識符的一組是( c )。

A.void、return、if

B.printf、include、fabs D.2abc、pay$、sum-10 C.Max、_abc、Main

二.填空題

1.C語言程序一般由若干個函數構成,程序中應至少包含一個_________,其名稱只能為

_________。

2.C語言程序中每條語句必須以_________結束。

3.C語言程序的註釋是以_________開頭,以________結束的.,在VC++6.0編程環境中,可使用_________作為註釋的起始標識,註釋對程序的執行不起任何作用。

4.最初編寫的C語言程序稱為_________,其擴展名為_________,編譯後生成的文件為_________,其擴展名是_________,連接後生成的文件是_________,其擴展名是_________。

5.C語言規定,標識符只能由_________、_________和_________三種字符組成,而且,首字符只能是_________或_________。

******************************************************************************* 習題答案:

一.選擇題

1.C 2.B 3.C 4.C 5.C

二.填空題

1.主函數 main

2.分號; 3./**///

4.源程序或.c

序) 目標文件(或目標程序) 可執行文件(或可執行程

5.字母(A~Z,a~z)、數字(0~9)、下劃線“_” 字母或下劃線

*******************************************************************************

單元二 程序設計基礎知識

單元總結提升

本單元中,核心內容有C語言中基本的數據類型、常量和變量、運算符和表達式以及算

法的概念。通過本單元的學習,我們應該知道: 1.C語言中最基本的數據類型有:。

2.C程序中使用的常量按照表現形式可分為直接常量和符號常量。

(1)直接常量

1)整型常量,有十進制、八進制和十六進制三種描述方式,其中,八進制的前置符

號標誌為 0 ,十六進制的前置符號標誌為 0x或0X 。

2)浮點型常量,有十進制小數和指數兩種描述方式,指數形式的符號標誌是。

3)字符型常量,是用單撇引號括起來的單一字符,對一些特殊字符和控制字符用 的形式表示。

4)字符串常量,是用雙撇引號括起來的一串字符序列。字符串的結束標誌為。

(2)符號常量

符號常量是使用某個符號代表的常量,符號常量使用編譯預處理中的宏定義命令定義。

3.C程序中使用變量,必須先,後。變量定義後,系統會根據變量的類

型分配相應的存儲空間。

4.C語言有豐富的運算符,其中算術運算符包括+、-、*、/、%,運算符中的%僅用於

整數間的運算;賦值運算符包括“=”和相應的複合賦值運算符 +=、-=、*=、/=,

賦值運算的含義是將“=”右側的表達式的計算結果賦值給“=”左側的變量,這與數學

中“=”的含義不同,需要注意。

5.由運算符和數據構成表達式,若表達式中各數據的類型不同,則存在類型自動轉換

問題,必要時也可以使用強制類型轉換。

6.對於面向過程的程序設計來説,程序

7.在C語言中,對於每一個程序設計單元可採用結構化程序設計方法,有三種基本的

篇二:C語言程序設計總結

C語言程序設計總結

一、C語言程序的基本結構

#include “stdio.h”

void main() {

定義變量; 程序實現;

輸出結果; printf }

二、變量的定義

1.整型:int a , b, s=0;(可以在定義的同時為變量進行賦值) 長整型:long 無符號整型(非負整數):unsigned 2.單精度實型:float x, y, z=1.0 ; 3.雙精度實型:double l,m; 4. 字符型:char c1=A, c2=b;

三、變量的賦值

1.直接賦值:a=10 ;//用賦值號“=”將右側的值賦給左側的變量 2.賦表達式的值:a=3+7;

3. 賦另外一個變量的值:a=s;//把s的值賦給a

變量的輸入:

輸入一個變量:scanf(“%d”, &a);

輸入多個變量:scanf(“%d%d%d”, &a, &b, &c);

int--%d float--%f char--%cdouble--%lf 字符串--%s

變量的輸出:

輸出一個提示語句:printf(“xxxxxx”); 輸出一個回車:printf(“ ”);

輸出一個變量:printf(“xxx is %d”, a);

輸出多個變量:printf(“xxxx%d, xxxx%d”,a,b);

練習:

1. 輸入圓的半徑,求圓的周長。

四、常用流程控制語句

條件的形式:a大於0寫成a>0 a小於0寫成a<0

a等於0寫成a==0 (注意,用兩個=)

a大於等於0並且小於等於10寫成 a>=0 && a<=10 a小於0或者a大於10 寫成 a<0 a="">10

(一)單分支if語句(如果滿足某個條件,就做某件事情,不滿足就向下執行。) if(條件)

{執行語句; }

(二)雙分支if語句(如果滿足某個條件,就做某件事情,否則就做另外一件事情。) if(條件)

{執行語句1; } else

{執行語句2; }

(三)多分支if語句(滿足哪一個條件,就做相應的語句。) if(條件1)

{執行語句1; } else if(條件2)

{執行語句2; } else if(條件3) {執行語句3; } else if(條件4) {執行語句4; } else

{執行語句5; }

(四)if的嵌套(根據具體情況對if~else~語句進行靈活的運用)其格式如下: if(條件1)if(條件2)

{ 執行語句a; }else

{ 執行語句b; } else

if(條件3)

{ 執行語句c; } else

{ 執行語句d; }

(五) 多分支語句 switch(根據switch後的值,執行相對應的case語句,此語句瞭解即可,因為它的作用完全可以用多分支if來實現)

switch (表達式) {

case 值1:{語句1; break;}case 值2:{語句2; break;}case 值3:{語句4; break;}……

case 值n:{語句n; break;}default: {語句n+1;} }

練習:

2. 某自助餐廳規定,浪費食物在20克以下的,每克罰款2元;如浪費超過20

克,則超過的部分每克加罰1元。編程求罰款金額。

3. 從鍵盤輸入正方形的邊長,如果邊長大於零則求出該正方形的周長和麪積,

否則提示輸入錯誤。

4. 輸入3個數x,y,z,求其中的最小值。

5. 輸入3個數x,y,z,將其中最大值放在x中,最小值放在z中,中間值放在

y中,然後輸出x,y,z。

例如:for(i=0;i<100;i++){

if(條件)

{

……;

break; } … }

練習:

1. 編程求出公式s=1-1/3 + 1/5- 1/7+…1/101 的值並輸出 2. 編程輸出如下圖形:

* * * * * * * * * * * * * * *

3. 編程打印九九乘法表

4. 編程打印出2016年1月份的日曆

注意:1月份的總天數是31天,其中1日是星期五。 日曆如下:

一 二 三 四 五 六 日 1

4 5 6 7 8 11 12 13 14 15 18 19 20 21 22 25 26 27 28 29

2 9 16 23 30

3 10 17 24 31

void main() {

int i,n,d; //i是循環變量,n代表總天數,d代表星期; n=31;//n代表一個月的天數

d=5; //d代表星期,星期一為1,星期五為5,星期日為7

printf(" 一 二 三 四 五 六 日 "); //一個漢字佔兩個字符的位置for(i=1;i<d;i++) //開始日期之前用空格佔位,每個日期對應3個空格printf("");

for(i=1;i<=n;i++,d++) {

printf("%3d",i);if(d%7==0) {

printf(" ");} } }

5. 在第4題的程序上進行修改,如果輸入任意一個月的總天數及該月第一天的星期(1代表星期日,2代表星期一……以此類推),能否打印出該月日曆

6. 計算x的n次方(x為雙精度,n為非負整數) void main() {

double x,s; unsigned n,i; s=1;

printf("請輸入x和n:"); scanf("%lf%u",&x,&n); for(i=1;i<=n;i++) {

s=s*x; }

printf("jieguo is %.2lf",s); }

篇三:C語言程序設計課程設計(小結版)

《C語言程序設計》課程小結要求

一、小結內容

1.關鍵字小結: 表格形式列出所有32個關鍵字,簡要説明其作用(1面)。 auto 聲明自動變量,缺省時編譯器一般默認為auto int 聲明整型變量 double 聲明雙精度變量 long 聲明長整型變量 char 聲明字符型變量 float 聲明浮點型變量 short 聲明短整型變量 signed 聲明有符號類型變量 unsigned 聲明無符號類型變量 struct 聲明結構體變量 union 聲明聯合數據類型 enum 聲明枚舉類型 static 聲明靜態變量 switch 用於開關語句 case 開關語句分支

default 開關語句中的“其他”分支 break 跳出當前循環 register 聲明寄存器變量 const 聲明只讀變量

volatile 説明變量在程序執行中可被隱含地改變 typedef 用以給數據類型取別名(當然還有其他作用)

extern 聲明變量是在其他文件正聲明(也可以看做是引用變量) return 子程序返回語句(可以帶參數,也可不帶參數) void 聲明函數無返回值或無參數,聲明空類型指針 continue 結束當前循環,開始下一輪循環 do 循環語句的循環體 while 循環語句的循環條件

if 條件語句

else 條件語句否定分支(與 if 連用) for 一種循環語句(可意會不可言傳) goto 無條件跳轉語句

sizeof 計算對象所佔內存空間大小

2.運算符小結:表格形式列出所有45個運算符的符號、名稱、優先級、結合性、運算目數(1面)。

3.數據類型小結:表格形式列出11個基本類型的説明符、字節數、範圍(1面)。

4.預處理命令小結:列出11個預處理命令,並簡要説明其作用(1面)。 #define: 定義宏 #undef: 取消已定義的宏 #include: 包含一個源代碼文件 #if: 如果給定條件為真,則編譯下面代碼 #ifdef: 如果宏已經定義,則編譯下面代碼 #ifndef: 如果宏沒有定義,則編譯下面代碼 #else:建立另一個選擇(在#if失敗的情況下)

#elif: 如果前面的#if給定條件不為真,當前條件為真,則編譯下面代碼 #endif: 結束一個#if#else條件編譯塊

Defined: 在#if 和#elif表達式中,常常是用defined運算符來檢查是否定義了預處理器標識符

5.標準函數小結:按頭文件(15個)列出每個頭文件中的函數(146)、宏(86)、類型(18)、變量(1),共251個(25面),要求給出函數原型聲明、作用、成功返回和失敗返回的值。