c语言必背代码大全
对于刚学计算机编程的学生来说,编程的每一个知识都很重要。下面,我已经为大家整理好了C语言所需的背码。希望大家喜欢。
c语言必背代码
1./*输出9*9公式。总共有9行9列,I控制行和j控制列。*/#包含" stdio.h "
main()
{int i,j,result
for(I=1;i10I)
{ for(j=1;j10j)
{
结果=I * j;
printf("%d*%d=%-3d ",I,j,result);/*-3d表示左对齐,占3位数*/
}
printf(" n ");/*每行后换行*/
}
}
2./*经典问题:有一对兔子从出生后第三个月开始每月出生,小兔子长到第三个月以后每月出生一对兔子。如果兔子没死,每个月兔子总数是多少?
兔子定律是序列1,1,2,3,5,8,13,21.*/
main()
{
长f1、F2;
int I;
f1=F2=1;
for(I=1;i=20I)
printf("ld ld",f1,f2;
if(I % 2==0)printf(" n ");/*控制输出,每行四个*/
f1=f1 f2/*前两个月相加并分配到第三个月*/
f2=f1 f2/*前两个月相加并分配到第三个月*/
}
}
3./*判断101到200之间有多少个素数,输出所有素数和素数个数。
程序分析:判断素数的方法:用一个数除2到sqrt(这个数),如果能除尽,
表示这个数不是质数,而是质数。*/
#包含" math.h "
main()
{
int m,I,k,h=0,leap=1;
printf(" n ");
for(m=101;m=200m)
{ k=sqrt(m ^ 1);
for(I=2;I=k;I)
if(m%i==0)
{ leap=0;打破;}
如果(leap) /*在内环结束后,leap仍然是1,那么M是素数*/
{printf("%-4d ",m);h;
if(h==0)
printf(" n ");
}
leap=1;
}
printf(" n总数为%d ",h);
}
4./*如果一个数恰好等于它的因子之和,这个数叫做"完全数’。比如6=1 2 3。电视节目
找出所有1000以内的完全数。*/
main()
{
static int k[10];
int i,j,n,s;
for(j=2;j1000j)
{
n=-1;
s=j;
for(I=1;I { if((j % I)=0)
{ n;
s=s-I;
k[n]=I;
}
}
if(s==0)
{printf("%d是wanshu: ",j);
for(I=0;iprintf("%d ",k[I]);
printf("%d ",k[n]);
}
}
}
5./*以下程序的功能是将44阵列逆时针旋转90度后输出。要求原数组的数据随机输入,新数组以4行4列输出。
请在空白处完善程序。*/
main()
{ int a[4][4],b[4][4],I,j;/*a存储原始数组数据,B存储旋转后的数组数据*/
printf("输入16个数字: ");
/*输入一组数据存储在数组A中,然后旋转存储在数组B中*/
for(I=0;i4;I)
for(j=0;j4;j)
{ scanf("%d ",a[I][j]);
b[3-j][I]=a[I][j];
}
printf(" array b : n ");
for(I=0;i4;I)
{ for(j=0;j4;j)
printf("m ",b[I][j]);
printf(" n ");
}
}
6./*编程打印直角杨辉三角形*/
main()
{int i,j,a[6][6];
for(I=0;I=5;I)
{a[i][i]=1
;a[i][0]=1;}for(i=2;i<=5;i++)
for(j=1;j<=i-1;j++)
a[i][j]=a[i-1][j]+a[i-1][j-1];
for(i=0;i<=5;i++)
{for(j=0;j<=i;j++)
printf("%4d",a[i][j]);
printf(" ");}
}
7、/*通过键盘输入3名学生4门课程的成绩,
分别求每个学生的平均成绩和每门课程的平均成绩。
要求所有成绩均放入一个4行5列的数组中,输入时同一人数据间用空格,不同人用回车
其中最后一列和最后一行分别放每个学生的平均成绩、每门课程的平均成绩及班级总平均分。*/
#include
#include
main()
{ float a[4][5],sum1,sum2;
int i,j;
for(i=0;i<3;i++)
for(j=0;j<4;j++)
scanf("%f",&a[i][j]);
for(i=0;i<3;i++)
{ sum1=0;
for(j=0;j<4;j++)
sum1+=a[i][j];
a[i][4]=sum1/4;
}
for(j=0;j<5;j++)
{ sum2=0;
for(i=0;i<3;i++)
sum2+=a[i][j];
a[3][j]=sum2/3;
}
for(i=0;i<4;i++)
{ for(j=0;j<5;j++)
printf("%6.2f",a[i][j]);
printf(" ");
}
}
8、/*完善程序,实现将输入的字符串反序输出,
如输入windows 输出swodniw。*/
#include
main()
{ char c[200],c1;
int i,j,k;
printf("Enter a string: ");
scanf("%s",c);
k=strlen(c);
for (i=0,j=k-1;i { c1=c[i];c[i]=c[j];c[j]=c1; } printf("%s
",c); } 指针法: void invert(char *s) {int i,j,k; char t; k=strlen(s); for(i=0,j=k-1;i { t=*(s+i); *(s+i)=*(s+j); *(s+j)=t; } } main() { FILE *fp; char str[200],*p,i,j; if((fp=fopen("p9_2.out","w"))==NULL) { printf("cannot open the file
"); exit(0); } printf("input str:
"); gets(str); printf("
%s",str); fprintf(fp,"%s",str); invert(str); printf("
%s",str); fprintf(fp,"
%s",str); fclose(fp); } 9、/*下面程序的功能是从字符数组s中删除存放在c中的字符。*/ #include main() { char s[80],c; int j,k; printf("
Enter a string: "); gets(s); printf("
Enter a character: "); c=getchar( ); for(j=k=0;s[j]!= " ";j++) if(s[j]!=c) s[k++]=s[j]; s[k]= " "; printf("
%s",s); } 10、/*编写一个void sort(int *x,int n)实现将x数组中的n个数据从大到小 排序。n及数组元素在主函数中输入。将结果显示在屏幕上并输出到文件p9_1.out中*/ #include void sort(int *x,int n) { int i,j,k,t; for(i=0;i { k=i; for(j=i+1;j if(x[j]>x[k]) k=j; if(k!=i) { t=x[i]; x[i]=x[k]; x[k]=t; } } } void main() {FILE *fp; int *p,i,a[10]; fp=fopen("p9_1.out","w"); p=a; printf("Input 10 numbers:"); for(i=0;i<10;i++) scanf("%d",p++); p=a; sort(p,10);
本文由高吴于2024-12-21 13:10:00发表在生物能,如有疑问,请联系我们。
本文链接:http://www.zgswn.com/49262.html
下一篇
南方避暑城市排名