版权声明:本文为博主原创文章,未经博主同意不得转载。 https://blog.csdn.net/zuoyou1314/article/details/30799519

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvenVveW91MTMxNA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvenVveW91MTMxNA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[])
{
#pragma mark----------数组
//数组是容器,同样数据类型
//构造类型 // int a[3]={5,2,0};
//类型
// int[3];
//变量名
// a;
//初值
// {5,2,0}; // int a[4] = {9,8,7,6};
// float b[6] = {2.5,3.14};
// char c[3] = "abc";
// char d[3] = {'a','b','c'};
// BOOL e[4] = {YES,NO}; //a[0]+a[1]操作数组下标取值赋值 //前有类型修饰符,代表数组,没有类型修饰符,代表下标 //1.生成一个包括20个元素数组,数组的值取值在30到70之间,并求出数组元素的和
// int sum = 0, a[20]={0};
// for (int i = 0; i<20; i++) {
// a[i]=arc4random()%41+30;
// printf("%d ",a[i]);
// sum = sum + a[i];
// }
// printf("\nsum=%d",sum);
//2.复制
// int a[20]={0},b[20]={0};
// for (int i = 0; i<20; i++) {
// a[i]=arc4random()%41+30;
// printf("%d ",a[i]);
// b[i]=a[i];
// }
// printf("\n");
// for (int j = 0; j<20; j++) {
// printf("%d ",b[j]);
// }
//3.生成两个数组,然后两个数组相应下标元素相加,放到第三个数组中
// int a[10]={0},b[10]={0},c[10]={0};
// for (int i = 0; i<10; i++) {
// a[i]=arc4random()%(40-20+1)+20;
// b[i]=arc4random()%(40-20+1)+20;
// c[i]=a[i]+b[i];
// printf("%d + %d = %d\n",a[i],b[i],c[i]);
// }
// printf("\n");
// for (int j = 0; j<10; j++) {
// printf("%d ",b[j]);
// }
// printf("\n");
// for (int j = 0; j<10; j++) {
// printf("%d ",c[j]);
// } #pragma mark--------------1
//注意,
//1,系统不会检測数组元素的下标是否越界,编程时,必须保证数组下标不能越界
//2,数组是一个总体,不能直接參加运算,仅仅能对单个元素进行处理,一般会用到数组的地方,就会用到循环(循环就是为了数组而生) // scanf("%d",&a);
// getchar() 打印123def 结果是1
// printf(""),打印123def 结果是123 /**
* 从键盘缓冲区读取数据
*/ // int a[10]={0};
// for (int i = 0; i<10; i++) {
// a[i]=arc4random()%31;
// printf("%2d ",a[i]);
// }
// for (int i = 0; i<10-1; i++) {
// for (int j = 0; j<10-1-i; j++) {
// if (a[j]>a[j+1]) {
// int temp = a[j];
// a[j]=a[j+1];
// a[j+1]=temp;
// }
// }
// }
// printf("\n");
// for (int i =0; i<10; i++) {
// printf("%-2d ",a[i]);
// } // int a[10]={0};
// for (int i = 0; i<10; i++) {
// a[i]=arc4random()%(40-20+1)+20;
// printf("%d ",a[i]);
// }
// for (int i = 0; i<10-1; i++) {
// for (int j = 0; j<10-1-i; j++) {
// if (a[j]>a[j+1]) {//max<a[i],min>a[i]
// int temp = a[j];
// a[j]=a[j+1];
// a[j+1]=temp;
// }
// }
// }
// printf("\n");
// for (int i =0; i<10; i++) {
// printf("%d ",a[i]);
// } // strlen("hello");
#pragma mark--------------2
//字符串长度 比方hello,字符串长度5
// printf("%lu",strlen("hello"));
//字符串所占空间 比方char[10]="hello" 字符串所占空间10;
// char c[] = "hello";
// printf("%lu",sizeof(c));
// for (int i = 0; i<sizeof(c); i++) {
// printf(" %c ",c[i]);
// }
// printf("\n%s ",c);
//等同于以下
//%s,从首地址開始打印,直到打到/0结束
// char d = 0;
// int i = 0;
// while ((d = c[i]) != '\0') {
// printf("%c",d);
// i++;
// } //strlen,測量字符串长度
//strcpy
//strcmp,比較
//strcat//拼接
// char name[20]="zuoyoudong";
// printf("%s length = %lu",name,strlen(name));
// int i = 0;
// while (name[i] !='\0') {
// printf("%c",name[i]);
// i++;
// }
// printf("%d",i); // char z[]="zuo";
// char y[5]="yi";
// strcpy(y, z);
// printf("%s",strcpy(y, z));
//1,"hello",2,"abcdefghi",3,拷贝,hello\0ghi #pragma mark--------------3
// char str1[50] = "hangsan";
// char str2[10] = "lisi";
// strcpy(str2, str1);//前面目的串,后面来源串,const仅仅可读,不可赋值
// printf("%s",str2); //字符串拼接strcat 注意:是否有足够的空间,放长度
// strcat(str1, str2);//带const修饰是不变的
// strcat(str1, str2);
// printf("%s",str1); //字符串比較strcmp(按ASC码值求大小)
// int result = strcmp(str1, str2);
// printf("%d",strcmp(str1, str2));
// printf("%d",result);
// if (result>1) {
// printf("\n%s 大于 %s",str1,str2);
// }else if (result==0){
// printf("%s 等于 %s",str1,str2);
// }else{
// printf("\n%s 小于 %s",str1,str2);
// } //strlen
//strcmp
//strcat
//strcpy //查找字符串中的空格数
// char str[50] = "I love iOS,i want an iPhone5s";
// int i = 0,count = 0;
// while (str[i]!='\0') {
// char c = str[i];
// if (c ==' ') {
// count++;
// }
// i++;
// }
// printf("%d",count); #pragma mark--------------4
//把字符倒转过来
//解题思路!
//凡是交换要定义第三方temp
char str1[]="hello";
char str2[5]=" ";
long length = strlen(str1);
// printf("%lu",length);
printf("%lu",sizeof(str1));
// long length =strlen(str1);
// printf("%lu",length);
// int i = 0;
// while (str1[i] !='\0') {
// char temp = str1[i];
// str1[i]=str2[i];
// str2[i]=temp;
//
// }
// printf("%s",str2);
// for (int i = 0; i<sizeof(str1); <#increment#>) {
// <#statements#>
// }
//#pragma mark--------------5绝对值
//#pragma mark--------------6for循环
//#pragma mark--------------7作业

C语言--一维数组,字符数组的更多相关文章

  1. C语言字符串与字符数组

    字符串儿与字符数组 字符数组的定义: Char buffer[]; 字符数组初始化: Char buffer1[]="hello world"; 利用scanf输入一个字符串儿 代 ...

  2. c语言中的字符数组与字符串

    1.字符数组的定义与初始化 字符数组的初始化,最容易理解的方式就是逐个字符赋给数组中各元素. char str[10]={ 'I',' ','a','m',' ',‘h’,'a','p','p','y ...

  3. [日常] C语言中的字符数组和字符串

    c语言字符数组和字符串:1.存放字符的数组称为字符数组 char str[]2.'\0'也被称为字符串结束标志3.由" "包围的字符串会自动在末尾添加'\0'4.逐个字符地给数组赋 ...

  4. C语言中二维字符数组的定义和初始化

    本篇日志关于二维字符数组的定义和初始化.我相信这篇文章属于菜鸟级的,高手请直接无视. 一般来说,我们可能会希望定义一个二维字符数组并且在定义的时候就用一些字符串来初始化它.比如说: ][MAX_LEN ...

  5. C语言可以给字符数组赋值的方法

    分类: C 2012-04-06 10:23 4081人阅读 评论(0) 收藏 举报 语言c 学了这么多年的C语言,突然发现连字符串赋值都出错,真的很伤心. char a[10]; 怎么给这个数组赋值 ...

  6. (C/C++学习)15.C语言字符串和字符数组

    说明:在C语言中字符串和字符数组有很多相似之处,却又有着一些不同.本文将针对其区别与联系,进行分析总结. 一.字符串 1.在C语言中,字符串是由双引号括起来的任意字符序列,如:"china& ...

  7. 粗暴,干就完了----徐晓冬似的C语言自学笔记---字符数组相关技术

    字符串拼接函数 strcat() 字符串----作为很多编程语言的鼻祖C语言,没有字符串类型,取而代之的字符数组,很多数组在声明的时候会给定数组长度,然而我们却可以这样写 char mywords[] ...

  8. 黑马程序员——C语言基础 char字符 数组

    Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) (一)char类型 1)存储细节 ASCII单字节表(双字节GBK\GB2 ...

  9. C语言 · 递归倒置字符数组

    算法提高 递归倒置字符数组   时间限制:1.0s   内存限制:512.0MB      问题描述 完成一个递归程序,倒置字符数组.并打印实现过程 递归逻辑为: 当字符长度等于1时,直接返回 否则, ...

  10. C语言中的字符数组和字符串

    在C语言中,没有字符串类型,但是可以通过字符数组来模拟字符串. 字符串可以在栈上,堆上,静态区和常量区进行分配. char buf[50]  = "abc"; char buf[] ...

随机推荐

  1. 集合比较器报错java.lang.IllegalArgumentException: Comparison method violates its general contract!

    Collections.sort(listMonthlyUsage, new Comparator<MonthlyUsageDto>() { //按照元素从小到大排序 @Override ...

  2. linux的yum命令

    linux yum 命令 yum( Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器. 基於RPM包管理,能够从指 ...

  3. sh_05_非公勿入

    sh_05_非公勿入 # 练习3: 定义一个布尔型变量 is_employee,编写代码判断是否是本公司员工 is_employee = False # 如果不是提示不允许入内 # 在开发中,通常希望 ...

  4. 2019 南京网络赛A

    南京网络赛自闭现场 https://nanti.jisuanke.com/t/41298 二维偏序经典题型 二维前缀和!!! #include<bits/stdc++.h> using n ...

  5. 在HTML标签元素中,绑定JS函数

    <a onclick="ShowMsg(this)" id="myA" href="#">按钮</a> //JS方法 ...

  6. 搜索引擎算法研究专题六:HITS算法

    搜索引擎算法研究专题六:HITS算法 2017年12月19日 ⁄ 搜索技术 ⁄ 共 1240字 ⁄ 字号 小 中 大 ⁄ 评论关闭   HITS(Hyperlink-Induced Topic Sea ...

  7. 超过 150 个最佳机器学习,NLP 和 Python教程

    超过 150 个最佳机器学习,NLP 和 Python教程 微信号 & QQ:862251340微信公众号:coderpai简书地址:http://www.jianshu.com/p/2be3 ...

  8. 自动化运维--ansible(2)

    问题一:如何在多台服务器中配置Web项目上线的所有环境 解答: 1.使用ansible配置nginx服务 在安装前了解rpm与yum的区别  rpm是压缩包安装依赖包需要自己手动安装,yum安装解决依 ...

  9. 怎么用jira写bug

    工具/原料 有网的电脑 方法/步骤1: 打开公司给的访问JIRA的链接,输入公司给你注册的账号和密码,点击登录 方法/步骤2: 点击JIRA主菜单上的“创建”,进入编辑bug界面 方法/步骤3: 项目 ...

  10. eclipse下 hibernate逆向数据库操作示例!!

    做项目必然要先进行数据库表设计,然后根据数据库设计建立实体类(VO),这是理所当然的,但是到公司里做项目后,让我认识到,没有说既进行完数据库设计后还要再“自己”建立一变VO.意思是,在项目设计时,要么 ...