Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/145.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 寻找三个数字中最小的一个。(学校作业)_C++ - Fatal编程技术网

C++ 寻找三个数字中最小的一个。(学校作业)

C++ 寻找三个数字中最小的一个。(学校作业),c++,C++,我是一名编程新手,我不太确定如何完成学校交给我的作业 编写一个函数void print_min(无符号字符a,短字符b,int c),它将打印“min of(a,b,c)=M”。M是这三个数字中最小的一个。对于计算和打印,使用函数int-min(无符号字符a、短字符b、int-c)和printf 我试过了,但我似乎无法让它工作,因为它每次都会出错 这是我尝试使用的代码: #include <iostream> #include <fstream> #include <

我是一名编程新手,我不太确定如何完成学校交给我的作业

编写一个函数
void print_min(无符号字符a,短字符b,int c)
,它将打印“min of(a,b,c)=M”。M是这三个数字中最小的一个。对于计算和打印,使用函数
int-min(无符号字符a、短字符b、int-c)
printf

我试过了,但我似乎无法让它工作,因为它每次都会出错

这是我尝试使用的代码:

#include <iostream>
#include <fstream>
#include <stdio.h> 


void print_min(unsigned char a, short b, int c)
{   
    int m = 0;
    if( a < b ) m = a; else m = b;
    if( c < m ) m = c;
}
int main()
{ 
    unsigned char a; short b;int c;int M;
    cin >> a;
    cin >> b; 
    cin >> c;
    M = print_min("a", b,c);
    return 0;
}
#包括
#包括
#包括
无效打印最小值(无符号字符a、短字符b、整数c)
{   
int m=0;
如果(a>a;
cin>>b;
cin>>c;
M=打印最小值(“a”,b,c);
返回0;
}
有没有可能给我一些关于我需要做什么的建议。
提前谢谢

您的程序存在多个问题

第1期:
print\u min返回void,而您可能希望它返回int

int print_min(unsigned char a, short b, int c)
{   
    int m = 0;
    if( a < b ) 
        m = a;
    else 
        m = b;
    if( c < m ) 
        m = c;
    return m;
}
函数需要一个无符号字符,您发送的是字符串文字
“a”

第三期

您需要在
cin

int main()
{ 
    unsigned char a; short b;int c;int M;
    std::cin >> a;
    std::cin >> b; 
    std::cin >> c;
    M = print_min(a, b,c);
    return 0;
}
第4期:

std::cin >> a; 
读取字符时,发送的是ascii值,而不是预期的数字值。最好对所有类型保持相同的int

#include <iostream>

int print_min(int a, int b, int c)
{   
    int m = 0;
    if( a < b ) 
        m = a; 
    else 
        m = b;
    if( c < m ) m = c;
    return m;
}

int main()
{ 
    int a; int b; int c; int M;
    std::cin >> a;
    std::cin >> b; 
    std::cin >> c;
    M = print_min(a, b, c);
    std::cout << "Smallest of 3 is = " << M << std::endl;
    return 0;
}
#包括
内部打印最小值(内部a、内部b、内部c)
{   
int m=0;
if(a>a;
标准:cin>>b;
标准:cin>>c;
M=打印最小值(a、b、c);

std::cout您的程序存在多个问题

第1期:
print\u min返回void,而您可能希望它返回int

int print_min(unsigned char a, short b, int c)
{   
    int m = 0;
    if( a < b ) 
        m = a;
    else 
        m = b;
    if( c < m ) 
        m = c;
    return m;
}
函数需要一个无符号字符,您发送的是字符串文字
“a”

第三期

您需要在
cin

int main()
{ 
    unsigned char a; short b;int c;int M;
    std::cin >> a;
    std::cin >> b; 
    std::cin >> c;
    M = print_min(a, b,c);
    return 0;
}
第4期:

std::cin >> a; 
读取一个字符时,您发送的是ascii值,而不是预期的数字值。最好为所有字符保留相同的int类型

#include <iostream>

int print_min(int a, int b, int c)
{   
    int m = 0;
    if( a < b ) 
        m = a; 
    else 
        m = b;
    if( c < m ) m = c;
    return m;
}

int main()
{ 
    int a; int b; int c; int M;
    std::cin >> a;
    std::cin >> b; 
    std::cin >> c;
    M = print_min(a, b, c);
    std::cout << "Smallest of 3 is = " << M << std::endl;
    return 0;
}
#包括
内部打印最小值(内部a、内部b、内部c)
{   
int m=0;
if(a>a;
标准:cin>>b;
标准:cin>>c;
M=打印最小值(a、b、c);

std::cout
M=print_-min(“a,b,c);
-->M=print_-min(a,b,c);
M=print_-min(“a,b,c);
-->
M=print_-min(a,b,c);
感谢您快速而全面的回复。感谢您快速而全面的回复。