算法学习之顺序结构

简介:

套路:

读入数据
计算结果
打印输出

案例一

题目:输入一个三位数,分离出它的百位、十位和个位,反转后输出。
样例输入:127
样例输出:721

分析:首先将三位数读入变量n,然后进行分离。百位等于n/100,十位等于n/10%10(这里的%是取余数操作),
个位等于n%10。
程序如下:

复制代码
#include <conio.h>
#include<stdio.h>
int main(){
    int n;
    scanf("%d",&n);
    printf("%d%d%d\n",n%10,n/10%10,n/100);
    getch();
    return 0;
}
复制代码


继续改造,

复制代码
#include <conio.h>
#include<stdio.h>
int main(){
    int n,m;
    scanf("%d",&n);
    m = (n%10)*100 + (n/10%10)*10 + (n/100);
    printf("%3d\n",m);//表示占据3个位置 
    printf("%03d\n",m);//表示占据3个位置,空白以0填补,前面填补空白 
    printf("%04d\n",m);//表示占据4个位置,空白以0填补 
    getch();
    return 0;
}
复制代码


案例二

题目:输入两个整数a和b,交换二者的值,然后输出。
样例输入:824 16
样例输出:16 824
分析:这个就不多说了,太经典了

代码:

复制代码
#include <conio.h>
#include<stdio.h>
int main(){
    int a,b,t;
    scanf("%d",&a);
    scanf("%d",&b);
    t = a;
    a = b;
    b = t;
    printf("%d\n%d",a,b); 
    getch();
    return 0;
}
复制代码

输入也可以像下面的代码一样来写

复制代码
#include <conio.h>
#include<stdio.h>
int main(){
    int a,b,t;
    scanf("%d%d",&a,&b);//可以用空格来区分两个变量,或者用enter键来区分 
    t = a;
    a = b;
    b = t;
    printf("%d %d\n",a,b); 
    getch();
    return 0;
}
复制代码

如果说效果呢?下面的程序更直接,兼职无语

复制代码
#include <conio.h>
#include<stdio.h>
int main(){
    int a,b,t;
    scanf("%d%d",&a,&b);//可以用空格来区分两个变量,或者用enter键来区分 
    printf("%d %d\n",b,a); 
    getch();
    return 0;
}
复制代码

实现了输入的两个数对调,但实际上,两个变量值未改变!只能说,很贱很无敌。

 

这些只是小例子,

说明了顺序结构编程的特点,就是一直往下走。一直走。直到处理完成。


本文转自TBHacker博客园博客,原文链接:http://www.cnblogs.com/jiqing9006/p/3188775.html,如需转载请自行联系原作者

相关文章
|
3月前
|
存储 算法
数据结构中迷宫问题求解
数据结构中迷宫问题求解
51 3
|
人工智能 算法
【算法分析与设计】递归与分治策略(二)
【算法分析与设计】递归与分治策略
|
7月前
|
算法 C++
算法与数据结构高手养成:朴素的贪心法(中)构造法
算法与数据结构高手养成:朴素的贪心法(中)构造法
46 2
【洛谷算法题】P1421-小玉买文具【入门1顺序结构】
【洛谷算法题】P1421-小玉买文具【入门1顺序结构】
|
机器学习/深度学习 算法 编译器
【算法分析与设计】递归与分治策略(一)
【算法分析与设计】递归与分治策略
|
算法
基础算法(贪心 合并 位运算)
基础算法(贪心 合并 位运算)
64 0
|
算法 Java API
【算法】位运算常用算法以及知识点
【算法】位运算常用算法以及知识点
91 0
|
机器学习/深度学习 算法 Java
【洛谷算法题】P5706-再分肥宅水【入门1顺序结构】
【洛谷算法题】P5706-再分肥宅水【入门1顺序结构】
|
算法 搜索推荐 Windows
【算法分析与设计】递归与分治策略(三)
【算法分析与设计】递归与分治策略
【数据结构和算法思想】递归思想
在程序中可以调用函数来完成任务,为了完成相同的任务可以调用同一个函数。如果在函数中调用函数本身,那么改函数就被称为递归函数。递归函数的调用是按层,不是次,有 N 层就同时调用(打开)了 N 个函数,不是 N 次。 无限递归(递而不归、死递归),栈溢出(函数的调用有时间和空间的开销,一个程序中同时调用的函数个数是有限的)。• 递归函数的调用有时间和空间的开销,而且递归的次数受到堆栈大小的限制。 • 循环没有函数调用和返回中的参数传递和返回值的额外开销,更快。 如何在递归和循环之间选择? 一般情况下,当循环方法比较容易实现时,应该避免使用递归。当很难简历一个循环方法时,递归可能是一个很好的选择

热门文章

最新文章