8.21

#include <stdio.h>

void bubbleSort(int **p, int n);

int main(void){

	int a[100];
int *b[100];
int n, i, **p; printf("Input your n(n < 100)\n");
scanf("%d", &n);
printf("Input your a[n]\n");
for(i = 0; i < n; i++)
scanf("%d", a + i);
for(i = 0; i < n; i++)
b[i] = a + i;
p = b;
bubbleSort(p, n);
for(i = 0; i < n; i++)
printf("%d ", *b[i]);
printf("\n");
return 0;
} void bubbleSort(int **p, int n){
int i, j, flag = 1;
int *temp;
for(i = 0; flag; i++){
flag = 0;
for(j = n - 1; j > i; j--){
flag = 1;
if(**(p + i) > **(p + j)){
temp = *(p + i);
*(p + i) = *(p + j);
*(p + j) = temp;
}
} }
}

8.20

#include <stdio.h>
#include <string.h> void selectionSort(char **p); int main(void)
{
char a[5][30], *b[5], **p;
int i; for(i = 0; i < 5; i++)
b[i] = a[i];
for(i = 0; i < 5; i++)
scanf("%s", b[i]);
p = b;
selectionSort(p);
printf("\n");
for(i = 0; i < 5; i++)
printf("%s\n", b[i]);
return 0;
} void selectionSort(char **p)
{
int i, j, minj, n = 5;
char *temp; for(i = 0; i < n - 1; i++)
{
minj = i;
for(j = i; j < n; j++)
{
if(strcmp(*(p + j), *(p + minj)) < 0)
minj = j;
}
temp = *(p + i);
*(p + i) = *(p + minj);
*(p + minj) = temp;
} }

8.16

#include <stdio.h>

int getnum(char str[], int a[]);

int main(void)
{
char str[] = {}, *pstr;
int a[] = {}, total, *p, i;
p = a;
pstr = str;
printf("Input your string\n");
gets(pstr);
total = getnum(str, a);
for(i = ; a[i] != '\0'; i++)
printf("%d ", a[i]);
printf("total = %d\n", total);
return ;
} int getnum(char str[], int a[])
{
int count = , temp = ;
int i = , j = , k = , m = , e10;
char *p;
int *pa;
p = str;
pa = a;
while(*(p + i) != '\0')
{
if((*(p + i) >= '') && (*(p + i) <= ''))
{
j++;
}
else
{
if(j > )
{
temp = *(p + i -) - '';
k = ;
while(k < j)
{
e10 = ;
for(m = ; m <= k; m++)
e10 = e10 * ;
temp = temp + (*(p + i - - k) - '') * e10;
k++;
printf("2th while e10 temp = %d\n", temp);
} //while
*pa = temp;
printf("pa++ = %d\n", *pa);
pa++;
j = ;
count++;
} //if
} //else
i++;
} // while if(j > )
{
temp = *(p + i -) - '';
k = ;
while(k < j)
{
e10 = ;
for(m = ; m <= k; m++)
e10 = e10 * ;
temp = temp + (*(p + i - - k) - '') * e10;
k++;
printf("2th while e10 temp = %d\n", temp);
} //while
*pa = temp;
printf("pa++ = %d\n", *pa);
j = ;
pa++;
count++;
} //if
*pa = '\0';
return count;
}

算法01 C语言设计的更多相关文章

  1. 【算法】C语言趣味程序设计编程百例精解

    C语言趣味程序设计编程百例精解 C/C++语言经典.实用.趣味程序设计编程百例精解(1)  https://wenku.baidu.com/view/b9f683c08bd63186bcebbc3c. ...

  2. 【一月一本技术书】-【Go语言设计与实现】- 9月

    Go : 2009.11.10 代表作:Docker.k8s.etcd 模仿C语言,目标:互联网的C语言 讲的晦涩难懂....硬板..放弃了好几次才读完.满分10分,打6分. 下个月:Python数据 ...

  3. SQL Server 进阶 01 数据库的设计

    SQL Server 进阶 01 数据库的设计 本篇目录 课程内容回顾及介绍 为什么需要规范的数据库设计 设计数据库的步骤 绘制E-R(实体-关系)图 实体-关系模型 如何将E-R图转换为表 数据规范 ...

  4. 数据结构算法集---C++语言实现

    //数据结构算法集---C++语言实现 //各种类都使用模版设计,可以对各种数据类型操作(整形,字符,浮点) /////////////////////////// // // // 堆栈数据结构 s ...

  5. PID算法(c 语言)(转)

    PID算法(c 语言)(来自老外) #include <stdio.h> #include<math.h> //定义PID 的结构体 struct _pid { int pv; ...

  6. 01 C语言程序设计--01 C语言基础--第1章 C语言概述&第2章 GCC和GDB

    走进嵌入式开发的世界,企业级项目课程让你达到企业嵌入式应用开发要求.名师在线答疑,解决疑难.科学评测体系,系统评估学习.核心项目实........ 30 门课程 241小时12分钟 824 人学习 学 ...

  7. 20155206赵飞 基于《Arm试验箱的国密算法应用》课程设计个人报告

    20155206赵飞 基于<Arm试验箱的国密算法应用>课程设计个人报告 课程设计中承担的任务 完成试验箱测试功能1,2,3 . 1:LED闪烁实验 一.实验目的  学习GPIO原理  ...

  8. 【转载】常见十大经典排序算法及C语言实现【附动图图解】

    原文链接:https://www.cnblogs.com/onepixel/p/7674659.html 注意: 原文中的算法实现都是基于JS,本文全部修改为C实现,并且统一排序接口,另外增加了一些描 ...

  9. 01. Go 语言简介

    Go语言简介 引用原文地址:http://m.biancheng.net/golang/ Go语言也称 Golang,兼具效率.性能.安全.健壮等特性.这套Go语言教程(Golang教程)通俗易懂,深 ...

随机推荐

  1. 从壹开始微服务 [ DDD ] 之八 ║剪不断理还乱的 值对象和Dto

    缘起 哈喽大家周四好,时间是过的真快,这几天一直忙着在公司的项目,然后带带新人,眼看这周要过去了,还是要抽出时间学习学习,这些天看到群里的小伙伴也都在忙着新学习,还是很开心的,至少当时的初衷已经达到了 ...

  2. 使用xUnit为.net core程序进行单元测试(1)

    导读 为什么要编写自动化测试程序(Automated Tests)? 可以频繁的进行测试 可以在任何时间进行测试,也可以按计划定时进行,例如:可以在半夜进行自动测试. 肯定比人工测试要快. 可以更快速 ...

  3. 【重学计算机】计组D2章:数据表示

    1.基本概念 真值:+0101,-0100:机器数: [x]原=0101 2.几种机器数 原码:x = -0101,[x]原 = 1101 反码:x = -0101,[x]反 = 1010 补码:x ...

  4. MongoDB3.2.22快速入门与使用【未完待续】

    1.CentOS的安装和mongodb,UVE的使用 1.1.CentOS7安装 虚拟机CentOS7安装步骤:https://www.cnblogs.com/wyt007/p/10295834.ht ...

  5. JDBC事务控制

    概念 事务(Transaction)是访问并可能更新数据库中各种数据项的一个程序执行单元(unit).事务通常由高级数据库操纵语言或编程语言(如SQL,C++或Java)书写的用户程序的执行所引起,并 ...

  6. PyCharm出现TabError: inconsistent use of tabs and spaces in indentation最简单实用的解决办法

    本文使用PyCharm的格式化代码功能解决TabError: inconsistent use of tabs and spaces in indentation. 当把代码从别处复制进来PyChar ...

  7. ASCII Art ヾ(≧∇≦*)ゝ

    Conmajia, 2012 Updated on Feb. 18, 2018 What is ASCII art? It's graphic symbols formed by ASCII char ...

  8. SpringBoot系列——jar包与war包的部署

    前言 Spring Boot支持传统部署和更现代的部署形式.jar跟war都支持,这里参考springboot参考手册学习记录 两种方式 jar springboot项目支持创建可执行Jar,参考手册 ...

  9. TensorRT学习总结

    TensorRT是什么 建议先看看这篇https://zhuanlan.zhihu.com/p/35657027 深度学习 训练 部署 平常自学深度学习的时候关注的更多是训练的部分,即得到一个模型.而 ...

  10. pycharm中Django的安装和简单使用

    一.安装: 1.点击File,找到setting选项 2.点击+号,进入下面界面 结束后,安装完成 二.创建Django项目 创建成功后,新项目左侧: templates:用于存储HTML文件 set ...