C语言基础语法【1】
生活随笔
收集整理的這篇文章主要介紹了
C语言基础语法【1】
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
目錄
1、在linux系統編寫C語言,基本命令;變量、常量、標識符
2、數據類型、取值范圍、字符串
3、短路原則、類型轉換
4、switch語句、for、while循環、死循環
1、在linux系統編寫C語言,基本命令;變量、常量、標識符
/*C語言 Linux系統中進行操作 創建目錄后 切換進去vi 編譯文件名 保存退出后 gcc 編譯文件名 -o 運行文件名 就在目錄創建好了 ./運行文件名 運行完成*/ /*第一個程序*/ [wlp@192 桌面]$ mkdir C_xuexi [wlp@192 桌面]$ cd C_xuexi [wlp@192 C_xuexi]$ mkdir class_1 [wlp@192 C_xuexi]$ cd class_1 [wlp@192 class_1]$ vi test.c #include <stdio.h> int main(){printf("Hello Word!\n");return 0; } [wlp@192 class_1]$ gcc test.c -o test [wlp@192 class_1]$ ls test test.c [wlp@192 class_1]$ ./test Hello Word! /*變量包含英文字母 數字 特殊符號 _不能以數字開頭 不能使用關鍵字 數據類型int 整型char 字符型float 單精度浮點型double 雙精度浮點型 占位符*/ [wlp@192 class_3]$ vi test.c #include <stdio.h> int main(){int a;char b; float c;double d; a=520;b='f'; c=3.14;d=3.141592653;printf("輸出%d\n",a);printf("輸出%c\n",b);printf("輸出%.2f\n",c);//小數點后精確2位printf("輸出%11.9f\n",d); //一共11個站位,小數點后精確9位return 0; } [wlp@192 class_3]$ gcc test.c -o test [wlp@192 class_3]$ ./test 輸出520 輸出f 輸出3.14 輸出3.141592653 ========================================================= /*常量: 整型常量: 520 實型常量: 5.2 字符常量:普通字符:'L','o','v','e'轉義字符:'\n'【換行】,'\t','\b' 字符串常量:“Fi sh”'F' 'i' ' ' 's' 'h' '\0'【內存存儲情況 所以會追加一個轉意字符代表字符串結束 需要6個站位 】符號常量:使用前必須定義格式:#define 標識符 常量習慣上符號常量標識符用大寫字母,變量標識符用小寫字母。將標識符換成后面的常量如:-#define URL "我"*/ [wlp@192 class_4]$ vi test.c #include <stdio.h>#define URL "wo" #define Name "miao" #define Year 2010 #define Month 5 #define Day 5int main(){printf("%s成立于%d年%d月%d日\n",Name,Year,Month,Day);printf("%s是%s創立的。。。\n",Name,URL);printf("%s的域名是%s\n",Name,URL);return 0; } [wlp@192 class_4]$ gcc test.c -o test &&./test miao成立于2010年5月5日 miao是wo創立的。。。 miao的域名是wo=========================================================== /* 標識符:包含英文字母 數字 特殊符號 _不能以數字開頭 不能使用關鍵字*/2、數據類型、取值范圍、字符串
/* 數據類型:基本類型: 整數類型:short int,int,long int,long long int浮點數類型:float,double,long double字符類型:char布爾類型:_Bool枚舉類型:enum指針類型:構造類型:空類型:sizeof運算符:用于獲取數據類型或表達式的長度【站位】-sizeof(object); //sizeof(對象);-sizeof(type_name); //sizeof(類型);--sizeof object; //sizeof 對象;*/=====================================================================#include <stdio.h>int main(){int i;char j;float k;i=123;j='C';k=3.14;printf("size of int is %d\n",sizeof(int));printf("size of i is %d\n",sizeof(i));printf("size of char is %d\n",sizeof(char));printf("size of j is %d\n",sizeof j);printf("float的size是%d\n",sizeof(float));printf("k的站位是%d\n",sizeof(k));return 0; } [wlp@192 class_5]$ gcc test.c -o test && ./test size of int is 4 size of i is 4 size of char is 1 size of j is 1 float的size是4 k的站位是4============================================================================ /*取值范圍: signed和unsigned:帶符號位可以存有符號,如:負數;不帶符號位不可以存符號 比特位:CPU能讀懂的最小單位——比特位,bit,b ;1bit存放1位二進制數; 字節:1 Byte==8 bitsigned的數據存儲8位比特,有符號時第一位為1,所以存儲范圍就比第一位為0的小許多 負數:一個32位的整型變量,除去左邊第一位符號位,剩下的表示值只有31個比特位;2的31次方-1 因此,一般用正數的補碼表示負數 一般整數類型,默認【不寫】都是帶符號的。所以寫上unsigned可以極大提高取值范圍。*/#include <stdio.h>int main(){short i;unsigned short j;i= -1;j= -1;printf("%d\n",i);printf("%u\n",j);return 0;} [wlp@192 C_xuexi]$ gcc test1.c -o test && ./test -1 65535 //出錯 ============================================================================= /*字符串聲明*///1、顯示ASCII碼 #include <stdio.h>int main(){char a='C';printf("%c=%d\n",a,a);return 0; }[wlp@192 class_1]$ gcc test1.c && ./a.out C=67 //2 #include <stdio.h>int main(){char a=70,b=105,c=115,d=104,e=67;printf("%c%c%c%c%c\n",a,b,c,d,e);return 0; } [wlp@192 class_1]$ gcc test1.c && ./a.out FishC //3、聲明字符串 #include <stdio.h>int main(){char name[]={'F','i','s','h','C','\0'};//5個字符組成的字符串【[]里數字可以忽略】char name[]="FishC";//聲明字符串【{}可以省略】printf("%s\n",name);return 0; }[wlp@192 class_1]$ gcc test1.c && ./a.out FishC FishC3、短路原則、類型轉換
/* 算術運算符: 單目運算符 雙目運算符 關系運算符: 短路原則:*///1 #include <stdio.h> #include <math.h>int main(){int i,j,k;i=1+2;j=1+2*3;k=i+j+-1+pow(2,3);//3+7+(-1)+2的3次方printf("i=%d\n",i);printf("j=%d\n",j);printf("k=%d\n",k);return 0; }[wlp@192 class_1]$ gcc test1.c && ./a.out i=3 j=7 k=17//2 #include <stdio.h>int main(){int a=3,b=3;(a=0)&&(b=5);//左邊是假了,&&短路,就不往右邊運行了printf("a=%d,b=%d\n",a,b);(a=1)||(b=5);//左邊是真了,||短路,就不往右邊運行了printf("a=%d,b=%d\n",a,b);return 0; } ~ [wlp@192 class_1]$ gcc test1.c && ./a.out a=0,b=3 a=1,b=3===================================================================/*類型裝換:自動裝換;強制轉換;1+2.0==1.0+2.0*///3#include <stdio.h>int main(){printf("整型輸出:%d\n",1+(int)2.1);printf("浮點型輸出:%f\n",1+2.0);return 0; }[wlp@192 class_1]$ gcc test1.c && ./a.out 整型輸出:3 浮點型輸出:3.000000 ===============================================================4、switch語句、for、while循環、死循環
/* switch語句 分支嵌套*/ //1#include <stdio.h>int main(){ int i;printf("你多大了:");scanf("%d",&i);if(i>=18){printf("成年了!\n"); } return 0; } [wlp@192 class_1]$ gcc test1.c && ./a.out 你多大了: 18 成年了! == //2 #include <stdio.h>int main(){ int i;printf("你多大了");scanf("%d",&i);if(i>=18){printf("成年了\n"); } else{printf("慢走"); } return 0; } == //3 #include <stdio.h>int main(){int i;printf("輸入分數:");scanf("%d",&i);if(i>=90){printf("A\n"); } else if(i>=80 && i<90){printf("B"); } else if(i>=70 && i<80){printf("C\n"); } else if(i>=60 && i<70){printf("D\n"); } else{printf("E\n"); }return 0; } //4 #include <stdio.h> int main(){char ch;printf("請輸入成績等級:");scanf("%c",&ch);switch(ch){case'A':printf("成績在90以上\n");break;case'B':printf("成績在80~89\n");break;case'C':printf("成績在70~79\n");break;case'D':printf("成績在60~69\n");break;case'E':printf("成績在59以下\n");break;default:printf("請輸入有效成績等級!");break; }return 0; } //5 #include <stdio.h> int main(){int a,b;printf("請輸入兩個數:");scanf("%d %d",&a,&b);【空格可有可無,空格接收回車或空格,就可以輸入下一個參數了】if(a!=b){if(a>b){printf("%d>%d\n",a,b);}else{printf("%d<%d\n",a,b);}}else{printf("%d=%d\n",a,b);}return 0; } //6 #include <stdio.h>int main(){char isRain,isFree;printf("是否有空?Y/N");scanf("%c",&isFree);getchar(); //接收回車,就可以輸入下一個參數了printf("是否下雨?Y/N");scanf("%c",&isRain);if(isFree=='Y'){if(isRain=='Y'){printf("記得帶傘^_^\n");}else{printf("女神沒空T_T\n");}}else{printf("嗚嗚");}return 0; } /* 循環結構 while語句 do while語句 for語句 C99才允許,初始化語句定義類型*/ //7 #include <stdio.h>int main(){int i=1,sum=0;while(i<=10){sum+=i;i++;}printf("結果是:%d\n",sum);return 0;} //8 #include <stdio.h>int main(){//統計鍵盤輸入的一行英文句子的字符個數。int count=0;printf("請輸入字符");while(getchar()!='\n'){count++;}printf("總共輸入的字符數:%d\n",count);return 0; } //9 #include <stdio.h>int main(){int count;for(count=0;count<10;count++){printf("愛\n");}return 0; }#include <stdio.h> int main(){int i,j;for(i=0,j=10;i<j;i++,j--){printf("%d\n",i);}return 0; } //九九乘法表 #include <stdio.h>int main(){int i,j;for(i=1;i<=9;i++){for(j=1;j<=i;j++){printf("%d*%d=%-2d ",i,j,i*j);//-2d保證至少兩個在占位符;顯得整齊些}putchar('\n');//輸出換行}return 0; }//死循環 while(1){}#include <stdio.h> int main(){int count;for(;count<10;){printf("愛\n");count++;}return 0; }C語言基礎語法【2】_z輸關的博客-CSDN博客
C語言基礎語法【3】_z輸關的博客-CSDN博客
總結
以上是生活随笔為你收集整理的C语言基础语法【1】的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 修改cmd编码为UTF-8
- 下一篇: 浅析DNS安全