当前位置: 首页 > news >正文

Day10_C语言基础

1.思维导图

2.2.argc和argv的问题

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main(int argc, const char *argv[])
{int ret=0;int num1=atoi(argv[1]);int num2=atoi(argv[3]);if(argc!=4){printf("输入的参数不符合标准%s\n",argv[0]);return 1;}if(strcmp((argv[2]),"+")==0){ret=num1+num2;printf("%d+%d=%d\n",num1,num2,ret);}else if(strcmp(argv[2],"*")==0){ret=num1*num2;printf("%d*%d=%d\n",num1,num2,ret);}                                                                 else if(strcmp(argv[2],"/")==0){if(num2==0){printf("除数的不能是零\n");return 1;}ret=num1/num2;printf("%d/%d=%d\n",num1,num2,ret);}else if(strcmp(argv[2],"%")==0){if(num2==0){printf("被取模数不能是零\n");return 1;}ret=num1%num2;printf("%d%%%d=%d\n",num1,num2,ret);}else{printf("输入的参数不符合标准%s\n",argv[2]);return 1;}return 0;
}

方法二:

#include <stdio.h>
#include <string.h>
#include <stdlib.h>int main(int argc, const char *argv[])
{int ret = 0;int num1 = atoi(argv[1]);int num2 = atoi(argv[3]);// 检查命令行参数数量是否符合要求if(argc != 4) {printf("输入的参数不符合标准%s\n", argv[0]);return 1;}// 使用 switch case 处理不同运算符switch (*(argv[2])) {case '+':ret = num1 + num2;printf("%d+%d=%d\n", num1, num2, ret);                           break;case '*':ret = num1 * num2;printf("%d*%d=%d\n", num1, num2, ret);break;case '/':if (num2 == 0) {printf("除数不能是零\n");return 1;}ret = num1 / num2;printf("%d/%d=%d\n", num1, num2, ret);break;case '%':if (num2 == 0) {printf("被取模数不能是零\n");return 1;}ret = num1 % num2;printf("%d%%%d=%d\n", num1, num2, ret);break;default:printf("输入的参数不符合标准%s\n", argv[2]);return 1;}return 0;
}

http://www.dtcms.com/a/241529.html

相关文章:

  • 6个月Python学习计划 Day 18 - 项目实战 · 学生成绩管理系统(OOP版)
  • 什么是EULA和DPA
  • 汇编常见指令
  • 如何高效的组织产品研发团队与产品交付开发团队
  • 【Linux手册】探秘系统世界:从用户交互到硬件底层的全链路工作之旅
  • 等待组(waitgroup)
  • MySQL自定义函数零基础学习教程
  • 销售心得分享
  • ip子接口配置及删除
  • Clean Code 学习总结01 - 物理设计与命名艺术
  • 打开GitHub网站因为网络原因导致加载失败问题解决方案
  • 选取货物 - 题解(0-1背包问题)
  • Python学习(8) ----- Python的类与对象
  • Shellshock漏洞与永恒之蓝(WannaCry)勒索病毒深度分析
  • 记录:外扩GPIOD访问报警告
  • 嵌入式学习Day34
  • DAY 26 函数专题1
  • (每日一道算法题)子集
  • 智能SQL优化工具PawSQL月度更新 | 推出免费私域部署社区版
  • Day09_刷题niuke20250609
  • 高保真组件库:上传
  • 问题复盘-当前日志组损坏问题
  • 源雀Scrm开源版:AI客服会话总结 功能发布
  • PyTorch学习路径与基础实践指南
  • 76. 最小覆盖子串 Java版
  • tomcat核心组件
  • TCP和UDP区别
  • 2025-05-08-deepseek本地化部署
  • Geekbench AI 命令行工具的安装
  • 开始新的认识,对worldquant(50alpha)