美文网首页
SQSH1616 12-16 C基础

SQSH1616 12-16 C基础

作者: 彳亍的心 | 来源:发表于2016-12-16 19:34 被阅读0次

1.冒泡排序

int arr[5]= {11,45,2,66,34};
参加数据个数     比较次数
    5               4  ------arr[4]
    第一次比较
arr[0]  arr[1]----->arr[1]
arr[1]  arr[2]----->arr[2]
arr[2]  arr[3]----->arr[3]
arr[3]  arr[4]----->arr[4]
    第二次比较
    4                3-------arr[3]
arr[0]  arr[1]----->arr[1]
arr[1]  arr[2]----->arr[2]
arr[2]  arr[3]----->arr[3]
    第三次比较
    3                 2------arr[2]
arr[0]  arr[1]----->arr[1]
arr[1]  arr[2]----->arr[2]
    第四次比较
    2                 1------arr[1]
arr[0]  arr[1]----->arr[1]

例如:
#include<stdio.h>
int main()
{
int arr[5]= {11,45,2,66,34};
int i = 0;
int j = 0;
printf("排序前:\n");
for(i=0; i<5; i++)
printf("%4d",arr[i]);
printf("\n");
for(i=0; i<4; i++)//控制比较的轮数
{
for(j=0; j<4-i; j++)//控制藏与比较的元素个数
{
if(arr[j]>arr[j+1])
{
//数据交换
int temp =arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
//输出
printf("排序后:\n");
for(i=0; i<5; i++)
printf("%4d",arr[i]);
printf("\n");
return 0;
}

//获取0~100之间的随机数
//srand(time(0));
sranf(time(NULL))//此语句不能放在循环中,否则产生的随机数相同
int num =rand()%100

3.字符串

(1)字符串常量

字符串是有双引号阔起来的字符序列集合
"a" "hhh" "097fslkj" "3$@fs"
字符串的结束标志:\0

(2)C中没有字符所对应的数据类型,通常使用数组字符保存

字符串:
char arr[32] = {"hello,uuhhio"};
char arr[32] = "fdsjhkgadsaghgkjhdj"
char af[32]={'a','a','r','d'};
char bf[32]='"dfsf"
注意:字符数组保存字符和保存字符串的区别:
字符串有'\0'

(3)字符串的输入和输出

scanf()/printf--------->占位符:%s
//scanf()不能接收字符串的中的空格
//但是能接收单个字符中的空格
//getchar();吸收多余的回车符。

(4)gets()/buts

gets():从键盘输入
可以接收空格;
此函数有bug,不建议使用,
puts():输出字符串
自动换行,无需换行符,

(5)fgets()/fputs()

fgets(arr,32,stdin):获得收据
arr:数组名,即一个地址
sizeof(arr):读取数据的大小,也可以直接用数字代替
stdin:标准输入
fputs():输出数据
arr:要输出的字符串
stdout:标准输出
注:此处无bug,可以放心食用!!!!

(6)指针和字符串

(7)字符串相关函数

头文件:#include<string.h>
strlen():计算字符串长度
\0不计入字符串长度
注意区分和seziof的区别
strcpy():字符串拷白
strcpy(buf,arr)将arr的内容拷白到buf中
strcmp():字符串的比较(hao7.c)
int ret = strcmp(arr,buf):
若ret=0;则两字符串相等
若ret>0;则arr大于buf
若ret<0; 则arr小于buf
strcat():字符串的拼接
strcat(arr,buf);
将buf的内容拼接到arr中,一定要保证
arr的空间大!!!否则会出现数组越界问题

相关文章

  • SQSH1616 12-16 C基础

    1.冒泡排序 例如:#include int main(){int arr[5]= {11,45,2,66,34}...

  • SQSH1616 12-12 C基础

    丹尼斯*里奇C语言的优缺点优点:简单,使用广泛...缺点: 不严谨...一:C基本语法1.C的引入#include...

  • SQSH1616 12-14 C基础

    1.if~else配对问题else 总是与离它最近的if配对2.循环(1)for(表达式1;表达式2;表达式3)执...

  • SQSH1616 12-13 C基础

    1.类型转化(1)隐式转化:当赋值号两边类型不同时,自动转化为精度较高的类型5/3 = 1.000009.1200...

  • SQSH1616 12-21 C基础

    reviewstruct student{int ID;char name[32];//next存储的是下一个结点...

  • SQSH1616 12-15 C基础

    一.数组 1.二维数组 2.指针 (1)指针类型是一种特殊类型 (2)初始化 (3)地址的访问 (4)可以把指针赋...

  • SQSH1616 12-19 C基础

    一函数 1.函数的基本概念 函数就是把代码中功能相似并且独立的代码单独封装成一个整体; (1)函数优点 提高代码的...

  • SQSH1616 12-20 C基础

    一。复杂结构类型 1.结构体 2.结构体变量的初始化 (1)初始化1 (2)初始化2 (3)初始化3:生命结构体时...

  • 路加福音05:你跟从我来

    读经:路加福音第五章 文学结构 A呼召彼得、雅各和约翰 1-11 B洁净麻风病人 12-16 C 治好...

  • IXDC2017:线上融合线下 从体验走到商业

    7月12-16日,IXDC2017年国际体验设计大会在北京国家会议中心举行,来自腾讯用户研究与体验设计部(简称:C...

网友评论

      本文标题:SQSH1616 12-16 C基础

      本文链接:https://www.haomeiwen.com/subject/tvznmttx.html