switch(表达式){
    case 整型常量表达式:语句序列
    case 整型常量表达式:语句序列
    default:语句序列
}

while(表达式)
    语句

for(表达式1; 表达式2; 表达式3)
    语句
表达式1与表达式3通常是赋值表达式或函数调用;表达式2是关系表达式。这3个组成部分任意部分都可省略,但分号必须保留。如果在for语句中省略表达式1与表达式3,它就退化成了while循环语句。如再省略表达式2,则认为其值永远为真,即成了死循环。
for(;;){
}

 #include <stdio.h>
#include <ctype.h>
int atoi1(char s[]);
int atoi2(char s[]); main(){
printf("%d\n", atoi2("+111")); //
printf("%d\n", atoi2("-111")); //-111
printf("%d\n", atoi2(" -111")); //-111 printf("%d\n", atoi1("")); //
printf("%d\n", atoi1("-999")); //
return ;
} /***将s转换为整数 版本1***/
int atoi1(char s[]){
int i;
int n = ;
for(i=; s[i]!='\0'; i++){
if((s[i] >= '') && (s[i] <= ''))
n = n * + s[i] - '';
}
return n;
} /***将s转换为整数 版本1的升级版***/
int atoi2(char s[]){
int i, n, sign;
//跳过空白符
for(i=; isspace(s[i]); i++)
;
sign = (s[i] == '-') ? - : ;
//跳过符号
if(s[i] == '+' || s[i] == '-')
i++;
for(n=; isdigit(s[i]); i++){
n = * n + (s[i] - '');
}
return sign * n;
}

//shell排序算法

 #include <stdio.h>
void shellsort(int v[], int n); main(){
int arr[] = {,,,,,,,,,,,};
shellsort(arr,); int k;
for(k=; k<; k++){
printf("%d,", arr[k]); //0,1,1,2,4,5,6,7,8,9,10,99
}
return ;
} /*****shellsort,按递增顺序对v[0]...v[n-1]排序*****/
void shellsort(int v[], int n){
int gap, i, j, temp;
for(gap=n/; gap>; gap/=){
for(i=gap; i<n; i++){
for(j=i-gap; j>=&&v[j]>v[j+gap]; j-=gap){
temp = v[j];
v[j] = v[j+gap];
v[j+gap] = temp;
}
}
}
}

//反转字符串,不产生新串

 #include <stdio.h>
#include <string.h>
void reverse(char s[]); main(){
char s[] = "abcdefg";
reverse(s);
printf("%s", s); //gfedcba
return ;
}
/*******反转字符串*********/
void reverse(char s[]){
int c,i,l;
for(i=, l=strlen(s)-; i<l; i++,l--){
c = s[i];
s[i] = s[l];
s[l] = c;
}
}

do
    语句
while(表达式);

 #include <stdio.h>
main(){
int i = ;
do{
printf("%i\n",i);
}while((--i) > );    //注意后面的分号
return ;
}

重拾C,一天一点点_5的更多相关文章

  1. 重拾C,一天一点点_2

    类型转换一般来说,如果二元运算符的两个操作数具有不同的类型,较低的类型提升为较高类型,结果为较高类型.表达式由float类型的操作数不会自动转换为double类型.使用float类型主要是为了在使用较 ...

  2. 重拾C,一天一点点

    数据类型及长度 char        字符型,占用一个字节 int          整型,通常代表特定机器中整数的自然长度 short       16位 int         16位或32位 ...

  3. 重拾C

    重拾C,一天一点点_10 来博客园今天刚好两年了,两年前开始学编程. 忙碌近两个月,项目昨天上线了,真心不容易,也不敢懈怠,接下来的问题会更多.这两天调试服务器,遇到不少麻烦. 刚出去溜达了一下,晚上 ...

  4. CSS魔法堂:重拾Border之——更广阔的遐想

    前言  当CSS3推出border-radius属性时我们是那么欣喜若狂啊,一想到终于不用再添加额外元素来模拟圆角了,但发现border-radius还分水平半径和垂直半径,然后又发现border-t ...

  5. CSS魔法堂:重拾Border之——不仅仅是圆角

    前言  当CSS3推出border-radius属性时我们是那么欣喜若狂啊,一想到终于不用再添加额外元素来模拟圆角了,但发现border-radius还分水平半径和垂直半径,然后又发现border-t ...

  6. CSS魔法堂:重拾Border之——图片作边框

    前言  当CSS3推出border-radius属性时我们是那么欣喜若狂啊,一想到终于不用再添加额外元素来模拟圆角了,但发现border-radius还分水平半径和垂直半径,然后又发现border-t ...

  7. CSS魔法堂:重拾Border之——解构Border

    前言  当CSS3推出border-radius属性时我们是那么欣喜若狂啊,一想到终于不用再添加额外元素来模拟圆角了,但发现border-radius还分水平半径和垂直半径,然后又发现border-t ...

  8. 重拾Blog

    上个月是我入职现在的公司三周年的月份,所以又续订了五年的合同,最近有一些思考,也不知道这个五年能否还会一直在这个公司工作. 一切随缘吧. 闲适有毒,忙碌的时光总是过的很快,自从加入这个公司以来,日常的 ...

  9. [linux]重拾linux

    起因 因为想重拾起linux,同时需要用docker起几个镜像,用来学习网络知识.本来想直接去阿里云上买,后来一想自己机器上,起一个linux是个不错的选择,毕竟不花钱! 还可以用来做本地测试,学习使 ...

随机推荐

  1. 使用block来解决实现switch解决字符串

    NSString *lookup=@"Hearts"; typedef void  (^CaseBlock)(); NSDictionary *diction=@{@"D ...

  2. 【Java线程池快速学习教程】

    1. Java线程池 线程池:顾名思义,用一个池子装载多个线程,使用池子去管理多个线程. 问题来源:应用大量通过new Thread()方法创建执行时间短的线程,较大的消耗系统资源并且系统的响应速度变 ...

  3. struts2 零配置

    一.新建一个web项目,命名为:struts2 二.导入strut2所需的jar包 所需jar下载:http://pan.baidu.com/s/1dDxP4Z3 三.配置struts2的启动文件,在 ...

  4. Oracle基础 游标

    一.游标 游标用来处理从数据库中检索的多行记录(使用SELECT语句).利用游标,程序可以逐个地处理和遍历一次检索返回的整个记录集. 为了处理SQL语句,Oracle将在内存中分配一个区域,这就是上下 ...

  5. CF Two Substrings

    Two Substrings time limit per test 2 seconds memory limit per test 256 megabytes input standard inpu ...

  6. codeforces 680C C. Bear and Prime 100(数论)

    题目链接: C. Bear and Prime 100 time limit per test 1 second memory limit per test 256 megabytes input s ...

  7. vijos 1053Easy sssp

    P1053Easy sssp Accepted 标签:图结构 最短路     描述 输入数据给出一个有N(2 <= N <= 1,000)个节点,M(M <= 100,000)条边的 ...

  8. Sharepoint 2013 系列篇(安装部署)--上篇

    前言 sharepoint的部署是按照物理拓扑图的架构来部署,按照物理拓扑图架构分为一层拓扑图架构,二层拓扑图架构,三层拓扑图架构,多层拓扑图架构. 按照分层的拓扑图部署是按照需求来划分的,一层拓扑图 ...

  9. NodeJS学习之文件操作

    NodeJS -- 文件操作 Buffer(数据块) JS语言自身只有字符串数据类型,没有二进制数据类型,因此NodeJS提供了一个与String对等的全局构造函数Buffer来提供对二进制数据的操作 ...

  10. 我与Bootstrap

    接触bootstrap是因为一个项目.实在是不了解前端.但是公司又不招前端工程师,没有办法,我这个后端工程师被赶鸭子上架了. 做这个项目之前,只是简单的在网上看了一些bootstrap教学视频.然后拿 ...