第二章,C語言概述


2.1  簡單的C程序示例

 

#include <stdio.h>
#include <stdlib.h>
int main(void)
{
int num;
num=1;
printf("I am a simple");
printf("computer.\n");
printf("MY favorite number is %d because it is first.\n",num);

getchar();
return 0;
}

2.2  解釋示例

典型的c程序

 

2.3  簡單的程序結構

程序由一個或多個函數組成,必須有main函數。

函數由函數頭和函數體組成。

函數頭包括函數名,傳入該函數的信息類型和函數返回類型。

函數體被花括號括起來,由一系列語句、聲明組成。

2.8  關鍵字和保留標志符

關鍵字:一種基本的c語言數據類型。

標志符:一個變量、函數或其他實體的名稱。保留標志符表示那些以下划線字符開頭的標志符及標准庫函數名,例printf

一、數據類型關鍵字(12個):

(1)  char :聲明字符型變量或函數
(2)  double :聲明雙精度變量或函數
(3)  enum :聲明枚舉類型
(4)  float:聲明浮點型變量或函數
(5)  int: 聲明整型變量或函數
(6)  long :聲明長整型變量或函數
(7)  short :聲明短整型變量或函數
(8)  signed:聲明有符號類型變量或函數
(9)  struct:聲明結構體變量或函數
(10)  union:聲明共用體(聯合)數據類型
(11)  unsigned:聲明無符號類型變量或函數
(12)  void :聲明函數無返回值或無參數,聲明無類型指針(基本上就這三個作用)

二、控制語句關鍵字(12個):

A循環語句
(1)for:一種循環語句(可意會不可言傳)
(2)  do :循環語句的循環體
(3)  while :循環語句的循環條件
(4)  break:跳出當前循環
(5)  continue:結束當前循環,開始下一輪循環
B條件語句
(1)  if: 條件語句
(2)  else :條件語句否定分支(與 if 連用)
(3)  goto:無條件跳轉語句
C開關語句
(1)  switch :用於開關語句
(2)  case:開關語句分支
(3)  default:開關語句中的“其他”分支
D返回語句
return :子程序返回語句(可以帶參數,也看不帶參數)

三、存儲類型關鍵字(4個)

(1)  auto :聲明自動變量 一般不使用
(2)  extern:聲明變量是在其他文件正聲明(也可以看做是引用變量)
(3)  register:聲明積存器變量
(4)  static :聲明靜態變量

四、其它關鍵字(4個):

(1)  const :聲明只讀變量
(2)  sizeof:計算數據類型長度
(3)  typedef:用以給數據類型取別名(當然還有其他作用)
(4)  volatile:說明變量在程序執行中可被隱含地改變

 ISO C99標准新增

(1)  _Bool:布爾類型,用來表示真或假,零表示假,非零表示真。所有非零的數賦值給布爾型變量,最終的值還是1。

(2)  _Complex, _Imaginary:復數類型和虛數類型,C99提供了三種復數類型和虛數類型:float _Complex,double _Complex,long double _Complex和float _Imaginary,double _Imaginary,以及 long double _Imaginary。復數類型包括一個實部和一個虛部,虛數類型沒有實部,只有虛部。

(3)  _Imaginary

(4)  restrict:用來限定指針,表明指針是訪問一個數據對象的唯一且初始化對象。作用是告訴編譯器除了該指針,其他任何指針都不能對所指向的數據進行存取,以便編譯器優化代碼。

(5)  inline:內聯函數,是為了解決C 預處理器宏存在的問題所提出一種解決方案,用來提高函數使用效率。內聯函數使用inline關鍵字定義,並且函數體和申明必須結合在一起, 否則編譯器將他作為普通函數對待。

 

2.11  復習題

1.c語言的基本模塊?

函數

2.什么是語法錯誤?

違反了組成語句或程序的規則。

3.什么是語義錯誤?

含義錯誤

4.以下程序的問題?

寫下修改后的程序

#include <stdio.h>
int main(void)
{
   int s;
   s=52;
   printf("There are %d weeks in a year.\n",s);

   return 0;
}

 

5.以下4個例子,他們能輸出什么結果

 

 6.在main、int、function、char、=中,那些為關鍵字?

int、char。

7.如何以下面的格式輸出words和lines?

printf("There are were %d word and %d lines ",works,lines)

2.12  編程練習

1.主要對於pritf()的使用,以及轉義字符\n的使用。

#include <stdio.h>
int main(void)
{
 printf("su wen\n");
 printf("su\nwen\n");
 printf("su");
 printf("wen\n");
}

 

2.打印姓名和地址,如上類似。

3.編寫一個程序把年齡轉化為天數,並顯示這倆個值。

程序目標:將年齡轉化為天數

設計程序:

輸入年齡數據,將年齡轉化為天數,程序輸出天數。

用戶界面:提示用戶輸入年齡,然后打印出對應的結果。

程序核心:將年齡轉化為天數。

數據類型:應使用整數來存儲數據。

#include <stdio.h>
int main(void)
//將年齡轉化為天數,
{
    int age=0;
    int day=0;
    printf("請輸入您的年齡\n");
    scanf("%d",&age);
    day=age*365;
    printf("your age is %d,the number of day for age is %d",age,day);
    return 0;
}

 

 4.生成以下輸出?

#include <stdio.h>
void jolly(void);
void deny(void);
int main(void)
{
    jolly();
    jolly();
    jolly();
    deny();
    return 0;
}
void jolly(void)
{
    printf("you are handsome,Thrice to emphasize\n");
}
void deny(void)
{
    printf("I know\n");
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM