资讯详情

C语言技术笔记

📅 2026/10/8 23:04:39 | 华诺云谱 👁 阅读
C语言技术笔记
程序结构导入程序所需的库#include stdio.h#include iostream二者都是导入打印语句的库#include string.h字符串的长度运算拼接截取#include math.h进行数学运算 开根三角函数等主函数int main(){程序代码}拓:在clion 中程序无法直接打印中文因此需要导入一个库并在主程序后加入系统#include stdlib.hint main(){system(“chcp 65001”);…}便可打印中文打印语句格式printf(需要打印的信息);若要打印变量需要在前面加所需的格式化占位符格式化占位符%dint %schar字符串 %cchar字符 %lldlong long长整数 %ffioat浮点数 %lfdouble精确浮点数等以整数型为例格式为int x0; printf(%d,x);转义符将ASCII码的一个不可见字符 还有特殊符号打印出来实现功能换行符\n 回车符\r 空字符\0 制表符\t 等 \字母为转义符数据类型与变量整数型int长整数型long 或者 long long字符型char 变量 ;字符串型char 变量[字符数1] ; 注字符串若是中文字符数*21需要1的原因字符串末尾需要一个空字符作为结束符输入语句scanf(“格式化占位符”变量的地址) 用 变量名 可以获取该变量的地址数组格式变量类型 变量名[长度]{};若未知数组中储存的信息也可以不写例int arr[10]{1,2,3,4,5,6,7,8,9,0}; int arr[10];数组长度在其他函数中声明该数组时也需要声明该函数的长度例void printarr(int arr[],int x){ for(int i0;ix;i){ printf(%d,arr[i]); } } int arr[10]{1,2,3,4,5,6,7,8,9,0}; printarr(int arr[],int 10);数组的最后一个数字下标数组长度-1返回值返回一个数组是不支持的只能将返回值类型存为指针类型返回数组的地址函数格式返回值类型 函数名(参数类型 参数名){} 例void printarr(int arr[],int x){ for(int i0;ix;i){ printf(%d,arr[i]); } }指针指针变量定义用来存储变量的地址通过地址修改该变量的数据当函数需要修改外面传入的数据时可以将指针作为参数传入例int x10; int *yx; *y20;最终x等于20项目数字仓库#include stdio.h #include stdlib.h int main() { system(chcp 65001); int size8; int len10; printf(初始数组为); int arr[10]{1,2,3,4,5,6,7,8}; int *parrarr; for (int i0;isize;i) { printf(%d ,arr[i]); } printf(\n); while (1) { printf(需要添加数字请输入101\n); printf(需要查找数字请输入102\n); printf(需要删除数字请输入103\n); printf(需要插入数字请输入104\n); printf(需要替换数字请输入105\n); printf(若查看当前数组请输入106\n); printf(若需退出请输入107\n); int funct0; scanf(%d,funct); printf(您输入了%d\n,funct); if (funct 101) { printf(请输入需要添加的数字\n); int num0; scanf(%d,num); if (sizelen) { int newlenlen*2; int newarr[newlen]; int *pnewarr (int*) malloc(newlen*4); for (int i0;inewlen;i) { newarr[i]parr[i]; } parrpnewarr; lennewlen; printf(成功扩容\n); } parr[size]num; size; }else if (funct 102) { printf(请输入需要查找的数组的下标\n); int num0; scanf(%d,num); int nparr[num]; printf(当前数字为%d\n,n); }else if (funct103) { int num0; printf(根据下标删除请输入1\n); printf(根据数字删除请输入2\n); scanf(%d,num); if (num1) { printf(根据下标删除数字\n); printf(请输入需要删除数字的下标\n); int x0; scanf(%d,x); parr[x]0; for (int ix;isize;i) { parr[i]parr[i1]; } size--; }else if (num2) { printf(根据数字删除数字\n); printf(请输入需要删除的数字\n); int x0; scanf(%d,x); for (int i0;isize;i) { if (parr[i]x) { parr[i]0; for (int mi;msize;m) { parr[m]parr[m1]; } size--; } } } }else if (funct104) { printf(请输入需要插入的数字\n); int num0; scanf(%d,num); printf(当前数组长度为%d\n,len); printf(请输入需要插入数字的下标\n); int m0; scanf(%d,m); for (int jm;jsize;j) { if (sizelen) { int newlenlen*2; int newarr[newlen]; int *pnewarr (int*) malloc(newlen*4); for (int i0;inewlen;i) { newarr[i]parr[i]; } parrpnewarr; lennewlen; printf(成功扩容\n); } parr[j1]parr[j]; } parr[m]num; } else if (funct105) { printf(请输入替换的数字\n); int m0; scanf(%d,m); printf(根据下标替换数字请输入1\n); printf(根据数字替换数字请输入2\n); int p0; scanf(%d,p); if (p1) { printf(根据下标替换数字\n); printf(请输入下标\n); int num0; scanf(%d,num); parr[num]m; }else if (p2) { printf(根据数字替换数字\n); printf(请输入数字\n); int num0; scanf(%d,num); for (int i0;isize;i) { if (parr[i]num) { parr[i]m; } } } }else if (funct106) { printf(当前数组为\n); for (int i0;isize;i) { printf(%d\n,parr[i]); } }else if (funct107) { return 0; }else { printf(暂时没有多余的功能哦~); } } }
📝

华诺云谱内容团队

资深建站顾问 · 行业研究员

10年+企业数字化服务经验,专注智能建站、SEO优化与品牌营销,持续输出建站技巧、行业洞察与营销干货,已帮助5000+企业实现数字化增长。

你可能需要的服务

订阅华诺云谱资讯周报

每周一封,精选建站技巧、SEO与营销干货,直达邮箱。已有 8,000+ 企业主订阅,助你少走弯路。

↑