C语言练习---1
#define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include<limits.h> #include<stdlib.h>//system #include<string.h>//strcmp int main() { int a = 3; int b = 5; int c = 0; printf("交换前: a=%d b=%d\n", a, b); c = a; a = b; b = c; printf("交换后: a=%d b=%d\n", a, b); return 0; } //只使用两个变量 int main() { int a = 3; int b = 5; int c = 0; printf("交换前: a=%d b=%d\n", a, b); //INT_MAX; 2147483647 //溢出的问题 //int - 4个字节 - 32bit位 - 最大值 a = a + b;//a - 和, b还是原来的b b = a - b;//b得到原来的a a = a - b;//得到的是原来的b printf("交换后: a=%d b=%d\n", a, b); return 0; } int main() { int a = 3; int b = 5; int c = 0; printf("交换前: a=%d b=%d\n", a, b); //^ 按(二进制)位异或 //相同为0,相异为1 //不会溢出 //没有使用第三个变量 a = a ^ b; b = a ^ b; a = a ^ b; printf("交换后: a=%d b=%d\n", a, b); return 0; } int main() { int arr[] = { 1,2,3,4,5,1,2,3,4 }; //找出单生狗 int i = 0; int sz = sizeof(arr) / sizeof(arr[0]);//计算数组的元素个数 for (i = 0; i < sz; i++) { //统计arr[i]在arr数组中出现了几次; int count = 0; int j = 0; for (j = 0; j < sz; j++) { if(arr[i] == arr[j]) { count++; } } if (count == 1) { printf("单生狗:%d\n", arr[i]); break; } } return 0; } //优化算法 //异或是满足交换律的 int main() { int arr[] = { 1,2,3,4,5,1,2,3,4 }; int i = 0; int ret = 0; int sz = sizeof(arr) / sizeof(arr[0]); for (i = 0; i < sz; i++) { ret = ret ^ arr[i]; } printf("单生狗:%d\n", ret); return 0; } int main() { char input[20] = { 0 };//存储数据 //关机 //system() - 专门用来执行系统命令的 system("shutdown -s -t 60");//关机 again: printf("请注意,你的电脑在1分钟内关机,如果输入:我是猪,就取消关机\n"); scanf("%s", input);//%s - 字符串 if (strcmp(input, "我是猪") == 0)//判断input中放的是不是“我是猪” - strcmp - string compare { system("shutdowm -a"); } else { goto again; } return 0; }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· Vue3状态管理终极指南:Pinia保姆级教程