02dayC语言数据类型
一、數據類型
?二、輸入輸出語句
例:
scanf("%d",&a); printf("%d",a);?不同的數據類型有著其對應的格式化類型:
1、int ?%d??接受整數值并將它表示為有符號的十進制整數
long ?%ld是長整型
2、%o???????無符號8進制整數(不輸出前綴0)
3、%u??????無符號10進制整數
4、%x/X????無符號16進制整數?例:
printf("%x\n", i); printf("%X\n", i); printf("%#x\n", i); printf("%#X\n", i);?輸出分別為? ?2f??2F??0x2f??0X2F
5、float和double??????單精度浮點數(%f?)和雙精度浮點數(%lf)
6、%.mf?????輸出實數時小數點后保留 m 位,注意 m 前面有個點。
7、%e/E????科學計數法表示的數,此處"e"的大小寫代表在輸出時用的“e”的大小寫
8、%c?????字符型。可以把輸入的數字按照ASCII碼相應轉換為對應的字符
例:
#include <stdio.h> int main() {char i='A';printf("%c",i);return 0; }?
? ? ?輸出為字符 A
? ? ?如果輸出控制符是‘%d’,則輸出‘A’對應的ASCII碼值
9、%s?????字符串。輸出字符串中的字符直至字符串中的空字符(字符串以'\0‘結尾,這個'\0'即空字符)
例:
#include <stdio.h> int main() {char i[]="ABC";printf("%s",i);return 0; }?
? ? ? 輸出為字符串 ABC
10、%p????以16進制形式輸出指針,輸出變量地址
例:
#include <stdio.h> int main() {int i=5;printf("%d\n",i); //輸出十進制整數 printf("%p",i); //以16進制形式輸出指針printf("%p",&i); //輸出變量內存地址 return 0; }?
11、%n????到此字符之前為止,一共輸出的字符個數,不輸出文本
12、%%???不進行轉換,輸出字符‘%’(百分號)本身
13、%m???打印errno值對應的出錯內容,(例:printf("%m\n");
三、轉義字符
| 轉義字符 | 意義 | ASCII碼值(十進制) |
| \a | 響鈴(BEL) | 007 |
| \b | 退格(BS) ,將當前位置移到前一列 | 008 |
| \f | 換頁(FF),將當前位置移到下頁開頭 | 012 |
| \n | 換行(LF) ,將當前位置移到下一行開頭 | 010 |
| \r | 回車(CR) ,將當前位置移到本行開頭 | 013 |
| \t | 水平制表(HT) (跳到下一個TAB位置) | 009 |
| \v | 垂直制表(VT) | 011 |
| \\ | 代表一個反斜線字符''\' | 092 |
| \' | 代表一個單引號(撇號)字符 | 039 |
| \" | 代表一個雙引號字符 | 034 |
| \? | 代表一個問號 | 063 |
| \0 | 空字符(NUL) | 000 |
| \ooo | 1到3位八進制數所代表的任意字符 | 三位八進制 |
| \xhh | 十六進制所代表的任意字符 | 十六進制 |
字符串里需要用 \\? 來表示 \ ,第一個 \ 代表轉義,第二個 \ 代表字符
例:
#include <stdio.h>main() {printf("hello world");printf("\n");printf("hello world");printf("\a"); //響鈴printf("\b"); //退格printf("\n"); printf("\f"); //翻頁printf("\n");printf("hello world");printf("\r"); //回車 printf("\t"); //水平制表,跳到下一個TAB位置printf("hello world");system("\"C:\\Program Files\\Tencent\\QQ\\Bin\\QQScLauncher.exe\""); // ‘\\’和‘"""’表示不出來用\來轉義 getchar(); //等待響應 return 0; }?
四、常量與變量
1、變量的命名規則
? 標識符:
程序中用于標識常量、變量、函數的字符序列組成
? 只能由字母、數字、下劃線組成,第一個字母必須是字母 或下劃線 ? 大小寫有區別 ? 不能使用C語言的關鍵字 ? 命名規則: ? 見名知意 ? 不宜混淆 例:變量使用之前一定要初始化,如果變量不初始化,就會默認讀取垃圾數據, 有些垃圾數據
會導致程序崩潰。所以,變量使用之前,必須初始化。
2、定義常量
? 定義常量PI的兩種方式:
#define PI 3.14159;const float PI=3.14159; //const定義的常量不能修改,是只讀數據?例:
#include <stdio.h> int main() {#define NAME "朱健康"const int AGE=22;printf("我的名字: %s",NAME); printf("\n"); printf("我的年齡:%d",AGE); return 0; } #include <stdio.h>//自由落體運動 g=9.8 //輸入時間,輸出自由落體運動的距離 int main() {#define g 9.8float t,s;printf("自由落體時間:\n");scanf("%f",&t);s=1/2.0*g*t*t;printf("自由落體的距離: %f",s);return 0; }?
五、進制的計算
1、二進制、八進制轉換
??二進制轉換成八進制: 從右向左,每3位一組(不足3位左補 0),轉換成八進制 ? 八進制轉換成二進制: 用3位二進制數代替每一位八進制數? 例 (1101001)2=(001,101,001)2=(151)8
? 例 (246)8=(010,100,110)2=(10100110)2
2、十進制、二進制轉換
? 十進制整數轉換為二進制:方法是除以2取余,逆序排列 ? 二進制轉換為十進制: (1101)2 = 1 * 2^3 + 1 * 2^2 + 0 * 2^1 + 1 * 2^0 = 8 + 4 + 0 + 1 = (13)10 ? 十進制小數的轉換為二進制: 方法是乘以2取整,順以(0.625)10為例?3、位、字節、字
一個字節(Byte)由8位(b)構成,而一個字(Word)由32位(B)構成。 ? ? ? ? ? 位就是0、1? ?。?位的單位(bits) ??
?
轉載于:https://www.cnblogs.com/zhujiankang/p/11203865.html
總結
以上是生活随笔為你收集整理的02dayC语言数据类型的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: POJ3693 Maximum repe
- 下一篇: 一个小游戏Digger for .NET