时间范围:2022年10月19日-2022年10月28日
2022年10月19日
#include
int main()
{
printf("hello world\n");
return 0;
}
/*
功能:在linux的终端中打印hello world
*/
2022年10月21日
#include
#define hong(a,b)(a)*(b)
int main()
{
int a=1,b=2,k=3;
int sum=hong(a+b,b)*k;
printf("sum=%ld\n",sum);
return 0;
}
#include
#define second(x,y,z,k) ((x)*(y)*(z)*(k))
int main()
{
int x=365,y=24,z=60,k=60;
int sum=second(x,y,z,k);
printf("一年一共有%d秒\n",sum);
return 0;
}
/*
功能:在linux的终端上打印一年有多少秒
*/
#include
int main()
{
signed char a=243;
printf("%d",a);
return 0;
}
/*
功能:体验回环法
*/
#include
#define PI 3.1415
int main()
{
float r=2;
float s=PI*r*r;
float c=2*PI*r;
printf("s=%f,c=%f\n",s,c);
return 0;
}
/*
功能:计算圆形的面积
*/
#include
int main()
{
printf("sizeof(int)=%ld\n",sizeof(int));
printf("sizeof(short)=%ld\n",sizeof(short));
printf("sizeof(char)=%ld\n",sizeof(char));
printf("sizeof(float)=%ld\n",sizeof(float));
printf("sizeof(double)=%ld\n",sizeof(double));
printf("sizeof(long)=%ld\n",sizeof(long));
printf("sizeof(long long)=%ld\n",sizeof(long long));
return 0;
}
/*
功能:计算不同数据类型所占存储空间的大小
*/
2022年10月24日
#include
int main()
{
char ch=130;
printf("%d\n",ch);
return 0;
}
/*
功能:体验回环法
*/
#include
int main()
{
unsigned char ch=260;
printf("%d\n",ch);
return 0;
}
/*
功能:体验回环法
*/
int a=10;
// static int a=10;
#include
extern int a;
int main()
{
printf("a=%d\n",a);
return 0;
}
#include
int a=10;
int main()
{
int i;
for(i=0;i<5;i++)
{
//static int a=0;
//static int a=0;
//a++;
//printf("a=%d\n",a);
}
printf("a=%d\n",a);
return 0;
}
#include
int a=10;
int main()
{
int i;
for(i=0;i<5;i++)
{
//static int a=0;
int a=0;
a++;
printf("a=%d\n",a);
}
//printf("a=%d\n",a);
return 0;
}
#include
static int a=10;
int main()
{
int i;
for(i=0;i<5;i++)
{
//static int a=0;
static int a=0;
a++;
printf("a=%d\n",a);
}
//printf("a=%d\n",a);
return 0;
}
#include
int a=10;
int main()
{
int i;
for(i=0;i<5;i++)
{
//static int a=0;
int a=0;
a++;
printf("a=%d\n",a);
}
//printf("a=%d\n",a);
return 0;
}
/*
功能:体验static和extern的用法
*/
#include
int main()
{
int a=1,b=2,c=3;
//a++;
//printf("a=%d ",a);
printf("a++=%d ",a++);
//printf("b=%d ",b);
//++b;
printf("++b=%d ",++b);
//printf("c=%d ",c);
//printf("a=%d,b=%d,c=%d",a,b,c);
return 0;
}
#include
int main()
{
int a=1,b=2,c=3;
//b=++c;
printf("b=%d,++c=%d ",b,++c);
//a=c++;
printf("a=%d,c++=%d ",a,c++);
//b++;
printf("b++=%d ",b++);
//a=++b;
printf("a=%d,++b=%d ",a,++b);
return 0;
}
/*
功能:体验自增自减运算符的用法
*/
#include
int main()
{
int a=10;
float b;
b=(float)a;
printf("b=%f\n",b);
return 0;
}
#include
int main()
{
char a=2;
printf("a=%f\n",a);
return 0;
}
#include
int main()
{
float a=2;
printf("a=%d\n",a);
return 0;
}
#include
int main()
{
short a=2;
printf("a=%f\n",a);
return 0;
}
#include
int main()
{
float a=3;
int b=2;
double e=5;
int f=3;
printf("c=%d\n",a+b);
printf("d=%lf\n",a+b);
printf("e=%lf\n",e);
printf("g=%lf",b+f);
return 0;
}
/*
功能:体验类型转换
*/
#include
volatile int b;
int main()
{
volatile int a=10;
printf("%d\n",b);
printf("%d\n",a);
return 0;
}
#include
main()
{
int k=11;
printf("k=%d,k=%o,k=%x",k,k,k);
}
#include
main()
{
int a=5;
printf("%d\n",a++);
}
#include
main()
{
int x=10;
printf("%d\n",x+=x-=x-x);
}
#include
main()
{
double x,y;
x=1;
printf("%lf\n",y=x+3/2);
}
2022年10月25日
#include
int main()
{
int a=2,b=2,c=0,d=0;
c=a>1&&b++;
d=a>1||b++;
printf("a=%d,b=%d,c=%d,d=%d\n",a,b,c,d);
return 0;
}
/*
功能:体验逻辑与和逻辑或运算符的用法
*/
2022年10月26日
#include
/*
* 九九乘法表
* 作者:徐子宸
* 班级:22101
*/
int main()
{
int i,j;
for(i=1;i<=9;i++) // 外循环控制行
{
for(j=1;j<=i;j++) // 内循环控制内容
{
printf("%d*%d=%d ",j,i,j*i);
}
printf("\n");
}
return 0;
}
/*
* 我的分析过程
*
* for(j=1;j<=i;j++)
* i={1,2,3,4,5,6,7,8,9}
*
* j=1
* i=1
* j*i=1
*
* j=1
* i=2
* j*i=2
* j=2
* i=2
* j*i=4
*
* j=1
* i=3
* j*i=3
* j=2
* i=3
* j*i=6
* j=3
* i=3
* j*i=9
*
* j=1
* i=4
* j*i=4
* j=2
* i=4
* j*i=8
* j=3
* i=4
* j*i=12
* j=4
* i=4
* j*i=16
*
* j=1
* i=5
* j*i=5
* j=2
* i=5
* j*i=10
* j=3
* i=5
* j*i=15
* j=4
* i=5
* j*i=20
* j=5
* i=5
* j*i=25
*
* j=1
* i=6
* j*i=6
* j=2
* i=6
* j*i=12
* j=3
* i=6
* j*i=18
* j=4
* i=6
* j*i=24
* j=5
* i=6
* j*i=30
* j=6
* i=6
* j*i=36
*
* j=1
* i=7
* j*i=7
* j=2
* i=7
* j*i=14
* j=3
* i=7
* j*i=21
* j=4
* i=7
* j*i=28
* j=5
* i=7
* j*i=35
* j=6
* i=7
* j*i=42
* j=7
* i=7
* j*i=49
*
* j=1
* i=8
* j*i=8
* j=2
* i=8
* j*i=16
* j=3
* i=8
* j*i=24
* j=4
* i=8
* j*i=32
* j=5
* i=8
* j*i=40
* j=6
* i=8
* j*i=48
* j=7
* i=8
* j*i=56
* j=8
* i=8
* j*i=64
*
* j=1
* i=9
* j*i=9
* j=2
* i=9
* j*i=18
* j=3
* i=9
* j*i=27
* j=4
* i=9
* j*i=36
* j=5
* i=9
* j*i=45
* j=6
* i=9
* j*i=54
* j=7
* i=9
* j*i=63
* j=8
* i=9
* j*i=72
* j=9
* i=9
* j*i=81
*
* 分析完毕
*
*/
#include
int main()
{
int year=0,month=0,day=0,i=0;
int sum=0;
printf("请输入年月日:");
scanf("%d%d%d",&year,&month,&day);
for(i=1;i<=month;i++)
{
switch(i)
{
case 1:day+=0;break;
case 2:day+=31;break;
case 3:
if(year%4==0&&year%100!=0||year%400==0)
{
day+=29;
}
else
{
day+=28;
}
break;
case 4:day+=31;break;
case 5:day+=30;break;
case 6:day+=31;break;
case 7:day+=30;break;
case 8:day+=31;break;
case 9:day+=31;break;
case 10:day+=30;break;
case 11:
day+=31;break;
case 12:day+=30;break;
default:("ERROR");
}
}
sum+=day;
printf("该日有%d天",sum);
return 0;
}
/*
* 某年的某一天是这一年的第多少天
* 作者:徐子宸
* 班级:22101
*/
#include
int main()
{
int year,month,day;
printf("请输入年月日:");
scanf("%d%d%d",&year,&month,&day);
//int sum;
switch(month)
{
//break;
case 12:day+=30;
case 11:day+=31;
case 10:day+=30;
case 9:day+=31;
case 8:day+=31;
case 7:day+=30;
case 6:day+=31;
case 5:day+=30;
case 4:day+=31;
case 3: if(year%4==0&&year%100!=0||year%400==0)
{
day+=29;
}
else
{
day+=28;
}
//break;
case 2:
day+=31;
case 1:break;
default:("ERROR");
//break;
}
printf("这天是这一年的第%d天",day);
return 0;
}
/*
* 思路分析
*
* 1,3,5,7,8,10,12月有31天
* 4,6,9,11月有30天
* 平年2月有29天,闰年2月有28天
* 表示年份的数字能被4整除,还能被400整除,但不能被100整除的年是平年
* 其余为ie闰年
*
* 分析完毕
*/
2022年10月27日
#include
int main()
{
int n=5;
int arr[n]={0};
n=8;
int b[5];
b={1,2,3,4,5};
int c[5];
c[1]={1,2,3,4,5};
}
#include
int main()
{
char str[30]={0};
char atr[30]={0};
scanf("%s",str);
gets(atr);
puts(str);
puts(atr);
return 0;
}
/*
* gets输入之前,先会查看缓冲区中
* 是否有内容,有的话直接拿过来使
* 用
*
* scanf是标准输入函数,每次直接
* 从键盘中获取
*
*/
#include
int main()
{
char str[5]="hello";
puts(str);
return 0;
}
#include
int main()
{
char str[30]={0};
char atr[30]={0};
gets(str);
gets(atr);
puts(str);
puts(atr);
return 0;
}
#include
int main()
{
char str[30]={0};
char atr[30]={0};
scanf("%s",str);
scanf("%s",atr);
puts(str);
puts(atr);
return 0;
}
#include
int main()
{
char str[30]={0};
char atr[30]={0};
gets(str);
scanf("%s",atr);
puts(str);
puts(atr);
return 0;
}
/*
功能:体验gets和scanf的区别
*/
#include
int main()
{
int arr[5];
for(int i=0;i<5;i++)
{
scanf("%d",&arr[i]);
}
for(int j=0;j<5;j++)
{
printf("%d\n",arr[j]);
}
return 0;
}
/*
功能:体验对数组的输入和输出
*/
/*
* 功能:利用冒泡排序,求一组数据中的最大值和次大值
* 作者:徐子宸
* 班级:22101班
*/
#include
int main()
{
int a[5]={0};
int i,j;
int max1,max2;
printf("请输入数据\n");
for(i=0;i<5;i++)
{
scanf("%d",&a[i]);
}
for(i=0;i<5;i++)
{
for(j=0;j<5-i;j++)
{
if(a[j+1]
int main()
{
int a[5]={0};
int i;
int max1,max2;
int s=sizeof(a)/sizeof(int);
printf("请输入数据:\n");
for(i=0;i<5;i++)
{
scanf("%d",&a[i]);
}
digui(a,0,s-1);
printf("快速排序后的数据打印如下:\n");
for(i=0;i<5;i++)
{
printf("%d\n",a[i]);
}
printf("最大值为%d,次大值为%d\n",a[4],a[3]);
return 0;
}
int quicksort(int a[],int i,int j)
{
int k=a[i]; // 临时保存基准元素
while(i=k) // 若待查找的元素比基准元素大,则查找元素的指针向前移动
{
j--;
}
if(i
int main()
{
int arr[5]={0};
int max=arr[0];
int sec;
int i;
printf("请输入数据\n");
for(i=0;i<5;i++)
{
scanf("%d",&arr[i]);
}
for(i=0;i<(sizeof(arr)/sizeof(arr[0]));i++)
{
if(max==arr[i])
{
continue;
}
else if(max
#include
int main()
{
int a[5]={0};
int i,j;
printf("请输入待排序的数\n");
for(i=0;i<5;i++)
{
scanf("%d",&a[i]);
}
for(i=0;i<5;i++)
{
for(j=0;j<5-i;j++)
{
if(a[j]>a[j+1])
{
int tmp=a[j];
a[j]=a[j+1];
a[j+1]=tmp;
}
}
}
printf("已完成排序\n");
for(i=0;i<5;i++)
{
printf("%d\n",a[i]);
}
return 0;
}
#include
int main()
{
int arr[5];
printf("%ld %ld",sizeof(int[5]),sizeof(arr));
int brr[6];
printf("%ld %ld",sizeof(int[6]),sizeof(brr));
return 0;
}
2022年10月28日
/*
* 作者:徐子宸
* 班级:22101
* 功能:实现杨辉三角
* 来源:根据朱鸿飞老师的讲解自己改写
* 日期:20221028
*
*/
#include
int main()
{
int a[8][8]={0};
for(int i=0;i<8;i++)
{
for(int j=0;j<=i;j++)
{
if(j==0)
{
a[i][j]=1;
}
else if(i==j)
{
a[i][j]=1;
}
else
{
a[i][j]=a[i-1][j-1]+a[i-1][j];
}
}
}
for(int i=0;i<8;i++)
{
for(int j=0;j<=i;j++)
{
printf("%d ",a[i][j]);
}
printf("\n");
}
return 0;
}
#include
int main()
{
int a[2][3]={0};
for(int i=0;i<2;i++)
{
for(int j=0;j<3;j++)
{
scanf("%d",&a[i][j]);
}
}
for(int i=0;i<2;i++)
{
for(int j=0;j<3;j++)
{
printf("%d\n",a[i][j]);
}
}
return 0;
}
/*
功能:实现二维数组的输入和输出
*/
#include
int main()
{
int a[5]={0};
int i,j;
printf("请输入待排序的数\n");
for(i=0;i<5;i++)
{
scanf("%d",&a[i]);
}
for(i=0;i<5;i++)
{
for(j=0;j<5-i;j++)
{
if(a[j]>a[j+1])
{
int tmp=a[j];
a[j]=a[j+1];
a[j+1]=tmp;
}
}
}
printf("已完成排序\n");
for(i=0;i<5;i++)
{
printf("%d\n",a[i]);
}
return 0;
}
/*
功能:实现冒泡排序
*/
#include
/*
* 作者:徐子宸
* 来源:自己
* 功能:实现字符串的连接
* 有问题
*
*/
int main()
{
char str[100]={"xuzichen"};
char atr[100]={"china"};
int i,j;
if(str[i]!='\0'&&atr[j]!='\0')
{
while(str[i]!='\0')
{
atr[j]=str[i]++;
i++;
j++;
}
}
atr[j]='\0';
puts(str);
puts(atr);
return 0;
}
#include
/*
* 姓名:徐子宸
* 班级:22101
* 功能:实现字符串的连接
* 解题方法:敲上几十种不同的有关系的程序甚至更多有关系的程序,也许就可以知道怎么敲程序
*/
int main()
{
char str[100]="china";
char atr[100]="country";
int i=0,temp=0;
for(i=0;i<6;i++)
{
str[temp]=atr[i];
if(str[i]!='\0')
{
temp++;
}
i++;
}
str[i]='\0';
puts(str);
//str[i]='\0';
}
a#include
int main()
{
char str1[100]={0};
char str2[100]={0};
int i=0,j=0;
//scanf("%s",str1);
//scanf("%s",str2);
gets(str1);
gets(str2);
/*while(str1[i]!='\0')
{
//int i;
i++;
}*/
for(int i=0;str1[i]!='\0';i++);
for(int i=0,j=0;str2[j]!='\0';i++,j++)
{
str1(i++)=str2(j++);
}
/*while(str2[j]!='\0')
{
//int i,j;
str1[i++]=str2[j++];
}*/
str1[i]='\0';
puts(str1);
return 0;
}
/*
* 作者:徐子宸
* 班级:22101
* 功能:实现字符串的连接
* 来源:根据高助教的指导改写
*
*/
#include
int main()
{
char str1[100];
char str2[100];
int i=0;
int j=0;
printf("请输入字符串1\n");
gets(str1);
printf("请输入字符串2\n");
gets(str2);
do
{
i++;
}
while(str1[i]!='\0');
do
{
str1[i++]=str2[j++];
}
while(str2[j]!='\0');
str1[i]='\0';
printf("连接后的字符串为\n");
puts(str1);
return 0;
}
/*
* 作者:徐子宸
* 班级:22101
* 功能:实现字符串的连接
* 来源:根据高助教的指导改写
*
*/
#include
//#include
int main()
{
char str1[100];
char str2[100];
char str3[100];
char str4[100];
int i=0;
//static int i=0;
int j=0;
int k=0;
//int m=0;
printf("请输入字符串1\n");
gets(str1);
printf("请输入字符串2\n");
gets(str2);
do
{
i++;
}
while(str1[i]!='\0');
do
{
str1[i++]=str2[j++];
}
while(str2[j]!='\0');
str1[i]='\0';
printf("首次连接后的字符串为\n");
puts(str1);
//str4==str1;
//puts(str4);
//strcpy(str4,str1);
do
{
str4[i]=str1[i];
i++;
}
while(str1[i]!='\0');
str4[i]='\0';
printf("将此字符串复制一份得到\n");
puts(str4);
/*printf("请输入字符串3\n");
gets(str3);
do
{
k++;
}
while(str3[k]!='\0');
do
{
str4[i++]=str3[k++];
}
while(str3[k]!='\0');
str4[i]='\0';
printf("再次连接后的字符串为\n");
puts(str4);*/
return 0;
}
/*
* 拓展:将字符串2连接到字符串1后面,再将新生成的字符串复制一份
* 未成功
*
*/
/*
* 作者:徐子宸
* 班级:22101
* 功能:实现字符串的连接
* 来源:根据高助教的指导改写
*
*/
#include
#include
int main()
{
char str1[100];
char str2[100];
char str3[100];
char str4[100];
int i=0;
//static int i=0;
int j=0;
int k=0;
//int m=0;
printf("请输入字符串1\n");
gets(str1);
printf("请输入字符串2\n");
gets(str2);
do
{
i++;
}
while(str1[i]!='\0');
do
{
str1[i++]=str2[j++];
}
while(str2[j]!='\0');
str1[i]='\0';
printf("首次连接后的字符串为\n");
puts(str1);
//str4==str1;
//puts(str4);
strcpy(str4,str1);
/*do
{
str4[i]=str1[i];
i++;
}
while(str1[i]!='\0');
str4[i]='\0';*/
printf("将此字符串复制一份得到\n");
puts(str4);
printf("请输入字符串3\n");
gets(str3);
printf("字符串3为\n");
puts(str3);
/*do
{
k++;
}
while(str3[k]!='\0');
do
{
str4[i++]=str3[k++];
}
while(str3[k]!='\0');
str4[i]='\0';*/
printf("再次连接后的字符串为\n");
//puts(str4);
strcat(str4,str3);
puts(str4);
return 0;
}
/*
* 拓展:将字符串2连接到字符串1后面,再将新生成的字符串复制一份
* 再输入字符串3,将字符串3连接到新复制的字符串后面
* 问题:感觉不用到库函数不会写
*
*/
/*
* 作者:徐子宸
* 班级:22101
* 功能:实现字符串的连接
* 来源:根据高助教的指导改写
*
*/
#include
#include
int main()
{
char str1[100];
char str2[100];
char str3[100];
char str4[100];
int i=0;
//static int i=0;
int j=0;
int k=0;
int m=0;
printf("请输入字符串1\n");
gets(str1);
printf("请输入字符串2\n");
gets(str2);
do
{
i++;
}
while(str1[i]!='\0');
do
{
str1[i++]=str2[j++];
}
while(str2[j]!='\0');
str1[i]='\0';
printf("首次连接后的字符串为\n");
puts(str1);
//str4==str1;
//puts(str4);
strcpy(str4,str1);
/*do
{
str4[i]=str1[i];
i++;
}
while(str1[i]!='\0');
str4[i]='\0';*/
printf("将此字符串复制一份得到\n");
puts(str4);
printf("请输入字符串3\n");
gets(str3);
printf("字符串3为\n");
puts(str3);
do
{
m++;
}
while(str4[m]!='\0');
do
{
str4[m++]=str3[k++];
}
while(str3[k]!='\0');
str4[m]='\0';
printf("再次连接后的字符串为\n");
//puts(str4);
//strcat(str4,str3);
puts(str4);
return 0;
}
/*
* 拓展:将字符串2连接到字符串1后面,再将新生成的字符串复制一份
* 再输入字符串3,将字符串3连接到新复制的字符串后面
* 问题:感觉不用到库函数不会写
*
*/
#include
/*
* 作者:徐子宸
* 来源:自己
* 功能:实现字符串的拷贝
* 有问题
*
*/
int main()
{
char str[30]={"hello"};
char atr[20]={"helloworld"};
int i=0,j=0;
while(str[i]!='\0'&&atr[j]!='\0')
{
str[i]=atr[j];
i++;
j++;
}
atr[j]='\0';
puts(str);
return 0;
}
#include
/*
* 作者:徐子宸
* 来源:22091班上课笔记
* 功能:实现字符串的拷贝
*
*
*
*/
int main()
{
char str[100]={"china"};
char atr[100]={"people"};
int i=0;
while(atr[i]!='\0')
{
str[i]=atr[i];
i++;
}
atr[i]='\0';
puts(str);
return 0;
}
/*
* 作者:徐子宸
* 班级:22101
* 来源:根据CSDN网站中的相关信息改写
* 功能:实现对字符串的排序
*
*/
#include
#include
int main()
{
char str[5][10]={'\0'};
char temp[10];
printf("请输入5个不同的字符串\n");
for(int i=0;i<5;i++)
{
scanf("%s",str[i]);
}
printf("字符串输入完毕\n");
for(int i=0;i<5-1;i++)
{
int k=i;
for(int j=i+1;j<5;j++)
{
if(strcmp(str[k],str[j])>0)
{
k=j;
if(k!=i)
{
strcpy(temp,str[i]);
strcpy(str[i],str[k]);
strcpy(str[k],temp);
}
}
}
}
printf("已完成对字符串的排序\n");
for(int i=0;i<5;i++)
{
printf("%s\n",str[i]);
}
return 0;
}
/*
* 思路分析:
*
* 输入字符:
* aa
* bb
* cc
* ee
* dd
* 字符串输入完毕
* 运行此循环,用于对字符串进行排序
*
for(int i=0;i<5-1;i++)
{
int k=i;
for(int j=i+1;j<5;j++)
{
if(strcmp(str[k],str[j])>0)
{
k=j;
if(k!=i)
{
strcpy(temp,str[i]);
strcpy(str[i],str[k]);
strcpy(str[k],temp);
}
}
}
}
* i={0,1,2,3}
* str[0]=aa
* str[1]=bb
* str[2]=cc
* str[3]=ee
* str[4]=dd
*
* k={0,1,2,3}
* str[0]=aa
* str[1]=bb
* str[2]=cc
* str[3]=ee
* str[4]=dd
*
* j={1,2,3,4}
* str[0]=aa
* str[1]=bb
* str[2]=cc
* str[3]=ee
* str[4]=dd
*
* strcmp(str[0],str[1])>0
* strcmp(aa,bb)>0
* k=j
* str[k]=aa
* str[j]=bb
* str[k]=str[j]
* str[k]=bb
* str[i]=bb
* k!=i
* 不进行两两交换
*
* strcmp(str[1],str[2])>0
* strcmp(bb,cc)>0
* k=j
* str[k]=bb
* str[j]=cc
* str[k]=str[j]
* str[k]=bb
* str[i]=bb
* k!=i
* 不进行两两交换
*
* strcmp(str[2],str[3])>0
* strcmp(cc,ee)>0
* k=j
* str[k]=cc
* str[j]=ee
* str[k]=str[j]
* str[k]=ee
* str[i]=ee
* k!=i
* 不进行两两交换
*
* strcmp(str[3],str[4])<0
* strcmp(ee,dd)<0
* k=j
* str[k]=ee
* str[j]=dd
* str[k]=str[j]
* str[k]=dd
* str[i]=ee
* k!=i
* 进行两两交换
*
* 字符串的最终排序为
* aa
* bb
* cc
* dd
* ee
*
* 分析完毕
*
*/
已完成总结
请自行运行调试代码,此文章只做参考
作者:徐子宸
班级:西安华清远见嵌入式22101班
日期:2022年10月29日