重拾C,一天一点点_5
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的更多相关文章
- 重拾C,一天一点点_2
类型转换一般来说,如果二元运算符的两个操作数具有不同的类型,较低的类型提升为较高类型,结果为较高类型.表达式由float类型的操作数不会自动转换为double类型.使用float类型主要是为了在使用较 ...
- 重拾C,一天一点点
数据类型及长度 char 字符型,占用一个字节 int 整型,通常代表特定机器中整数的自然长度 short 16位 int 16位或32位 ...
- 重拾C
重拾C,一天一点点_10 来博客园今天刚好两年了,两年前开始学编程. 忙碌近两个月,项目昨天上线了,真心不容易,也不敢懈怠,接下来的问题会更多.这两天调试服务器,遇到不少麻烦. 刚出去溜达了一下,晚上 ...
- CSS魔法堂:重拾Border之——更广阔的遐想
前言 当CSS3推出border-radius属性时我们是那么欣喜若狂啊,一想到终于不用再添加额外元素来模拟圆角了,但发现border-radius还分水平半径和垂直半径,然后又发现border-t ...
- CSS魔法堂:重拾Border之——不仅仅是圆角
前言 当CSS3推出border-radius属性时我们是那么欣喜若狂啊,一想到终于不用再添加额外元素来模拟圆角了,但发现border-radius还分水平半径和垂直半径,然后又发现border-t ...
- CSS魔法堂:重拾Border之——图片作边框
前言 当CSS3推出border-radius属性时我们是那么欣喜若狂啊,一想到终于不用再添加额外元素来模拟圆角了,但发现border-radius还分水平半径和垂直半径,然后又发现border-t ...
- CSS魔法堂:重拾Border之——解构Border
前言 当CSS3推出border-radius属性时我们是那么欣喜若狂啊,一想到终于不用再添加额外元素来模拟圆角了,但发现border-radius还分水平半径和垂直半径,然后又发现border-t ...
- 重拾Blog
上个月是我入职现在的公司三周年的月份,所以又续订了五年的合同,最近有一些思考,也不知道这个五年能否还会一直在这个公司工作. 一切随缘吧. 闲适有毒,忙碌的时光总是过的很快,自从加入这个公司以来,日常的 ...
- [linux]重拾linux
起因 因为想重拾起linux,同时需要用docker起几个镜像,用来学习网络知识.本来想直接去阿里云上买,后来一想自己机器上,起一个linux是个不错的选择,毕竟不花钱! 还可以用来做本地测试,学习使 ...
随机推荐
- SQL操作XML
前面一段时间为了赶项目的进度,一直在加班,现在空闲了下来将前面碰到的问题整理了一下,发现了一些十分有用的,在此记录下来,看能不能帮助到遇到同样问题的朋友,此文仅是自己个人的意见,若存在问题,还望不宁赐 ...
- Python笔记(一)
我是一名211高校软件工程大三学生,由于前段时间一直在找实习公司.笔试面试了很多公司,虽然有一定的基础,但是还是被某些公司面试官像虐狗一样的虐了.最后找到了一个口碑比较好的外企,主攻信息安全方面.这段 ...
- jsp包含的讲解
<%@page language="java" import="java.util.*" pageEncoding="UTF-8"%& ...
- mybatis 处理数组类型及使用Json格式保存数据 JsonTypeHandler and ArrayTypeHandler
mybatis 比 ibatis 改进了很多,特别是支持了注解,支持了plugin inteceptor,也给开发者带来了更多的灵活性,相比其他ORM,我还是挺喜欢mybatis的. 闲言碎语不要讲, ...
- 【Linux/Ubuntu学习 14】Linux下查看文件和文件夹大小
当磁盘大小超过标准时会有报警提示,这时如果掌握df和du命令是非常明智的选择. df可以查看一级文件夹大小.使用比例.档案系统及其挂入点,但对文件却无能为力. du可以查看文件及文件夹的大小. ...
- UITabbar的简单操作和实际应用
简易编辑Tabbar //**标签栏控制器的初始化 UITabBarController * tabbarC = [[UITabBarController alloc] init]; //设置tab ...
- 深入理解HTML5:语义、标准与样式
<深入理解HTML5:语义.标准与样式> 基本信息 作者: (美)布拉德福(Bradford,A.) 海涅(Haine,P.) 译者: 高京 出版社:电子工业出版社 ISBN:978712 ...
- 第一个项目--用bootstrap实现美工设计的首页
主要介绍在首页实现中用到bootstrap实现效果的地方. 实现如下的效果: <li> <div role="group" style="padding ...
- [CAMCOCO][C#]我的系统架构.服务器端.(四)----Model层 实体的自我验证
这是Model的第二篇,上一篇点这里 这块完全是扒了@何镇汐大神博客里的教程实现的,在这之前完全没想到数据验证居然可以这样做!!在此表示严重感谢!!! 点击这里可以去了解这个方法的原理,老胡估计自己是 ...
- .NET DLL 保护措施详解(二)关于性能的测试
先说结果: 加了缓存的结果与C#原生代码差异不大了 我对三种方式进行了测试: 第一种,每次调用均动态编译 第二种,缓存编译好的对象 第三种,直接调用原生C#代码 .net dll保护系列 ------ ...