C言語初識1

5786 ワード

最初のC言語

#include 
int main() { 
	printf("hello bit
"); printf("he he
"); return 0; } // : //main // main

データ型

char        //  
short       //  
int         //  
long        //  
long long   //  
float       //  
double      //  
//C ?
  • なぜこのようなタイプが現れたのですか?(生活の様々な値を表現するために)
  • の各タイプのサイズはいくらですか?
  •     int main(){
        // printf("hello world!
    "); printf("%d
    ", sizeof(char)); printf("%d
    ", sizeof(short)); printf("%d
    ", sizeof(int)); printf("%d
    ", sizeof(long)); printf("%d
    ", sizeof(long long)); printf("%d
    ", sizeof(float)); printf("%d
    ", sizeof(double)); return 0; }

    タイプの使用:
    char ch = "w";
    int weight = 120;
    int salary = 20000;
    

    変数、定数


    不変の値、C言語の中で定数で表して、変わる値は変数で表します

    変数の定義方法

        int age = 20; 
    	float weight = 58.5f; 
    	char ch = 'y';
    

    変数の分類

  • ローカル変数
  • グローバル変数
  • #include 
    int global = 2019;//  
    int main() 
    {    
    	int local = 2018;//     
    	// global ?    
    	int global = 2020;//     
    	printf("global = %d
    ", global); return 0; }

    まとめ:ローカル変数とグローバル変数が同じ名前の場合、ローカル変数が優先されます.

    変数の使用

    int main(){
    	int num1 = 0;
    	int num2 = 0;
    	int sum = 0;
    	printf(" :");
    	scanf("%d%d", &num1, &num2);
    	sum = num1 + num2;
    	printf("sum=%d", sum);
    	return 0;
    }
    

    変数の役割ドメインとライフサイクル


    役割ドメイン:1.ローカル変数の役割ドメインは、変数が存在するローカル範囲です.2.グローバル変数の役割ドメインは、プロジェクト全体です.
    ライフサイクル:
  • ローカル変数のライフサイクルは、アクティブドメインライフサイクルに入ると開始し、アクティブドメインライフサイクルが終了します.
  • グローバル変数のライフサイクルは、プログラム全体のライフサイクルです.

  • 定数


    C言語の定数は次のように分けられます.
  • 字面定数
  • const修飾定数
  • #define定義識別子定数
  • 列挙定数
  • #include  
    //  
    enum Sex 
    {    
    	MALE,    
    	FEMALE,    
    	SECRET 
    }; 
    // MALE,FEMALE,SECRET 
    
    int main() 
    {
    	3.14;//     
    	1000;//     
    	const float pai = 3.14f;   //const      
    	pai = 5.14;//ok?   
        #define MAX 100            //#define        
    	return 0; 
    }
    

    文字列+エスケープ文字+コメント


    文字列

    “hello world.

    注意:文字列の終了フラグは0のエスケープ文字です.文字列の長さを計算するとき0は終了フラグであり、文字列の内容ではありません.
    #include  
    // , ? ?( '\0' ) 
    int main()
    {
    	char arr1[] = "hel";
    	char arr2[] = { 'h', 'e', 'l' };
    	char arr3[] = { 'h', 'e', 'l', '\0' };
    	printf("%s
    ", arr1); printf("%s
    ", arr2); printf("%s
    ", arr3); return 0; }

    エスケープ文字


    エスケープ文字
    釈義
    \?
    複数の疑問符を連続して書く場合に使用し、3文字語に解析されないようにします.
    \’
    文字定数を表す
    \“
    文字列の内部を表す二重引用符
    \\
    逆スラッシュを表すために使用され、エスケープシーケンスとして解釈されないようにします.
    \a
    警告文字、ビープ
    \b
    チェックボックスをオフにします.
    \f
    フィーダー
    折り返し
    \r
    リターンマッチ
    \t
    水平タブ
    \v
    垂直タブ
    \ddd
    dddは1~3個の8進数を表す.例:130 X
    \xdd
    ddは2つの16進数を表す.例:x 30 0
    #include  
    int main() 
    {    
    // 1: ', ?   
     // 2: , “, ?   
      printf("%c
    ", '\''); printf("%s
    ", "\""); return 0; }
    // ?
     #include 
    int main() 
    {    
        printf("%d
    ", strlen("abcdef")); // \32 printf("%d
    ", strlen("c:\test\328\test.c")); return 0; }

    せんたくぶん

    #include 
    int main(){
    	int kaoyan = 0;
    	printf(" ?( 1 or 0):
    "); scanf("%d", &kaoyan); if (kaoyan == 1){ printf(" 2022
    "); } else{ printf(" offer
    "); } return 0; }

    ループステートメント

    #include 
    int main(){
    	printf(" 10 
    "); int times = 0; while (times <= 10){ times++; printf(" !
    "); } if (times > 10){ printf(" 10
    "); } return 0; }

    関数#カンスウ#

    #include 
    int main(){
    	int num1 = 0;
    	int num2 = 0;
    	int sum = 0;
    	printf(" :");
    	scanf("%d%d", &num1, &num2);
    	sum = num1 + num2;
    	printf("sum=%d
    ", sum); return 0; } : #include int Add(int x, int y){ int z = x + y; return z; } int main(){ int num1 = 0; int num2 = 0; int sum = 0; printf(" :"); scanf("%d%d", &num1, &num2); sum = Add(num1,num2); printf("sum=%d
    ", sum); return 0; }

    はいれつ


    配列の定義:
    int arr[10]={1,2,3,4,5,6,7,8,9,0};
    

    配列の使用
    #include 
    int main(){
    	int i = 0;
    	int arr[10] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 0 };
    	for (i = 0; i < 10; i++){
    		printf("%d", arr[i]);
    	}
    	printf("
    "); return 0; }

    ししん


    こうぞうたい

    struct Stu {
    	char name[20];//     
    	int age;      //     
    	char sex[5];  //     
    	char id[15]; //  
    };
    
    

    構造体の初期化:
    #include
    int main(){
    	struct book{
    		char name[20];// 
    		float price;// 
    	};
    	struct book b = { "C ", 20.0 };
    	//. 
    	printf("name:%s
    ", b.name); printf("prince:%f
    ", b.price); //-> struct book *bk = &b; printf("name:%s
    ", bk->name); printf("prince:%f
    ", bk->price); return 0; }