初学C语言常用简单程序代码.docx
《初学C语言常用简单程序代码.docx》由会员分享,可在线阅读,更多相关《初学C语言常用简单程序代码.docx(15页珍藏版)》请在冰豆网上搜索。
初学C语言常用简单程序代码
初学C培言常用简单程序代码
素数的筛选
include
include
#defineN1000
intmain(intargc,char*argv[])
{
inti,j,num[N);
for(i=0;ifor(i=1;i<(int)sqrt((double)N);i++){
if(num[i])
{
for(j=i+1;j{
if(num[j])
if(num[j]%num[i]==0)num[j]=0;
}
}
}
for(i=1;iif(num[i])
printf("%d",num[i]);
return0;
输出时分杪
include
main()
intx,s,t,d;
scanf("%d",&x);
s=x%60;
t=(x/60)%60;
d=(x/60)/60;
printf(u%dBt%d分%(1杪;d,t,s);
)
三个数的交换
include
voidmain()
{
inta,b,c,t;
scanf("%d%d%d",&a,&b,&c);
printf("Theoriginalnumber:
a=%d,b=%d,c=%d\n",a,b,c);
t=a,a=b,b=t;
t=a,a=c,c=t;
printf("afterswap:
a=%d,b=%d,c=%d",a,b,c);
1
switch语句的运用
includemain()
{
inta,m;
printf("pleaseinputanumber:
");scanf("%d",&a);
switch(a/1O)
case10:
case9:
m=5;break;
case8:
m=4;break;
case7:
m=3;break;
case6:
m=2;break;
default:
m=1;
I
printf("m=%d",m);
1
圳断奇数和偶数
include
main()
{
intx;
printf("Pleaseinputanumber:
");scanf("%d",&x);
if(x%2==0)
printff'thisisaoushu!
");
else
printf("thisisajishu!
");
)
小写改大写,若是大写则不变
include
main()
{
charc1,c2;
printf("lnputaletter\nH);
scanf("%c",&c1);
c2=Ca<=c1&&c1<=,z,)?
(c1-,a,+,A,):
c1;printf(,,%c,,,c2);
getchar();
return0;
输入一个数,输出这f数是几位数
include
main()
intx,n;
prin廿("pleaseinputanumber:
");scanf("%d",&x);
n=O;
while(x!
=O)
{
x=x/10;
n++;
!
printf("%d",n);
)
输入一个数,圳Bi它是几位数,然后逆序输出
#include
intmain()
{
intnum;
intlen=0;
inttemp=0;
printf("Pleaseinputanumberki");
scanfC%d:
&num);
while((num%10)!
=0)
{
temp=temp*10+(num%10);
len++;
num
num/10;
printfflength=%d\n",len);
printfC'Reverseis%d",temp);}
扌J印水仙花数
include
main()
{
intx,a,b,c;
for(x=100;x<=999;x++)
{
a=x%10;
b=(x/10)%10;
c=x/1OO;
if(x==a*a*a+b*b*b+c*c*c)
{
printf("%5d;x);
I
}
printf(,,\nu);
判IO年
include"stdio.h"
main()
{
intk,flag,n=0;
for(k=1980;k<=2880;k++)
f_agH(k%4so)20Q(k%oolro)=(k%400ss
if(f_ag)
(p「intf(=%5d=m
n++
if(n%10£0)
p5-if(M)
pB-mn)
沁r3+5—7—99+1S3A
#inc-udeAsidio.hv
mam()
iniSU3H
sumur
g
fo「Tr-3=A匕2I:
+2)
(
llA
sum=sum+i*r
p5-tf(=sum"%d・「sumr
沁驾nIO
#inc-udeAsidio.hv
mam()
foaiSH
intn,i,fz,fm;
s=0;
fz=2;
fm=1;
printf("Entern:
H);
scanf("%d",&n);
for(i=1;i<=n;i++)
{
t=(1.0*fz)/fm;
s=s+t;
fz=fz+fm;
fm=fz-fm;
}
printf("s=%f\nM,s);
1
开发一个程序求全册学生某门课的平均成绩,要求程序每次运行时册
级人数可为任意
厂用标记值来指示数据輸入的结東*/
include
main()
{
floataverage,total;
intcounter,score;
total=0.0;
counter=0;
printfC输入成绩,-1表示结東门;
scanf("%d",&score);
while(score!
=-1)广用-1表示输人的结東,同时循环输
入分数*/
total=total+score;
counter++;
printfC'lffl人下一个成绩表示輸入结東:
”);
scanf("%d",&score);
}
if(counter!
=0)
{
average=total/counter;
printf("全册平均成绩为:
%.2f\n”,average);
}
else
printf(u没有输人成绩\n");
return0;
1
求二元一次方程的根
include
include
main()
{
floata=4,b=-40,c=91;
floatx1,x2;
floatdelta;
delta=sqrt(b*b-4.0*a*c);
x1=(-b+delta)/(2.0*a);
x2=(-b-delta)/(2.0*a);
printfCx1=%fx2=%f\nH,x1,x2);
if培句的运用
includemain()
inta,b,c,s,w,t;
s=w=t=O;
a=-1;
b=c=3*
if(c>0)
s=a+b;
if(a<=0)
{
if(b>0)
if(c<=0)
w=a-b;
}
else
if(c>0)
w=a-b;
else
t=c;
printf("s=%d,w=%d,t=%d",s,w,t);)
输入学生的生日,输出他的实足年龄
include
main()
inty0,m0,d0,y1,m1,d1,age;printf("\npleaseinputbirthday(yyyy/mm/dd):
H);scanf(M%d/%d/%dM,&yO,&mO,&dO);
printf("\npleaseinputcurrentday(yyyy/mm/dd):
");scanf(u%d/%d/%d",&y1,&ml,&d1);
if((m1>mO)||(m1=mO&&d1>=dO))age=y1-yO;
else
age=y1-yO-1;
printf("age=%d\n",age);
)
指针变量作为函数参数,实现两数的交换
include
voidsswap(int*x,int*y);
main()
{
inta=10,b=20;
printf("beforeswap:
a=%d,b=%d\n",a,b);sswap(&a,&b);
printf("afterswap:
a=%d,b=%d\n,,,a,b);
)
voidsswap(int*x,int*y)
{
intt;
t=*x;
*x=*y;
*y=t;
1
通过函数调用输出两个实型数中最大的一个
include
float*f(float*px,float*py)
if(*px>*py)
returnpx;
returnpy;
)
main()
{
floatx=10.0,y=20.0,*a=&x,*b=&y;printf("*a=%f,*b=%f,max=%f\n",*a,*b,*f(a,b));
}
廿算并输出一f数组中所有元素的和,最大值,最小值,值为奇数的元素个数
编写一个函数,将一个字符串中的字符全部转成大写
include
voidLower2Upper(char*str)
{
char*p=str;
while(*p!
=0)
{
if(*p<=,z,&&*p>=,a,)
*p=*p-32;
P++;
}
1
main()
chars[10]£Hello!
";
inti;
Lower2Upper(s);for(i=0;i<10;i++)
printf("%c",s[i]);
廿算一个字符在一个字符串中出现的次数
include
intcount(charch,char*str)
{
char*p=str;
intnum=O;
while(*p!
=,\O,)
if(*p++==ch)
num++;
returnnum;
)
main()
{
charah='a';
chars[]="haowareayou";printf("thenumberis:
");
printf(,,%d\n",count(,a',s));
删除一维数组中所有相同的数
#include
voidunique(int*a,int*n)
{
intk=1;
inti,m;
m=a[0];
for(i=0;i<*n;i++)
{
if(a[i]>m)
{
a[k++]=a[i];m=a[i];
1
I
*n=k;
1
main()
{
inta[1O];
intn=1O,i;
printfC'inputalistnumber:
");for(i=0;i..An");
for(i=0;iunique(a,&n);printf("afterdelete...An");for(i=0;ia[i]);
printfCXn");
将字符串按字典噸序输出includeinclude#defineN5voidsort(char*name[],intn);
voidprn(char*name[],intn);
voidmain()
{
char*name[]={,,China,,J,'America","Australia","France",■'German"};sort(name,N);
prn(name,N);
voidsort(char*name[],intn)
{
char*pt;
inti,j,k;
for(i=0;i{
k=i;
for(j=i+1;jif(strcmp(name[k],name[j])>0)k=j;
if(k!
=i)
{
pt=name[i];name[i]=name[k];name[k]=pt;
}
voidprn(char*name[],intn)
inti;
for(i=0;iprintf("%s\n",name[i]);
)
有n个学生,毎个学生考ml'l课程,要求编一程序,能检査n个学生有无不及格的课程,如果有某一学生有一门或一门以上课程不汝格,就输出该学生的号码和其全部成绩
include
#defineN5
#defineM4,intcol);
voidprt(float*s,intno,intlen);
main()
{
float
a[N][M]二{{78,99,89,87},{67,59,87,77},{86,53,59,95},{77,88,57,95},{78,75,8
7,95}};
score(a,N,M);
1
voidscore(float(*p)[M],introw,intcol)
{
inti,j;
intpassed;
for(i=0;i{
passed=1;
for(j=0;j
if(p[i][j]<60.0)
passed=0;
if(!
passed)
voidprt(float*s,intno,intlen){
float*p;printf("NO.%d",no);
for(p=s;p
printfC%5.1f,*p);
printf(,,\n,,);
|