版权声明:本文为博主原创文章,未经博主同意不得转载。 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. [POJ]P3126 Prime Path[BFS]

    [POJ]P3126 Prime Path Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 35230   Accepted: ...

  2. bash配置文件

    bash的配置文件 一.shell的两种登录方式: 1.交互式登录: (1)直接通过终端输入账号密码登录 (2)使用"su - UserName" 切换的用户 执行顺序:/etc/ ...

  3. [THUSC2017]大魔法师:线段树

    分析 在线段树上用\(4 \times 4\)的矩阵打标记. 代码 #include <bits/stdc++.h> #define rin(i,a,b) for(register int ...

  4. 3D Computer Grapihcs Using OpenGL - 18 相机移动

    移动相机需要用到键盘按键,按键事件的引入需要包含头文件 #include <Qt3DInput\qkeyevent.h> 并实现QWidget中定义的虚函数keyPressEvent 我们 ...

  5. Java字符串的不可变性

    声明一个字符串引用变量: String  s = "abcd"; s是一个引用变量,指向 堆内存中的字符串常量 "abcd" 再声明一个字符串引用变量: Str ...

  6. Linux编译部署vsftp服务

    部署vsftp服务   Hostname OS IP Software Vsftpsvr RHEL-5.8 10.0.0.58 yum install -y vsftpd yum install –y ...

  7. MySQL的explain分析sql语句

    explain分析查询 使用 EXPLAIN 关键字可以模拟优化器执行SQL查询语句,从而知道MySQL是如何处理你的SQL语句的.这可以帮你分析你的查询语句或是表结构的性能瓶颈.通过explain命 ...

  8. 解决Python print输出不换行没空格的问题

    今天在做编程题的时候发现Python的print输出默认换行输出,并且输出后有空格. 题目要求输出 122 而我的输出是: 1 2 2 于是我百度查到取消print自动换行的方法:就是在print的值 ...

  9. 64位ubuntu下安装ia32-libs

    echo "deb http://archive.ubuntu.com/ubuntu/ raring main restricted universe multiverse" &g ...

  10. JavaScript中this的一些练习

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...