C语言 从键盘上输入2个int型数 比较大小,并且显示最小数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言 从键盘上输入2个int型数 比较大小,并且显示最小数相关的知识,希望对你有一定的参考价值。

在 C 语言中,可以使用以下代码从键盘上输入两个整数,比较大小,并显示最小的数:
```c
#include <stdio.h>
int main()
int num1, num2, min;
printf("请输入两个整数:\n");
scanf("%!d(MISSING) %!d(MISSING)", &num1, &num2);
if (num1 < num2)
min = num1;
else
min = num2;

printf("最小的数是:%!d(MISSING)\n", min);
return 0;

```
代码解释:
- `#include <stdio.h>` 是 C 语言中常用的头文件,包含输入输出的函数;
- `int main()` 是主函数,程序从这里开始执行;
- `int num1, num2, min;` 声明三个整型变量;
- `printf("请输入两个整数:\n");` 显示提示信息;
- `scanf("%!d(MISSING) %!d(MISSING)", &num1, &num2);` 从键盘上读取两个整数,并将它们存储在变量 `num1` 和 `num2` 中;
- `if (num1 < num2) ... ` 使用 if 语句比较 `num1` 和 `num2` 的大小,如果 `num1` 小于 `num2`,执行花括号中的语句,否则执行 else 后花括号中的语句;
- `min = num1;` 或 `min = num2;` 根据比较结果将最小值存储在变量 `min` 中;
- `printf("最小的数是:%!d(MISSING)\n", min);` 显示最小的数;
- `return 0;` 表示程序正常结束。
需要注意的是,这段代码只适用于两个整数的比较,如果需要比较多个整数,需要使用其他方法,如数组等。
参考技术A 以下是使用 C 语言从键盘输入两个整数并比较它们的代码,然后显示最小数:

```c
#include <stdio.h>

int main()
int a, b, min;

printf("请输入第一个整数:");
scanf("%d", &a);

printf("请输入第二个整数:");
scanf("%d", &b);

if (a < b)
min = a;
else
min = b;


printf("最小数为:%d\n", min);

return 0;

```

首先,我们声明了三个变量 `a`、`b` 和 `min`,其中 `a` 和 `b` 是要比较的两个整数,`min` 用于存储最小值。

然后,使用 `scanf()` 函数从键盘上分别读取两个整数,并将它们存储在变量 `a` 和 `b` 中。

接下来,通过使用 `if` 条件语句来比较这两个整数。如果 `a` 小于 `b`,则将 `a` 赋值给 `min`;否则将 `b` 赋值给 `min`。

最后,使用 `printf()` 函数将 `min` 的值输出到屏幕上。
参考技术B #include <stdio.h>
void main()

int a,b;
scanf("%d %d",&a,&b);
if(a>b)
printf("%d\n",b);
else if(a<b)
printf("%d\n",a);
else
printf("a=b\n");
追问

用C++

追答

你在 VC 环境下,编译该程序肯定没有问题。它是向下兼容的。所谓面向对象的编程,是指如果问题本身确实适合用面向对象的思想,这时你用C++才比较自然;而不是指把所有的 C 程序都非得改用 C++ 才成。这样反而是给自己找麻烦!

本回答被提问者采纳
参考技术C main()
int a,b;
scanf("%d%d",&a,&b);
printf("%d\n",((a<b)?a:b);
参考技术D #include<stdio.h>
int main()

int a,b;
scanf("%d%d",&a,&b);
if(a>b)
printf("%d",b);
else
printf("%d",a);
return 0;

C语言如何从键盘输入任意3个数,按从小到大的顺序输出?

代码1.

// 输入3个数,要求按从小到大顺序输出  
  
#include <stdio.h>  
  
int main()  
  
    int a,b,c,t;  
    printf("请输入三个数:");  
    scanf("%d%d%d",&a,&b,&c);  
    if(a > b)  
      
        t = a;  
        a = b;  
        b = t;  
      
    if(a > c)  
      
        t = a;  
        a = c;  
        c = t;  
      
    if(b > c)  
      
        t = b;  
        b = c;  
        c = t;  
      
    printf("从小到大的顺序是:%d  %d  %d\\n",a,b,c);  
    return 0;  

代码2.

输入3个字符串,按从小到大顺序输出。  //先用程序对三个数进行从小到大排序,然后修改程序
#include<stdio.h>
#include<string.h>
int main()
void swap(char *pt1,char *pt2);
 char a[20],b[20],c[20];
 char *p1,*p2,*p3;
 printf("请输入三个字符串:");
 gets(a);
 gets(b);
 gets(c);
 //或用scanf("%s,%s,%s",a,b,c);
 p1=&a[0];p2=&b[0];p3=&c[0];//三个指针分别指向三个字符数组
 if(strcmp(*p1,*p2)>0)swap(p1,p2);//if(strcmp(a,b)>0)swap(a,b); //比较两个字符串的大小,为什么用前一句的时候会出现警告呢
 
 if(strcmp(a,c)>0)swap(a,c);//if(strcmp(*p1,*p3)>0)swap(*p1,*p3);
 if(strcmp(b,c)>0)swap(b,c);// if(strcmp(*p2,*p3)>0)swap(*p2,*p3);
 printf("由小到大排列:%s\\n%s\\n%s\\n",a,b,c);
 return 0;


void swap(char *pt1,char *pt2)
 char t[20];
   strcpy(t,pt1);
   strcpy(pt1,pt2);
   strcpy(pt2,t);
//t=*pt1;*pt1=*pt2;*pt2=t;

代码3.

#include<stdio.h> 
#include<string.h> 
#define SIZE 3 
#define LEN 50 


int main(void) 
 
    char str[SIZE][LEN]; 
    char (*pst)[LEN]=str; 
    char temp[LEN]; 
    int i,j; 
    
    printf("Please enter 3 string.\\n"); 
    
    for(i=0;i<SIZE;i++) 
     
        fgets(*(pst+i),LEN,stdin);
     
    printf("Befor sort:\\n"); 
    
    for(i=0;i<SIZE;i++)
      
         fputs(*(pst+i),stdout);
     
      
     for(i=0;i<SIZE-1;i++)
          for(j=i+1;j<SIZE;j++) 
           
          
              if(strcmp(*(pst+i),*(pst+j)) == 1)
               
                  strcpy(temp,*(pst+i));
                  strcpy(*(pst+i),*(pst+j));
                  strcpy(*(pst+j),temp);
                
            
            
       printf("After sort:\\n"); 
       for(i=0;i<SIZE;i++) 
        
           fputs(*(pst+i),stdout);
       
       

参考技术A 代码1.
// 输入3个数,要求按从小到大顺序输出

#include <stdio.h>

int main()

int a,b,c,t;
printf("请输入三个数:");
scanf("%d%d%d",&a,&b,&c);
if(a > b)

t = a;
a = b;
b = t;

if(a > c)

t = a;
a = c;
c = t;

if(b > c)

t = b;
b = c;
c = t;

printf("从小到大的顺序是:%d %d %d\n",a,b,c);
return 0;

代码2.
输入3个字符串,按从小到大顺序输出。 //先用程序对三个数进行从小到大排序,然后修改程序
#include<stdio.h>
#include<string.h>
int main()
void swap(char *pt1,char *pt2);
char a[20],b[20],c[20];
char *p1,*p2,*p3;
printf("请输入三个字符串:");
gets(a);
gets(b);
gets(c);
//或用scanf("%s,%s,%s",a,b,c);
p1=&a[0];p2=&b[0];p3=&c[0];//三个指针分别指向三个字符数组
if(strcmp(*p1,*p2)>0)swap(p1,p2);//if(strcmp(a,b)>0)swap(a,b); //比较两个字符串的大小,为什么用前一句的时候会出现警告呢

if(strcmp(a,c)>0)swap(a,c);//if(strcmp(*p1,*p3)>0)swap(*p1,*p3);
if(strcmp(b,c)>0)swap(b,c);// if(strcmp(*p2,*p3)>0)swap(*p2,*p3);
printf("由小到大排列:%s\n%s\n%s\n",a,b,c);
return 0;

void swap(char *pt1,char *pt2)
char t[20];
strcpy(t,pt1);
strcpy(pt1,pt2);
strcpy(pt2,t);
//t=*pt1;*pt1=*pt2;*pt2=t;

代码3.
#include<stdio.h>
#include<string.h>
#define SIZE 3
#define LEN 50
int main(void)

char str[SIZE][LEN];
char (*pst)[LEN]=str;
char temp[LEN];
int i,j;

printf("Please enter 3 string.\n");

for(i=0;i<SIZE;i++)

fgets(*(pst+i),LEN,stdin);

printf("Befor sort:\n");

for(i=0;i<SIZE;i++)

fputs(*(pst+i),stdout);


for(i=0;i<SIZE-1;i++)
for(j=i+1;j<SIZE;j++)


if(strcmp(*(pst+i),*(pst+j)) == 1)

strcpy(temp,*(pst+i));
strcpy(*(pst+i),*(pst+j));
strcpy(*(pst+j),temp);



printf("After sort:\n");
for(i=0;i<SIZE;i++)

fputs(*(pst+i),stdout);

以上是关于C语言 从键盘上输入2个int型数 比较大小,并且显示最小数的主要内容,如果未能解决你的问题,请参考以下文章

C语言编程:从键盘输入10个数,求最大值,最小值和平均值

c#编程:实现从键盘上输入100个整数,将能被2整除但是不能被5整除的整数输出。

c语言 从键盘上读入一个整型数,将其转化成字符串并输出。例如:输入123,则转换为字符串“123

c语言 从键盘上任意输入一个字符(字母大小写,数字,控制字符和其他字符)判断所属字符类型,只发

c语言中,运用指针,从键盘输入10个整数,求出其中最小值

[C语言]从键盘上输入两个整数num1和num2,判断两数之和与两数乘积的大小关系?