专升本c语言学习体会3

Posted 不能再挠头了

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了专升本c语言学习体会3相关的知识,希望对你有一定的参考价值。

      ## 今天分享的一道题相对之前发的复杂一点点

前几天晚上咖啡喝多了,半夜睡着,在CSDN上面看blink的帖子,发现了一个题

题是这样的

觉得挺有意思,就在手机上做了一下。我是这么想的

  1. 首先说第一句话,实现对n个数进行排序。我首先想到的是scanf也不知道理解的对不对,那就定义一个变量,然后scanf。
  2. 然后看题的说明,要求使用函数调用的方式实现,换成c语言的意思就是,“你得给我整个函数”。好了,一个输入n,一个函数,创好了。
  3. 往后看,n个数保存在数组中,使用数组和个数n同时作为参数来传递,
    明白了,也就是说“假如我输入这个n是3,那么保存在数组里的元素就是三个,从0~2,数组[0],数组[1],数组[2]。这里就需要做一个数组然后把数组放在循环里去让我们键盘输入,循环从0开始,结束的条件就是n-1,循环里放输入数组[循环变量]”,
  4. 这些事情做好了,剩下的就简单了,我们就需要写函数了,函数里写一个排序,然后再用循环一个一个输出出来,上代码
#include <stdio.h>
void fun(int *a, int n) 
    int i;
    int j;
    int t;
    for (i = 1;i <= n - 1;i++) 
        for (j = 0;j < n - 1;j++) 
            if (a[j] > a[j + 1]) 
                t = a[j];
                a[j] = a[j + 1];
                a[j + 1] = t;
            
        
    

int main()

    
    int   a[20];
    int  x, i, j, n;
    printf("输入要排序的数字数量\\n");
    scanf_s("%d", &n);
    printf("请输入数字,用回车分隔\\n");
    for (i = 0;i <= n - 1;i++) 
        scanf_s("%d", &a[i]);
    
    fun(a,n);
    printf("\\n");
    for (j = 0;j <= n - 1;j++) 
        printf("%d\\t", a[j]);
    



最后回到CSDN上去回复这个小伙伴

那天太晚了,写完就睡下了。
希望有同样的问题,看到我自己写的,能帮到你们。
代码的还有什么可以改进的,可以评论区回复。

以上是关于专升本c语言学习体会3的主要内容,如果未能解决你的问题,请参考以下文章

专升本c语言学习体会3

专升本c语言学习体会3

专升本c语言学习体会

专升本c语言学习体会

2021-05-08

专升本计算机最新甘肃省专升本考试C语言部分复习题带答案