精华内容
下载资源
问答
  • 降序输出三个数

    2014-10-27 19:19:21
    这是运用算法降序输出三个数,是一个简单的算法,社和用于初学者在学习c语言的时候学习参考
  • C语言,简单冒泡排序排10个整数,分别按照升序降序输出,请问怎么实现?
  • C语言 数组倒序输出数字

    千次阅读 2020-07-23 09:01:12
    引用一维数组元素 对 10 个数组元素依次赋值为 1,2,3,4,5,6,7,8,9 ,10要求按逆序输出 #include<stdio.h> int main() { int i,a[10]; for(i=0; i<10; i++) a[i]=i; for(i=10; i>0; i--) printf("%...

    引用一维数组元素 对 10 个数组元素依次赋值为 1,2,3,4,5,6,7,8,9 ,10要求按逆序输出

    #include<stdio.h>
    int main() {
    	int i,a[10];
    	for(i=0; i<10; i++)
    		a[i]=i;
    	for(i=10; i>0; i--)
    		printf("%d\n",i);
    	return 0;
    }
    

    小剧场:不能随波逐流。Don’t go with the flow.

    展开全文
  • C语言中标识符是用户自定义的一种字符序列,它由字母或下划线开头,由下划线、数字与字母组成的一组符号。在C语言中大小写有区别,一般情况下标识符尽可能“见文识意”,它不能与系统的保留字相同。在C语言的不同...

    C语言(第二章)作业详解

    [题2.1]标识符在命名时,应注意哪几个方面?

    在C语言中标识符是用户自定义的一种字符序列,它由字母或下划线开头,由下划线、数字与字母组成的一组符号。在C语言中大小写有区别,一般情况下标识符尽可能“见文识意”,它不能与系统的保留字相同。在C语言的不同编译环境中对于字符串的长度要求也不同,DOS环境下,长度最长32个字符。

    [题2.2]C语言中整数-8在内存中的存储形式是什么?

    在计算机中所有参与运算的数据在运算的过程中采用补码方式,因此将-8转换为补码保存在计算机中。

    -8原码:1000 0000 0000 1000。

    -8反码:1111 1111 1111 0111。

    -8补码:1111 1111 1111 1000

    [题2.3]字符与字符串常量有什么区别?

    在C语言中字符是基本数据类型,而字符串不是,在计算机表达字符串时,内部采用字符数组方式。字符使用单引号表示,字符串则使用双引号表示。在字符长度相同的情况下,字符串存储的实际长度比字符多一个字节。可以将字符存储为字符中,但不能将字符串存储为字符。

    [题2.4]已知“int i,a;”,执行语句“i=(a=2*3,a*5),a+6”后,变量i的值是多少?

    参考代码如下:

    # include

    main()

    {

    int i,a;

    i=(a=2*3,a*5),a+6;

    printf("i=%d a=%d\n",i,a);

    }

    运行结果如下:

    题目解读:

    i=(a=2*3,a*5),a+6;应当理解为是“,”运算概念,a+6是内在中的计算内容,它的值与i没有关系。(a=2*3,a*5)中的括号级别最高,优先进行运算,其中的内容中a=2*3与a*5按从左向右运算,因此结果是a=6,然后再计算a*5=30。在此运算结束后将后面的数据作为最终的结果。因此表达式变成了i=30,a+6?i=30,6=6?i=30,12。它最终的结果如截屏所示。

    试分析下面代码的结果。

    # include

    main()

    {

    int i,a;

    i=(a=2*3,a*5),a+6;

    printf("%d\n",(a=2*3,a*5),a+6);

    printf("i=%d a=%d\n",i,a);

    }

    # include

    main()

    {

    int i,a;

    i=(a=2*3,a*5),a+6;

    printf("%d\n",((a=2*3,a*5),a+6));/*多了一个括号有什么影响?

    printf("i=%d a=%d\n",i,a);

    }

    [题2.5]设“int i=1,j=2,k=3”,请写出以下表达式的值及计算后变量i,j,k的值。

    (1)(++i)*(++j)*(++k)

    (2)(i++)*(++j)*(k++)

    (3)i=i+j,j=j+k,k=k+i

    解答如下:

    (1)参考代码:

    # include

    main()

    {

    int i=1,j=2,k=3,m;

    m=(++i)*(++j)*(++k);

    printf("m=%d i=%d j=%d k=%d\n",m,i,j,k);

    }

    说明:

    ++i表示的概念是先自增然后再使用其值参与运算。它等价与i=i+1之后再参与相关运算。同理j与k道理相同,因此表达式为2*3*4=24。

    (2)参考代码

    # include

    main()

    {

    int i=1,j=2,k=3,m;

    m=(i++)*(++j)*(k++);

    printf("m=%d i=%d j=%d k=%d\n",m,i,j,k);

    }

    说明:

    i++表示先参与运算,然后i再实现自增。表达式为1*3*3=9。

    (3)参考代码

    # include

    main()

    {

    int i=1,j=2,k=3,m;

    i=i+j,j=j+k,k=k+i;

    printf("i=%d j=%d k=%d\n",i,j,k);

    }

    [题2.6]求下面算术表达式的值。

    (1)x+a%3*(int)(x+y)%2/4(设x=2.5,a=7,y=4.7)

    (2)(float)(a+b)/2+(int)x%(int)y(设a=2,b=3,x=3.5,y=2.5)

    解答如下:

    (1)参考代码:

    # include

    main()

    {

    float x=2.5,y=4.7;

    int a=7;

    float c;

    c=x+a%3*(int)(x+y)%2/4;

    printf("x+a%%3*(int)(x+y)%%2/4=%f\n",c)

    展开全文
  • C语言升序与降序

    千次阅读 2019-04-27 17:34:01
    //数字降序 int i , j ; //计数器 int temp ; //临时变量 for ( i = 1 ; i 5 - 1 ; i ++ ) //遍历n-1次 { for ( j = 1 ; j 5 - i ; j ++ ) //比较n-i次 { if ( a [ ...

    趣味场景:有一个体育老师上课突然发飙,让体委把班里其他60名同学从矮到高排成一列,人与人间隔半米,也不知道是不是想玩多米诺骨牌。体委又怕老师发飙,只能照办。
    体委再怎么说也是学过排序的人,于是让所有人先随意排成一列,并且告诉他们:第一个人跟第二个人比较,高的站后面,然后第二个再跟第三个人比较,高的站后面,以此类推;当最高的人站在最后面时,向前边的人传话,让第一个人按照同样的方法继续比较,以此类推。直到体委发现所有人都不再移动,才向老师报告排序完成


    温馨提示:以下代码可在https://c.runoob.com/compile/11编译运行,测试结果

    小试牛刀

    先来做一道严奶奶的数据结构习题册中1.16的一道算法题吧,原题如下:

    1.16 试写一算法,自大至小依次输出顺序读入的三个整数 X, Y 和 Z 的值。

    先傻瓜一下,假设有三个整数分别为1 2 3,那么我们只需要一个一个比较,把最小的值放到最后面。得到以下结果:2 1 3,2 3 1,3 2 1。我们只需要比较3次,由此得到具体代码如下:

    #include <stdio.h>
    
    void decending(int x, int y, int z)
    {
        int temp;
    
        if(x < y)
        {
            temp = x;
            x = y;
            y = temp;
        }
        if(y < z)
        {
            temp = y;
            y = z;
            z = temp;
        }
        if(x < y)
        {
            temp = x;
            x = y;
            y = temp;
        }
    
        printf("降序后的结果为:%d %d %d", x, y, z);
    }
    
    int main()
    {
        int x,y,z;
    
        printf("请输入3个整数:");
        scanf("%d", &x);
        scanf("%d", &y);
        scanf("%d", &z);
    
        decending(x, y,z);
        return 0;
    }
    //打印结果略
    

    于是我们就会发现,当比较的数字一多,代码量也是持续增长,效率低下。那么如何简单实现多个数字的降序/升序操作,解放我们的双手呢?

    冒泡排序与降序其实实现思路是一样的,区别在于比较操作,改动一下比较符号即可。

    先通过一个简单的例子来寻找比较规律

    1 2 3 4四个数,要求从大到小依次排序,即降序。

    从头到尾进行第1次遍历时,需要比较3次,即2 1 3 4,2 3 1 4,2 3 4 1

    从头到尾进行第2次遍历时,需要比较2次,即3 2 4 1,3 4 2 1

    从头到尾进行第3次遍历时,需要比较1次,即4 3 2 1

    到此,降序完成。于是我们可以总结出一个规律,即对n个数进行降序时,需要从头到尾遍历n-1次,第i次遍历需要比较n-i次,其中,1≤i≤n-i

    降序操作

    降序操作具体代码如下:

    #include <stdio.h>
    
    int main()
    {
        int a[5]={1,2,3,4,5};	//数字降序
        int i,j;					//计数器
        int temp;					//临时变量
    
        for(i=1; i<=5-1; i++)		//遍历n-1次
        {
            for(j=1; j<=5-i; j++)	//比较n-i次
            {
                if(a[j-1] < a[j])	//两个数进行比较
                {
                    temp = a[j-1];
                    a[j-1] = a[j];
                    a[j] = temp;
                }
            }
        }
    
        printf("降序后的结果为:");
        for(i=0; i<5; i++)
            printf("%d ", a[i]);
    
        return 0;
    }
    //打印结果为:5 4 3 2 1
    

    升序操作

    升序操作类似,将比较操作中的<改为>即可,具体代码如下:

    #include <stdio.h>
    
    int main()
    {
        int a[5]={5,4,3,2,1};	//数字降序
        int i,j;					//计数器
        int temp;					//临时变量
    
        for(i=1; i<=5-1; i++)		//遍历n-1次
        {
            for(j=1; j<=5-i; j++)	//比较n-i次
            {
                if(a[j-1] > a[j])	//两个数进行比较
                {
                    temp = a[j-1];
                    a[j-1] = a[j];
                    a[j] = temp;
                }
            }
        }
    
        printf("升序后的结果为:");
        for(i=0; i<5; i++)
            printf("%d ", a[i]);
    
        return 0;
    }
    //打印结果为:1 2 3 4 5
    

    算法优化

    最后回到严奶奶的那道算法题,我们如何利用我们得出的规律对原先的算法进行优化呢?一切尽在不言之中,自己看代码吧。

    #include <stdio.h>
    
    void decending(int a[])
    {
        int i,j;
        int temp;
    
        for(i=1; i<=3-1; i++)
        {
            for(j=1; j<=3-i; j++)
            {
                if(a[j-1] < a[j])
                {
                    temp = a[j-1];
                    a[j-1] = a[j];
                    a[j] = temp;
                }
            }
        }
    
        printf("降序后的结果为:");
        for(i=0; i<3; i++)
            printf("%d ", a[i]);
    }
    
    int main()
    {
        int a[3];   //声明容量为3的数组
        int i;
    
        printf("请输入3个整数:");
        for(i=0; i<3; i++)
            scanf("%d", &a[i]);
    
        decending(a);   //降序操作
    
        return 0;
    }
    
    展开全文
  • //由键盘任意输入3个数,实现按降序输出此3个数 #include <stdio.h> int main() { int x, y, z; int t; printf("请任意输入3个数:"); scanf("%1d%1d%1d", &x, &y, &z);//在%d之间加入1可以...
    //由键盘任意输入3个数,实现按降序输出此3个数
    #include <stdio.h>
    int main()
    {
    	int x, y, z;
    	int t;
    
    	printf("请任意输入3个数:");
    	scanf("%1d%1d%1d", &x, &y, &z);//在%d之间加入1可以连续输入三个数字
    
    	if (x < y)
    	{
    		t = x;
    		x = y;
    		y = t;
    	}
    
    	if (x < z)
    	{
    		t = x;
    		x = z;
    		z = t;
    	}
    	
    	if (y < z)
    	{
    		t = y;
    		y = z;
    		z = t;
    	}
    
    	printf("降序输出为:%d%d%d\n", x, y, z);
    
    	return 0;
    }

     

    展开全文
  • 用选择法对数组中10个整数,按由大到小排序。 要求:(1)定义排序函数sort来实现。 函数的原型为:void sort(int b[10],int n ) (2)数组中的10个整数,由键盘输入。 (3)在源程序中书写必要的注释。
  • 逆序打印出各位数字。 示例代码: /** * 17.输入一个不多于5位的正整数,要求:(1)求它是几位数,(2)逆序打印出各位数字。 */ public class PlusNumber { public static void main(String[] args) { System....
  • C语言期中考试试卷答案》由会员分享,可在线阅读,更多相关《C语言期中考试试卷答案(13页珍藏版)》请在人人文库网上搜索。1、班级:姓名:学号:共 11 页C语言程序设计课程考试试题 ( A 卷)题号一二三四五六七八九十...
  • X老板脾气古怪,他们公司的电话分机号都是3位数,老板规定,所有号码必须是降序排列,且不能有重复的数位。比如: 751,520,321 都满足要求,而, 766,918,201 就不符合要求。 现在请你计算一下,按照这样的规定,...
  • -八种基本的排序(1)——冒泡排序(C语言实现)八种基本的排序(2)——直接选择排序(C语言实现)八种基本的排序(3)——插入排序(C语言实现)八种基本的排序(4)——归并排序(C语言实现)八种基本的排序(5)——快速排序(C语言...
  • 本文主要给大家讲解图像空间域滤波的相关内容,包括空域滤波概念,以及常用的空域滤波算法,并通过C语言编程来实现几种常用空域滤波(均值滤波、中值滤波、最大值滤波、最小值滤波、高斯滤波和统计滤波),帮助初学者...
  • C语言上机考试题目》由会员分享,可在线阅读,更多相关《C语言上机考试题目(3页珍藏版)》请在人人文库网上搜索。1、C 语言上机考试试题1、编写一个程序,判定一个字符串是否是另一个字符串的子串,若是,返回子串...
  • C语言问题:任意输入n个整数(n>0&&n<=100),按降序排序后,将其输出....降序输出,每个整数占5位宽 输入样例 3 43 5 7 输出样例 43 7 5 3</p>
  • 问题描述:输入3个数a,b,c,按大小顺序输出。 问题分析:利用指针的取地址功能。 程序源码: #include&lt;stdio.h&gt; void main() { int n1,n2,n3; int *pointer1,*pointer2,*pointer3; printf("...
  • 输入三个数字,按从大到小输出,使用分支结构而没有使用循环或者数组,这是最初级的排序
  • C语言实现数字全排列

    千次阅读 多人点赞 2020-03-02 11:30:23
    文章目录一、问题描述二、代码三、算法 一、问题描述 【问题描述】输入整数N( 1 <= N <= 10 ),生成从1~N所有整数的全排列。 【输入形式】输入整数N。...如果将每行上的输出看成一个数字,则所有输出构...
  • #include #include #include #define N 10 int main(int argc, char *argv[]) { int i,... } } } printf("\n降序为:\n"); for(i = 0;i ;i++) { printf("%d\t",randnum[i]); } getch(); return 0; }
  • // Test2.cpp : Defines the entry point for the console application. // #include "stdafx.h" ...* 对降序数组进行二分查找 */ int main(int argc, char* argv[]) { int a[N]; int i,k; int
  • 一串无序数值,从第一个数值开始依次与后面的数字比较,交换位置,得到有序的数值(升序排列/降序排列),此过程成为冒泡排序。 冒泡排序法: 用冒泡排序,将无序数值转化位有序数值的方法,称为冒泡排序法。 运行...
  • 题目要求:输入两个实数,按代数值由小到大的顺序输出这两个数 题目分析:
  • 输入五个数字,对其进行降序排列。之后插入一个新的数字,再将新的数组进行降序排列。 首先先对输入的五个数字运用冒泡法进行排序 import java.util.Scanner; public class ChaRushuzu { public static void main...
  • PTA(Basic Level) 1019:数字黑洞 (C语言实现) 学习:因为前导0也要输出,所以考虑了用字符串作输入,在转化为整数处理,还要转换成字符串输出,很麻烦。后来借鉴了一些大神的处理,学习到了%04d这样的输出模式,...
  • C语言习题 学生成绩输入和输出

    千次阅读 2017-03-14 16:12:15
    Description 编写一个函数print,打印一个学生的成绩数组,该数组中有5个学生的数据,每个学生的数据包括num(学号)、name(姓名)、score[3](3门课的成绩)。编写一个函数input,用来输入5个学生的数据。...
  • 给定任一个各位数字不完全相同的4位正整数,如果我们先把4个数字按非递增排序,再按非递减排序,然后用第1个数字减第2个数字,将得到一个新的数字。一直重复这样做,我们很快会停在有“数字黑洞”之称的6174,这个...
  • c语言的三种数字排序方法

    万次阅读 多人点赞 2017-10-04 16:19:47
    先定义一个main主函数然后printf输入数据之后调用选择排序函数select,排好之后printf输出已经排好的数据。 然后我们开始我们这段程序的重点select选择排序函数。 首先我们定义四个整型变量i,j,max,temp。 i...
  • //数字在排序数组中出现的次数(改动) ...3,4,5}和数字3,因为3出现了4次,因此输出4. #include <stdio.h> int One_Num_Times(int *arr, int len, int num) { int i = 0; int times = 0; for (i = ...
  • C语言冒泡排序法从小到大输出

    千次阅读 2020-03-01 20:20:05
    不多说 发图片吧 问题一:为什么第一个for中i这里我们把数字调小一点简单的解释,设一个三个元素的数组a[3] 当我们没有-1 那么会计算到第三个元素即a[2] 但此时我们定义的数组中没有第四个元素来和第三个元素进行...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 4,817
精华内容 1,926
关键字:

c语言数字降序输出

c语言 订阅