2023.10.24学习C语言记录

文章讲述了在C语言中学习函数、数组概念,以及实现冒泡排序算法的过程,同时介绍了如何用C语言解决汉诺塔问题的递归方法。
摘要由CSDN通过智能技术生成

今天学了函数和数组,还学习了汉诺塔,这个对我来说理解挺难的,不过最后还是学会了

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<string.h>
/*Ctrl+Y取消上一步退回操作
   Ctrl+D复制光标所在行
   Ctrl+G跳转到制定
   Shift+End从头到尾选择
   Shift+Home从尾到头选择
   Shift+Ctrl+L删除当前行
   Ctrl+k Ctrl+C注释光标所在行*/
void my_sort(int arr[], int sz) {
    int i = 0;
    //确定冒泡排序的次数
    for (i = 0; i < sz - 1; i++) {
        int flag = 1;//假设已经有序
        int j = 0;
        for (j = 0; j < sz - 1 - i; j++) {//每一次排序次数
            if (arr[j] > arr[j + 1]) {
                int tmp = arr[j];
                arr[j] = arr[j + 1];
                arr[j + 1] = tmp;
                flag = 0;//其实排序的数据不完全有序
            }
        }
        if (flag == 1) {
            break;
        }
    }

}
int main(){
    int arr[] = { 0,1,2,3,4,5,6,7,8,9 };
    int i = 0;
    int sz = sizeof(arr) / sizeof(arr[0]);
    //int sz = strlen(arr[0]);
    printf("-----%d\n", sz);
    my_sort(arr, sz);
    for (i = 0; i < sz; i++) {
        printf("%d ", arr[i]);
    }
    return 0;
}

//#define _CRT_SECURE_NO_WARNINGS 1
//#include<stdio.h>
//#include<string.h>
///*Ctrl+Y取消上一步退回操作
//   Ctrl+D复制光标所在行
//   Ctrl+G跳转到制定
//   Shift+End从头到尾选择
//   Shift+Home从尾到头选择
//   Shift+Ctrl+L删除当前行
//   Ctrl+k Ctrl+C注释光标所在行*/
//                        void move(int n, char A, char C) {
//    printf("把第%d个圆盘从%c---->%c\n", n, A, C);
//}
//void hanoi(int n, char A, char B, char C) {
//    if (n == 1) {
//        move(n, A, C);
//    }
//    else {
//        hanoi(n - 1, A, C, B);
//        move(n, A, C);
//        hanoi(n - 1, B, A, C);
//    }
//}
//int main() {//汉诺塔
//    int n = 0;
//    printf("请输入有几个盘子:");
//    scanf("%d", n);
//    hanoi(n, 'A', 'B', 'C');
//}
//                                                                                                                                        //void my_sort(int arr[], int sz) {
//                                                                                                                                                                //    int i = 0;
                                                                                                                                                                //    确定冒泡排序的次数
                                                                                                                                                                //    for (i = 0; i < sz - 1; i++) {
                                                                                                                                                                //        int flag = 1;//假设已经有序
                                                                                                                                                                //        int j = 0;
                                                                                                                                                                //        for (j = 0; j < sz - 1 - i; j++) {//每一次排序次数
                                                                                                                                                                //            if (arr[j] > arr[j + 1]) {
                                                                                                                                                                //                int tmp = arr[j];
                                                                                                                                                                //                arr[j] = arr[j + 1];
                                                                                                                                                                //                arr[j + 1] = tmp;
                                                                                                                                                                //                flag = 0;//其实排序的数据不完全有序
                                                                                                                                                                //            }
                                                                                                                                                                //        }
                                                                                                                                                                //        if (flag == 1) {
                                                                                                                                                                //            break;
                                                                                                                                                                //        }
                                                                                                                                                                //    }
                                                                                                                                                                //
                                                                                                                                                                //}
                                                                                                                                                                //int main(){
                                                                                                                                                                //    int arr[] = { 0,1,2,3,4,5,6,7,8,9 };
                                                                                                                                                                //    int i = 0;
                                                                                                                                                                //    int sz = sizeof(arr) / sizeof(arr[0]);
                                                                                                                                                                //    int sz = strlen(arr[0]);
                                                                                                                                                                //    printf("-----%d\n", sz);
                                                                                                                                                                //    my_sort(arr, sz);
                                                                                                                                                                //    for (i = 0; i < sz; i++) {
                                                                                                                                                                //        printf("%d ", arr[i]);
                                                                                                                                                                //    }
                                                                                                                                                                //    return 0;
                                                                                                                                                                //}
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值