C语言常用的库函数 (自用)
常用的庫函數
- 1.前言
- 2.內容
- 1.toupper()
- 2.tolower()
- 3.sprintf()
- 4.abs()
- 5.fabs()
- 6.labs()
- 7.scanf()
- 8.itoa()
- 3.小聲bb
- 4.更新日志
1.前言
在刷題過程中,總能看到dl用一些庫函數,簡化算法,由此萌生慢慢學習整理常用的庫函數的想法,本文目前僅為了自用而整理,歡迎指正。
有些函數的學習是在 菜鳥教程 上進行的,網站做的還是挺良心的,附個鏈接吧(沒有打廣告!!!)
(整理順序按學習順序,后續可能會調整 3.24 )
3.29 : 中間某些函數在實際題目中遇到了,則會整理進去,點擊題目鏈接就可以跳轉練習了
2.內容
1.toupper()
頭文件:#include <ctype.h>
作用: 將小寫字母轉換為大寫字母
聲明: int toupper(int c);
參數:c (要被轉換為大寫的字母)
返回值:返回值是一個可被隱式轉換為char類型的int值
如果c有相應的大寫字母,則該函數返回c的大寫字母,否則c保持不變。
實例代碼:
#include <stdio.h> #include <ctype.h> //頭文件int main() {int i = 0;char str[] = "hello Woeld!";while (str[i]){putchar(toupper(str[i])); //逐個輸出轉換為大寫的字母i++;}return 0; }2.tolower()
頭文件:#include <ctype.h>
作用:將給定的字母轉換為小寫字母
聲明:int tolower(int c);
參數: c (被轉換為小寫的字母)
返回值: 可被隱式轉換為char類型的int值
實例:
3.sprintf()
頭文件: #include <stdio.h>
作用:將附加參數中的值,格式化輸出到字符串中
聲明: int sprintf(char * str,const char * fomat,…)
參數:
str:指向字符數組的指針,存儲字符串
format: 字符串,包含了將被寫入str的文本,還可包含嵌入的format標簽,format標簽被后面的附加參數中的指定值替換,并按照要求進行格式化
format的標簽屬性為
%[flags][width][.precision][length]specifier
具體如下:
附加參數:根據不同的format字符串,添加一系列附加參數,每個參數包含一個要被插入的值,替換format中的每個%標簽,參數的個數應該與%標簽個數相同
返回值:如果成功,則返回寫入的字符總數(不包括字符串末尾的空字符),如果失敗,則返回一個負數
實例代碼:
#include <stdio.h> int main() {char s[20];int i;for (i = 0; i < 10; i++) //將0-9轉換為字符存到s中sprintf(s+i, "%d", i);printf("%s", s);return 0; }題目鏈接
4.abs()
頭文件: #include <stdlib.h>
作用:求int類型數的絕對值
聲明: int abs(int x);
參數: x 要 求絕對值的int型數據
返回值:int 類型, x 的絕對值
實例代碼:
#include <stdio.h> #include <stdlib.h> int main() {int a;do{scanf("%d", &a);printf("%d\n", abs(a));} while (a != -1 );return 0; }題目鏈接
5.fabs()
頭文件: #include <math.h>
作用:求double 類型數據的絕對值
聲明: double fabs(double x);
參數: x 要 求絕對值的double型數據
返回值:double 類型, x 的絕對值
實例代碼:
#include <stdio.h> #include <math.h> int main() {double x;while (scanf("%lf", &x) != EOF){double temp = fabs(x);printf("%.3lf\n", temp);}return 0; }6.labs()
頭文件: #include <stdlib.h>
作用: 求long int類型數據的絕對值
聲明: long int labs(long int x);
參數: long x (長整型數據 x)
返回值: long int 型 x的絕對值
實例代碼:
#include <stdio.h> #include <stdlib.h> int main() {long x;while (scanf("%ld", &x) != EOF){long temp = labs(x);printf("%ld\n", temp);}return 0; }7.scanf()
頭文件: <stdio.h>
**作用:**從標準輸入stdin讀取格式化輸入
聲明: int scanf(const char * format,…);
參數: format C字符串,包括下面中的一個或多個 空格字符、非空格字符、format說明符
format 說明符形式為:
[=%[*][width][modifiers]type=]
**附加參數:**每個附加參數包括了一個要被插入的值,替換format中的%標簽,參數的個數應當與%標簽的個數相同
返回值: 函數成功被調用則,返回成功匹配和賦值的個數。如果到達文件末尾或發生錯誤,則返回 EOF
常用:
1.
2.EOF
Ctrl+Z 可以代表文件末尾,下面的程序代表當scanf讀到EOF停止從標準輸入流讀取數據。
備注說明:
當使用VS對scanf進行安全警告時可以有三種做法
①換用scanf_s
②在最前面加上
#define _CRT_SECURE_NO_WARNINGS 1
③在最前面加上
#pragma warning(disable:4996)
8.itoa()
itoa是廣泛使用的非標準C語言和C++語言擴展功能。但因為它是一個非標準的C / C++語言功能,因此不能好好的被所有編譯器使用。
作用 :整數轉換成字符串
頭文件:< cstdlib >
返回值:指向轉換后的字符串的指針。
聲明: char *itoa (int value, char *str, int base );
//數字 //存儲的字符數組或指針 //進制
舉例:
3.小聲bb
整理了一些常用的函數,有時候由于疏忽可能會犯錯誤,歡迎指正~~
4.更新日志
2022.3.28 開始整理
2022.3.28 整理至6
2022.4.3 整理至7
總結
以上是生活随笔為你收集整理的C语言常用的库函数 (自用)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: oracle数据导入sqlldr小例子
- 下一篇: [精华] VI高级命令集锦