说真的感受到c语言真的很灵活,语法没有那么死板
1.int array[] = { 1, 2, 3, 4 };可以这样定义,自动填补
再次加深了对冒泡排序的理解
例如 4 3 2 1 这四个数运用冒泡排序:
第一趟: 4和3交换位置 然后4和2交换位置 再然后4和1交换位置
第一趟结果 3 2 1 4 最大的沉底了 一共比较3次
第二趟: 3和2交换位置 然后3和1交换位置
第二趟结果 2 1 3 4 次大的沉底了 一共比较2次
第三趟略 同理
推广到n个数 ——一共要进行n-1趟,每趟的比较次数是n-i趟(i表示进行的趟数) 了解一下冒泡排序的过程
intarray[] = { 6, 5, 4, 3, 2, 1 };
inti,j,t;
for(i = 0; i < 5; i++)
{
for(j = 0; j < 5 - i; j++)
{
if(array[j]>array[j + 1])
{
t= array[j];
array[j]= array[j + 1];
array[j+ 1] = t;
}
}
}
2.inta[3][3] = { {1,2}, {3,4}, {5,6} };会自动填0
3.c语言里面没有字符串,只有字符数组
同时注意’\0’的用法 表示到这里停止,这个很重要!! 例如c中有6个空间而不是5个
charc[] = { "China"};
printf("%s\n", c);
scanf("%s",
cc);不需要&地址符
需要导入#include
4.puts()函数和gets()函数 只能应用于一个字符串
5.strcat(str1,str2) 表示连接两个字符串
6.strcpy(字符数组,字符串) 把字符串的内容复制到字符数组中
strcnpy(字符数值,字符串,n(表示前n个字符))
strcmp(str1,str2)>0 比较两个字符串 相等为0,str1>str2返回正整数,反之负整数
strlen(str1) 返回字符串的长度(不包括’\0’)
strlwr(str) 小写 strupr(str) 大写
**************************************************************
这是一道关于杨辉三角的题目
#includeint main()
{
int nn(int x);
int b;
for (int i = 0; i <= 10; i++)
{
for (int j = 0; j <= i; j++)
{
printf("%d ", nn(i)/(nn(i-j)*nn(j)));
}
printf("\n");
}
return 0;
}
int nn(int x)
{
int s=1;
int a[100];
if (x <= 0)
{
return 1;
}
else
{
for (int i = 1; i <= x; i++)
{
a[i] = i;
s = s*a[i];
}
return s;
}
}