📄 上半学期.txt
字号:
/*求最大值*/
#include<stdio.h>
main()
{int x,y,z;
printf("please input x,y:");
scanf("%d%d",&x,&y);
z=x>y?x:y;
printf("max is %d\n",z);
getchar();
getchar();
getchar();}
/*数据类型,变量定义*/
#include<stdio.h>
main(){
int x,y,z;char h,i,j;
float a,b,c,d,e,f,g;
h='e';x=10;a=1213.456;y=3;b=1.742;i='y';g=x%y+h-y*b+(int)a;printf("g=%f\n",g);
getchar();
getchar();
}
/*1+2+……+100*/
#include<stdio.h>
main(){
int s,i;
i=1;s=0;
while(i<=100){s=s+i;++i;}
printf("s=%d,i=%d\n",s,i);
getchar() ;
}
/*表达式的值,两种自加,各种运算符和表达式*/
#include<stdio.h>
main(){
int x,y,z,i,a,b,c,d,e;i=3;
x=(i++)+(i++)+(i++);
y=(++i)+(++i)+(++i);
z=(1<4)+(2!=2)+(a=18)+(b=5)%(c=3)+((d=3*5,d*4),d=d+5);
e=4*6,e=e+8 ;
printf("x=%d,y=%d,i=%d,z=%d,e=%d",x,y,i,z,e);
getchar();
}
/*闰年判定*/
#include<stdio.h>
main(){
int s;
scanf("%d",&s);
if((s%4==0&&s%100!=0)||s%400==0) printf("s is a leap year\n",s);
else
printf("s is not a leap year\n",s);
getchar();
getchar();
}
/*一元二次方程的根*/
#include<stdio.h>
#include<math.h>
main(){
float a,b,c,deta,x1,x2,s,t;
scanf("%f,%f,%f",&a,&b,&c);
if(a==0)
{
printf("this is wrong\n");
}
else
{
deta=b*b-4*a*c;
if(deta>=0)
{
x1=(-b+sqrt(deta))/(2*a) ;
x2=(-b-sqrt(deta))/(2*a) ;
printf("x1=%f,x2=%f",x1,x2);
}
else
{
s=-b/(2*a);t=sqrt(-deta)/(2*a);
printf("x1=%f+%fi,x2=%f-%fi",s,t,s,t);
}
}
getchar();
getchar();
}
/*判定素数*/
#include<stdio.h>
main()
{
int n,i,d;
scanf("%d",&n);
for(i=2;i<=n-1;i++)
{
if((n%i)==0){d=1;}
}
if(d==1){printf("%d is heshu\n",n);}
else{printf("%d is sushu\n",n);}
getchar();
getchar();
}
/*算术得分问题*/
#include<stdio.h>
main()
{
int a,b,c,s,i;
s=0;
for(i=1;i<=10;i++)
{
scanf("%d %d %d",&a,&b,&c);
if((a+b)==c){s=s+10;}
}
printf("s=%d\n",s);
if(s<60){printf("bujige\n");}
else{
if(s<70){printf("jige\n");}
else{
if(s<85){printf("lianghao\n");}
else{printf("yiuxiu\n");}
}
}
getchar();
getchar();
}
/*运费问题*/
#include<stdio.h>
main()
{int c;
float weight,distance,price,total,discount;
printf("please input weight,distance and price.\n");
scanf("%f%f%f",&weight,&distance,&price);
if(weight<=0||distance<=0||price<=0) printf("error.\n");
else {if(distance>=3000) c=12;
else c=distance/250;
switch(c)
{
case 0: discount=0;break;
case 1: discount=0.02;break;
case 2:
case 3: discount=0.05;break;
case 4:
case 5:
case 6:
case 7: discount=0.08;break;
case 8:
case 9:
case 10:
case 11:discount=0.1;break;
case 12:discount=0.15;break;
}
total=weight*distance*price*(1-discount);
printf("The total money is %7.2f.\n",total);
getchar();
getchar();
}
}
/*输入百分制成绩,输出成绩等级*/
#include<stdio.h>
main()
{float mark;char grade;int c;
printf("please input the mark.\n");
scanf("%f",&mark);
if(mark<0||mark>100) printf("error.\n");
else {
if(mark<60) c=5;
else c=mark/10;
switch(c)
{
case 10:
case 9:grade='A';break;
case 8:grade='B';break;
case 7:grade='C';break;
case 6:grade='D';break;
case 5:grade='E';break;
}
printf("The grade is %c.\n",grade);
getchar();
getchar();
}
}
/*112页题5.10距离问题*/
#include<stdio.h>
main()
{float x,y;int h;
printf("please input x,y.\n ");
scanf("%f%f",&x,&y);
if((x-2)*(x-2)+(y-2)*(y-2)<=1||(x+2)*(x+2)+(y-2)*(y-2)<=1||
(x-2)*(x-2)+(y+2)*(y+2)<=1||(x+2)*(x+2)+(y+2)*(y+2)<=1)
{h=10;printf("h=%d",h);}
else{h=0;printf("h=%d",h);}
getchar();
getchar();
}
/*输出100到200的全部素数*/
#include<stdio.h>
main()
{
int n,i,flag;
for(n=100;n<=200;n++)
{flag=1;
for(i=2;i<=n-1;i++)
{if(n%i==0){flag=0;break;}}
if(flag) printf("%d is sushu.\n",n);
}
getchar();
getchar();
}
/*计算pi的近似值*/
#include<stdio.h>
main()
{
double pi,s;long int n;
s= -1;pi=0;
for(n=1;n<=20000000;n+=2){s= -s;pi=pi+s/n;}
pi=pi*4;
printf("pi=%f",pi);
getchar();
getchar();
}
/*求Fibonacci数列的前40个数*/
#include<stdio.h>
main()
{
double f1,f2;int i;
f1=1;f2=1;
for(i=1;i<=20;i++)
{
printf("%9.0f %9.0f ",f1,f2);
f1=f1+f2;
f2=f2+f1;
if(i%2==0) printf("\n");
}
getchar();
}
/*1!+2!+3!+……+20!*/
#include<stdio.h>
main()
{double s,t;int n;
s=0;t=1;
for(n=1;n<=20;n++)
{t=n*t;s=s+t;}
printf("s=%16.0f",s);
getchar();
}
/*a+aa+aaa+……+aaaaa……aaaa(n个)*/
#include<stdio.h>
main()
{int a,n,i;double s,t,q;
printf("please input n and a.\n");
scanf("%d%d",&n,&a);
if(n<=0||a<=0) printf("error.\n");
else
{s=0;t=1;q=0;
for(i=1;i<=n;i++)
{q=q+t;s=s+q;t=t*10;}
s=a*s;
printf("s=%.0f",s);
getchar();getchar();
}
}
/*输出图象*/
#include<stdio.h>
main()
{int i,j,n;
for(n=1;n<=4;n++)
{
for(i=1;i<=4-n;i++)
printf(" ");
for(j=1;j<=2*n-1;j++)
printf("*");
printf("\n");
}
for(n=1;n<=3;n++)
{
for(i=1;i<=n;i++)
printf(" ");
for(j=1;j<=2*(4-n)-1;j++)
printf("*");
printf("\n");
}
getchar();
}
/*求平均值*/
#include<stdio.h>
main()
{int a[10],i;float average=0;
for(i=0;i<10;i++)
scanf("%d",&a[i]);
for(i=0;i<10;i++)
average=average+a[i];
average=average/10;
printf("average is %f\n",average) ;
getchar();
getchar();
}
/*输入10个数选出最大数*/
#include<stdio.h>
main()
{int a[10],i,max;
for(i=0;i<10;i++)
scanf("%d",&a[i]);
max=a[0];
for(i=1;i<10;i++)
if(max<a[i]) max=a[i];
for(i=0;i<10;i++)
if(max==a[i]) printf("max is a[%d]=%d\n",i,max);
getchar();
getchar();
}
/*输入10个数从小到大排序*/
#include<stdio.h>
main()
{int a[10],i,j,t;
for(i=0;i<10;i++)
scanf("%d",&a[i]);
for(i=0;i<9;i++)
for(j=0;j<9-i;j++)
if(a[j]>a[j+1])
{t=a[j];a[j]=a[j+1];a[j+1]=t;}
for(i=0;i<10;i++)
printf("%d ",a[i]);
getchar();
getchar();
}
/*字符串测长*/
#include<stdio.h>
main()
{int i;char c[100];
scanf("%s",c);
for(i=0;c[i]!='\0';i++);
printf("The length of the string is %d\n",i);
getchar();
getchar();
}
/*字符串大写化*/
#include<stdio.h>
main()
{int i;char c[100];
scanf("%s",c);
printf("%s\n",c);
for(i=0;c[i]!='\0';i++)
if(c[i]<='z'&&c[i]>='a')
c[i]=c[i]-32;
printf("%s\n",c);
getchar();
getchar();
}
/*字符串比较*/
#include<stdio.h>
main()
{char a[100];char b[100];
int i,j,flag=1;
scanf("%s%s",a,b);
for(i=0;a[i]!='\0';i++);
for(j=0;a[j]!='\0';j++);
if(i!=j) printf("The two strings are not the same.\n");
else for(i=0;a[i]!='\0';i++)
if(a[i]!=b[i]) {flag=0;break;}
if(flag) printf("The two strings are the same.\n");
else printf("The two strings are not the same.\n");
getchar();
getchar();
}
/*字符串复制*/
#include<stdio.h>
main()
{char a[100];char b[100];
int i;
scanf("%s",b);
printf("b is %s\n",b);
for(i=0;b[i]!='\0';i++)
a[i]=b[i];
a[i]='\0';
printf("a is %s\n",a);
getchar();
getchar();
}
/*字符串连接*/
#include<stdio.h>
main()
{char a[100];char b[100];int i,j;
scanf("%s%s",a,b);
for(i=0;a[i]!='\0';i++) ;
for(j=0;b[j]!='\0';j++)
a[i+j]=b[j];
a[i+j]='\0';
printf("%s",a);
getchar();
getchar();
}
/*译密码1*/
#include<stdio.h>
main()
{int i;char c;
for(i=0;(c=getchar())!='\n';i++)
{
if(c>='A'&&c<='Z'||c>='a'&&c<='z')
{
c=c+4;
if(c>'Z'&&c<'Z'+5||c>'z')
c=c-26;
}
putchar(c);
}
}
/*输入一行字符统计字母空格数字和其他字符个数*/
#include<stdio.h>
main()
{int i,num=0,other=0,ch=0,space=0;char c;
for(i=0;(c=getchar())!='\n';i++)
{
if(c>='A'&&c<='Z'||c>='a'&&c<='z') ch++;
else{
if(c==' ') space++;
else{
if(c>='0'&&c<='9') num++;
else other++;
}
}
}
printf("num=%d,other=%d,ch=%d,space=%d\n",num,other,ch,space);
getchar();
}
/*矩阵转置*/
#include<stdio.h>
main()
{
int A[4][3];int B[3][4];
int i,j;
for(i=0;i<4;i++)
for(j=0;j<3;j++)
scanf("%d",&A[i][j]);
printf("matrix A:\n");
for(i=0;i<4;i++)
{for(j=0;j<3;j++)
printf("%6d",A[i][j]);
printf("\n");}
for(i=0;i<3;i++)
for(j=0;j<4;j++)
B[i][j]=A[j][i];
printf("matrix B:\n");
for(i=0;i<3;i++)
{for(j=0;j<4;j++)
printf("%6d",B[i][j]);
printf("\n");}
getchar();
getchar();
getchar();
}
/*矩阵乘积*/
#include<stdio.h>
main()
{int A[4][3];int B[3][4];int i,j,k;int C[3][3]={0};int D[4][4]={0};
printf("please input the matrix A:\n");
for(i=0;i<4;i++)
for(j=0;j<3;j++)
scanf("%d",&A[i][j]);
printf("\n");
printf("please input the matrix B;\n");
for(i=0;i<3;i++)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -