首页 > 编程语言 >编程打卡:C语言程序设计

编程打卡:C语言程序设计

时间:2023-05-15 21:15:44浏览次数:43  
标签:args return fmt 编程 C语言 USAGE Println 打卡 simplemath

package main
import "os"
import "fmt"
import "simplemath"
import "strconv"
var Usage = func() {
fmt.Println("USAGE: calc command [arguments] ...")
fmt.Println("\nThe commands are:\n\tadd\tAddition of two values.\n\tsqrt\tSquare
root of a non-negative value.")
}
func main() {
args := os.Args
if args == nil || len(args) < 2 {
Usage()
return
}
switch args[0] {
case "add":
if len(args) != 3 {
fmt.Println("USAGE: calc add <integer1><integer2>")
return
}
v1, err1 := strconv.Atoi(args[1])
v2, err2 := strconv.Atoi(args[2])
if err1 != nil || err2 != nil {
fmt.Println("USAGE: calc add <integer1><integer2>")
return
}
ret := simplemath.Add(v1, v2)
fmt.Println("Result: ", ret)
case "sqrt":
if len(args) != 2 {
fmt.Println("USAGE: calc sqrt <integer>")
return
}
v, err := strconv.Atoi(args[1])
if err != nil {
fmt.Println("USAGE: calc sqrt <integer>")
return
}
ret := simplemath.Sqrt(v)
fmt.Println("Result: ", ret)
default:
Usage()
}
}
// add.go
package simplemath
func Add(a int, b int) int {
return a + b
}
// add_test.go
package simplemath
import "testing"
func TestAdd1(t *testing.T) {
r := Add(1, 2)
if r != 3 {
t.Errorf("Add(1, 2) failed. Got %d, expected 3.", r)
}
}

标签:args,return,fmt,编程,C语言,USAGE,Println,打卡,simplemath
From: https://www.cnblogs.com/sugar-refinery/p/17403125.html

相关文章

  • 建民打卡日记5.15
    一、问题描述一个整数“犯二的程度”定义为该数字中包含2的个数与其位数的比值。如果这个数是负数,则程度增加0.5倍;如果还是个偶数,则再增加1倍。例如数字-13142223336是个11位数,其中有3个2,并且是负数,也是偶数,则它的犯二程度计算为:3/11×1.5×2×100%,约为81.82%。本题就请你计算一......
  • 打卡
    1.问题:两个不同的自然数A和B,如果整数A的全部因子(包括1,不包括A本身)之和等于B;且整数B的全部因子(包括1,不包括B本身)之和等于A,则将整数A和B称为亲密数。求3000以内的全部亲密数。2.思路:通过函数求出每个数的因子之和并判断,然后穷举1到3000的数即可。3.程序流程图: 4.代码实现:......
  • C语言笔记
    C基本语法我们已经看过C程序的基本结构,这将有助于我们理解C语言的其他基本的构建块。C的令牌(Token)C程序由各种令牌组成,令牌可以是关键字、标识符、常量、字符串值,或者是一个符号。例如,下面的C语句包括五个令牌:printf("Hello,World!\n");这五个令牌分别是:printf......
  • 啊哈C语言案例学习笔记
    HelloWorld#include<stdio.h>/*技术要点:初学者在编写程序时,经常会忘记在语句后边添加分号,*/intmain(){ printf("helloworld"); printf("\n");//换行 return0;}求和运算/*编写程序:计算10+20并输出结果*解题思路:*(1)定义一个数据类型*i、......
  • 第十五天打卡
    定义一个Animal类,成员包括:(1)整数类型的私有数据成员m_nWeightBase,表示Animal的体重;(2)整数类型的保护数据成员m_nAgeBase,表示Animal的年龄;(3)公有函数成员set_weight,用指定形参初始化数据成员m_nWeightBase;(4)公有成员函数get_weight,返回数据成员m_nWeightBase的值;(5)公有函数成员set_age,用......
  • c++打卡第二十七天
    一、水仙花数1、问题描述 2、设计思路对于一个三位数,,求出它的每位数,三个数的平方加到一起,判断是否与原数相等,如果相等,就是水仙花数。3、流程图 4、代码实现#include<iostream>usingnamespacestd;intmain(){intn,a,b,c,d;for(n=100;n<1000;n++){......
  • 5.15打卡
    一、问题描述:2000以内的不小于4的正偶数都能够分解为两个素数之和(即验证歌德巴赫猜想对2000以内的正偶数成立)。二、设计思路:该问题我们可以采用函数来解决。定义一个函数,函数名设为fun,在其中判断传进来的实际参数(设为n(n=2)),是否为素数,如果是素数则返回1,否则返回0。在判断是......
  • 打卡1
    问题描述:一个口袋中放有12个球,已知其中三个是红的,三个是白的,六个是黑的,现从中任取八个,问共有多少种颜色搭配?流程图:   伪代码:num<-0fori<-0to3forj<-0to3if8-i-j>6continueelsek=8-i-jnum++outputi,j,koutputnum代码:#include<iostream>usingnames......
  • 每日打卡一小时(第二十五天)
    一.问题描述请使用模板参数设计实现双倍功能函数,函数功能要求实现返回值为输入参数的两倍,函数参数应能适应整型、浮点型、双精度型等各种类型,返回值类型与参数一样。二.设计思路注意函数模板参数的设计格式,按要求完成即可。三.代码实现#include<iostream>usingnamespace......
  • Matlab中编程细节
    W频率轴的设置频率轴的设置的参考链接:fftshift详解-CSDN1.3.DFT的特性-CSDNfftshift讲解-信号处理小王子的文章-知乎VMatlab的fft函数掌握Matlab中IFFT/FFT注意事项及在OFDM仿真中的应用问题-CSDN数字信号处理1:完全掌握Matlab中的FFT-hal3515的文章-知乎......