经典C语言源代码.docx

上传人:b****1 文档编号:479155 上传时间:2022-10-10 格式:DOCX 页数:25 大小:22.73KB
下载 相关 举报
经典C语言源代码.docx_第1页
第1页 / 共25页
经典C语言源代码.docx_第2页
第2页 / 共25页
经典C语言源代码.docx_第3页
第3页 / 共25页
经典C语言源代码.docx_第4页
第4页 / 共25页
经典C语言源代码.docx_第5页
第5页 / 共25页
点击查看更多>>
下载资源
资源描述

经典C语言源代码.docx

《经典C语言源代码.docx》由会员分享,可在线阅读,更多相关《经典C语言源代码.docx(25页珍藏版)》请在冰豆网上搜索。

经典C语言源代码.docx

经典C语言源代码

经典C语言源代码

1、

(1)某年某月某日是星期几

#include

intmain()

{

intyear,month,day;

while(scanf_s("%d%d%d",&year,&month,&day)!

=EOF)

{

if(month==1||month==2)//判断month是否为1或2 

{

year--;

month+=12;

}

intc=year/100;

inty=year-c*100;

intweek=(c/4)-2*c+(y+y/4)+(13*(month+1)/5)+day-1;

while(week<0){week+=7;}

week%=7;

switch(week)

{

case1:

printf("Monday\n");break;

case2:

printf("Tuesday\n");break;

case3:

printf("Wednesday\n");break;

case4:

printf("Thursday\n");break;

case5:

printf("Friday\n");break;

case6:

printf("Saturday\n");break;

case0:

printf("Sunday\n");break;

}

}

return0;

}

1、

(2)某年某月某日是第几天(一维数组)

#include"stdio.h"

voidmain(){

inti,flag,year,month,day,dayth;

intmonth_day[]={0,31,28,31,30,31,30,31,31,30,31,30,31};

printf("请输入年/月/日:

\n");

scanf_s("%d/%d/%d",&year,&month,&day);

dayth=day;

flag=(year%400==0)||(year%4==0&&year%100!

=0);

if(flag)

month_day[2]=29;

for(i=1;i

dayth=dayth+month_day[i];

printf("%d/%d/%d是第%d天\n",year,month,day,dayth);

}

 

2、30个数中找最小的数及其位置

#include"stdio.h"

#defineSIZE30

voidmain(){

inti;

floatdata[SIZE];

intmin;

printf("请输入%d个浮点数:

\n",SIZE);

for(i=0;i

//scanf_s("%f",&data[i]);

data[i]=rand()%30+1;

printf("%f、",data[i]);

}

min=0;

for(i=1;i

if(data[i]

min=i;

}

printf("最小值是%5.2f,位置是%5d\n",data[min],min);

}

 

3、30个数从小到大排序

(1)

#include"stdio.h"

#defineSIZE30

voidmain(){

inti,j;

floatdata[SIZE],temp;

intmin;

printf("请输入%d个整型数:

\n",SIZE);

for(i=0;i

scanf_s("%f",&data[i]);

}

for(i=0;i

min=i;

for(j=i+1;j

if(data[j]

min=j;

temp=data[min];

data[min]=data[i];

data[i]=temp;

}

printf("\n排序后的结果是:

\n");

for(i=0;i

printf("%5.2f",data[i]);

}

(2)模块化程序(数组名作为函数参数)

#include"stdio.h"

#defineSIZE5

voidaccept_array(floata[],intsize);

voidsort(floata[],intsize);

voidshow_array(floata[],intsize);

voidmain(){

floatscore[SIZE];

accept_array(score,SIZE);

printf("排序前:

");

show_array(score,SIZE);

sort(score,SIZE);

printf("排序后:

");

show_array(score,SIZE);

}

voidaccept_array(floata[],intsize){

inti;

printf("请输入%d个分数:

",size);

for(i=0;i

scanf_s("%f",&a[i]);

}

voidshow_array(floata[],intsize){

inti;

for(i=0;i

printf("%5.2f",a[i]);

printf("\n");

}

voidsort(floata[],intsize){

inti,min,j;

floattemp;

for(i=0;i

min=i;

for(j=i+1;j

if(a[j]

min=j;

temp=a[min];

a[min]=a[i];

a[i]=temp;

}

}

 

4、

(1)指针加减:

#include"stdio.h"

#defineSIZE10

voidmain(){

inta[SIZE]={1,2,3,4,5,6,7,8,9,10};

int*pa,i;

pa=&a[0];

//pa=a;

printf("\n");

for(i=0;i

printf("%d",*pa);

//printf("%d",*(pa+1));

pa++;

}

}

(2)指针比较:

#include"stdio.h"

#defineSIZE10

voidmain(){

inta[SIZE]={1,2,3,4,5,6,7,8,9,10};

int*pa,i;

int*qa;

pa=qa=&a[0];

printf("请输入%d整型数:

",SIZE);

for(;pa

scanf_s("%d",pa);

for(pa--;qa<=pa;pa--)

printf("%d",*pa);

}

5、两字符串相连:

#include"stdio.h"

#include"string.h"

voidstr_cat(charstr1[],charstr2[]);

voidmain(){

inti,j;

charstr1[160];

charstr2[80];

printf("请输入第一个字符串:

");

gets(str1);

printf("请输入第二个字符串:

");

gets(str2);

str_cat(str1,str2);

puts(str1);

}

voidstr_cat(charstr1[],charstr2[]){

inti,j;

i=0;

while(str1[i]!

='\0')

i++;

j=0;

while(str2[j]!

='\0'){

str1[i]=str2[j];

i++;j++;

}

str1[i]='\0';

}

6、二维数组(a,b转置)

#include"stdio.h"

voidmain(){

inti,j,b[2][3];

inta[3][2]={{1,2},{3,4},{5,6}};

for(i=0;i<2;i++){

for(j=0;j<3;j++)

b[i][j]=a[j][i];

}

printf("\na:

\n");

for(i=0;i<3;i++){

for(j=0;j<2;j++)

printf("%5d",a[i][j]);

printf("\n");

}

printf("\nb:

\n");

for(i=0;i<2;i++){

for(j=0;j<3;j++)

printf("%5d",b[i][j]);

printf("\n");

}

}

7、输入一个二维数组并输出(指针)

#include"stdio.h"

voidmain(){

intx[2][3];

inti,j;

for(i=0;i<2;i++)

for(j=0;j<3;j++)

scanf_s("%d",*(x+i)+j);

putchar('\n');

for(i=0;i<2;i++)

{

for(j=0;j<3;j++)

printf("%d",*(*(x+i)+j));

putchar('\n');

}

}

 

8、冒泡法排序一个数组

#include"stdio.h"

#definesize10

voidmaopao(inta[]);

voidmain(){

inta[10];

inti;

printf("请输入10个整数:

\n");

for(i=0;i<10;i++)

scanf_s("%d",&a[i]);

maopao(a);

}

voidmaopao(inta[]){

inti,j,temp;

for(i=0;i<9;i++){//进行9轮排序

for(j=0;j

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1