comodoo

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

[]优先级为1;

---插播:

#include<stdio.h>
int main(void)
{
	printf("%d\n",sizeof(short int));
	printf("%d\n",sizeof(int));
	printf("%d\n",sizeof(long int));
	printf("%d\n",sizeof(long long int));
	printf("%d\n",sizeof(float));
	printf("%d\n",sizeof(double));
	printf("%d\n",sizeof(long double));
	return 0;
}

二维数组

 #include<stdio.h>
 #include<stdlib.h>
 #include<time.h>
 #define M 16
 #define N 9
int main(void)
{
	srand(time(0));
	int a[M][N],i,j;
	for(i=0;i<M;i++)
	{
		for(j=0;j<N;j++) 
		{
			a[i][j]=rand()%10;
			printf("%d ",a[i][j]);
		}
		printf("\n");
	}
	return 0;
}

首先,stdlib.h头文件,虽然不太懂能干啥,至少能产生随机数:用srand函数产生种子,用rand函数产生随机数,伪;
<time.h> + time(0)时间戳!可打印从1970/01/01至今的秒数!前两天看区块链还看到时间戳来着;
define的使用,以后可以试着用用;
多维数组初始化,用多个循环嵌套;
打印0-9之间的随机数,给随机数除以10取模就好;
二维数组在灰度显示中的应用,听起来好高级的亚子。

选出一个数组中的最大值与最小值,可先把第一个元素的值赋给最大值和最小值。

排序的方法:

  1. 冒泡排序
 #include<stdio.h>
int main(void)
{
	int i,j,temp;
	int a[10]={45,76,88,56,24,17,38,90,63,78};
	for(i=0;i<10;i++)
	{
		for(j=0;j<9-i;j++)
		{
			if(a[j]>a[j+1])
			{
				temp=a[j];
				a[j]=a[j+1];
				a[j+1]=temp;
			}
		}
	}
	for(i=0;i<10;i++)
	{
		printf("%d ",a[i]);
	}
	return 0;
}

需要用到两套循环,i用来记交换的次数,j用来让每一个元素被判断。emmm不得不说真的是 妙啊!
https://blog.csdn.net/weixin_41190227/article/details/86600821
10大排序方法有时间学一学!

一定要记得sum初始化为0!

啊啊啊啊啊原来如此,对于字符数组可以一次性全部输出,而数值只能循环输出!为此卡了一个小时QAQ
计随机数组中一个数出现的次数:

 #include<stdio.h>
 #include<stdlib.h>
 #include<time.h>
int main(void)
{
srand(time(0));
	int n,a[100],i,j;
	int b[10]={0};
	scanf("%d",&n);
	for(i=0;i<n;i++)
	{
		a[i]=rand()%10;
		printf("%d ",a[i]);
	}
    for(i=0;i<n;i++)
	{
		for(j=0;j<10;j++)
		{
			if(a[i]==j)
			{
				b[j]++;
			}
		}
	}
	for(i=0;i<10;i++)
	{
		printf("%d\n",b[i]);
	}
	
	return 0;
}

字符串以\0结尾,所以字符数组中元素加一。

复制一个字符数组:

 #include<stdio.h>
int main(void)
{
	char form[100],late[100],i;
	gets(form);
	while(form[i]!='\0')
	{
		late[i]=form[i];
		i++;
	}
	printf("%s",late);
	return 0;
}

简洁得高级!

posted on 2020-11-19 17:17  comodoo  阅读(63)  评论(0编辑  收藏  举报