@[toc](刘晓莎作业)
第一章
1. 【例1.1】
#include<stdio.h>
int main()
{
printf("This is a C program.\n");
return 0;
}
2. 【例1.2】
#include<stdio.h>
int main()
{
int a,b,sum;
a=123;
b=456;
sum=a+b;
printf("sum is %d\n",sum);
return 0;
}
3. 【例1.3】
#include<stdio.h>
int main()
{
int max(int x,int y);
int a,b,c;
printf("place input two number");
scanf("%d,%d",&a,&b);
c=max(a,b);
printf("The max is %d",c);
return 0;
}
int max(int x,int y)
{int max;
max=x;
if(y>x)
max=y;
return(max);
}
第二章
//The result of finding the product of five numbers
- 【例2.1】
#include<stdio.h>
int main()
{
int i,g,p;
p=1;
printf("place input the number\n");
scanf("%d",&g);
for(i=0;i<=5;i++)
{ p*=g;
printf("place input the number\n");
scanf("%d",&g);
}
printf("result is %d",p);
return 0;
}
//Is it a leap year OR not?
#include<stdio.h>
int main()
{
int year;
//printf("请输入年份");
// scanf("%d",&year);
for(year=2000;year<=2500;year++)
{if(year%4==0&&(year%100!=0||year%400==0))
printf("%d是闰年\n",year);
else printf("%d不是闰年\n",year);
}return 0;
}
Is it a prime number?
#include<stdio.h>
int main()
{
int i,w=0,k;
printf("请输入一个大于三的整数\n");
scanf("%d",&i);
for(k=2;k<i;k++)
{
if(i%k==0)
w=w+1;
}
if(w==0)
printf("是素数");
else
printf("不是素数");
return 0;
}
第三章
Exchange of Fahrenheit and Celsius temperatures
#include <stdio.h>
int main()
{
double c,f;
printf("请输入华氏温度:");
scanf("%lf",&f);
c=5.0/9*(f-32);
printf("以华氏为单位的温度是:%7.2lf\n以摄氏为单位的温度是:%7.2lf\n",f,c);
return 0;
}
计算存款利息。
有1000元,想存一年。有三种方法可选:
(1)活期,年利率为r1
(2)一年期定期,年利率为r2
(3)存两次半年定期,年利率为r3
请分别计算出一年后按三种方法所得到的本息和
#include <stdio.h>
int main ( )
{float p0=1000, r1=0.0036,r2=0.0225, r3=0.0198, p1, p2, p3;
p1 = p0 * (1 + r1);
p2 = p0 * (1 + r2);
p3 = p0 * (1 + r3/2) * (1 + r3/2);
printf("%f\n%f\n%f\n",p1, p2, p3);
return 0;
}
Capital to lowercase
# include "stdio.h"
int main()
{
char a,b;
printf("请输入一个大写字母:");
scanf("%c",&a);
b=a+32;
printf("\n相应的小写字母为%c\n",b);
return 0;
}
Finding the area of a triangle
#include<stdio.h>
int main()
{
int a,b,c,p;
printf("请输入三角形的三边长");
scanf("%d,%d,%d",&a,&b,&c);
if(a+b>c&&a-b<c)
{p=(a+b+c)/2;
printf("\n能构成三角形,面积是%d",p);}
else printf("不能构成三角形");
return 0;
}
求根
#include<stdio.h>
#include<math.h>
int main()
{
float a,b,c,q,p;
printf("请输入三个数计算实根:");
scanf("%d,%d,%d",&a,&b,&c);
q=sqrt((b*b-4*a*c)/2*a);
p=-b/(2*a);
printf("实根1为:%f 实根2为:%f",(p+q),(p-q));
return 0;
}
number of significant digit
#include<stdio.h>
int main()
{
float a;
a=10/3.0;
printf("%f",a);
}
第三章习题
第四章
Root improvement
#include<stdio.h>
#include<math.h>
int main()
{
float a,b,c,q,p,i;
printf("请输入三个数计算实根:");
scanf("%d,%d,%d",&a,&b,&c);
i=b*b-4*a*c;
if(i<0)
printf("haven't real rool\n");
else
{q=sqrt(i/2*a);
p=-b/(2*a);
printf("real rool 1为:%f ,real rool 2为:%f\n",(p+q),(p-q));}
return 0;
}
sort from small to large
two number
#include<stdio.h>
int main()
{
int a,b,c;
printf("place enter two numbers\n ");
scanf("%d,%d",&a,&b);
if(b<a)
{c=b;b=a;a=c;}
printf("after sorting %d,%d\n",a,b);
return 0;
}
three number
#include<stdio.h>
int main()
{
int a,b,c,i;
printf("place enter three numbers\n ");
scanf("%d,%d,%d",&a,&b,&c);
if(b<a)
{i=a;a=b;b=i;}
if(c<a)
{i=a;a=c;c=i;}
if(c<b)
{i=b;b=c;c=i;}
printf("after sorting %d,%d,%d\n",a,b,c);
return 0;
}
Alphabetic case-to-case conversion
# include "stdio.h"
int main()
{
char a;
printf("请输入一个字母:");
scanf("%c",&a);
if('A'<=a&&a<='Z')
a=a+32;
printf("\n相应的小写字母为%c\n",a);
return 0;
}
jump function
#include<stdio.h>
int main()
{
int x,y;
printf("input independent variable");
scanf("%d",&x);
if(x<0)
y=-1;
else if(x=0)
y=0;
else
y=1;
printf("the dependent variablr is %d\n",y);
return 0;
}
第四章习题
第五章
和
#include<stdio.h>
int main()
{
int i,p;
p=0;
for(i=1;i<=100;i++)
p+=i;
printf("Additive results is %d",p);
return 0;
}
求 Sn=a+aa+aaa+…+aa…a之值,其中 a是一个数字。例如 2+ 22 +222+2222(此时n=4),n由键盘输入。
#include <stdio.h>
int main()
{ int a,n,count=1,Sn=0,Tn=0;
printf("请输入 a 和 n 的值:\n");
scanf("%d,%d",&a,&n);
while (count<=n)
{ Tn=a+Tn;
Sn=Tn+Sn ;
a=a*10;
count++;
}
printf("a+aa+aaa+...=%d\n",Sn);
return 0;
}
编写一个函数,判断一个数是不是水仙花数。在主函数中输入一个整数,输出是否是水仙花数的信息。(所谓水仙花所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。
#include<stdio.h>
int main()
{void num(int n);
int n;
printf("请输入一个三位数数用于求它是否为水仙花数\n");
scanf("%d",&n);
num(n);
return 0;
}
void num(int n)
{int a,b,c;
a=n/100;
b=n/10%10;
c=n%10;
if(a*a*a+b*b*b+c*c*c==n)
printf("it is ");
else
printf("it is not");
}
打印图案
#include <stdio.h>
int main()
{
inti,j,k;
for (i=0;i<=4;i++)
{
for(k=1;k<=4-i;k++)
printf(" ");
for(j=1;j<=2*i+1;j++)
printf("*");
printf("\n");
}
for (i=3;i>=0;i--)
{
for(k=1;k<=4-i;k++)
printf(" ");
for(j=1;j<=2*i+1;j++)
printf("*");
printf("\n");
}
阶乘的和
#include<stdio.h>
int main()
{int i,g,p,n=1,m=0;
printf("please enter a number\n");
scanf("%d",&p);
for(i=1;i<=p;i++)
{for(g=1;g<=i;g++)
n*=g ;
m+=n;}
printf("it is %d",m);
return 0;
}
求根
#include<stdio.h>
int main()
{
float a,b,c,q,p;
printf("请输入三个数计算实根:");
scanf("%d,%d,%d",&a,&b,&c);
if(a==0)
printf("该方程不是一元二次方程");
else if(a!=0)
{
q=(b*b-4*a*c)/2*a;
p=-(b/2*a);
if(q>0)
{
printf("此方程有两个根:");
printf("实根1为:%f 实根2为:%f",(p+q),(p-q));
}
else if(q==0)
printf("此方程只有一个根:%f",(p+q));
else
printf("此方程无根");
}
return 0;
}
完数
#include <stdio.h>
void main()
{
int sum,j,i;
for (i=2;i<1000; i++)
{ sum=0;
for (j=1;j<i;j++)
if(i%j==0)
sum=sum + j;
if(sum==i)
printf("%d是完数\n", sum);
}
}
第六章数组
数组赋值
#include<stdio.h>
int main()
{int i,a[10];
for(i=0;i<=9;i++)
a[i]=i;
for(i=9;i>=0;i--)
printf("%d",a[i]);
printf("\n");
return 0;
}
斐波那契数列
#include <stdio.h>
void main()
{
int i;
int f[20]={1,1};
for(i=2;i<20;i++)
f[i]=f[i-1]+f[i-2];
for(i=0;i<20;i++)
{ if(i%5==0)printf("\n");
printf("%12d",f[i]);
}
printf("\n");
}
排序
#include <stdio.h>
void main()
{
int a[10];
int i,j,t;
printf("input 10 numbers\n");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
printf("\n");
for(j=0;j<9;j++)
for(i=0;i<9-j;i++)
if(a[i]>a[i+1])
{
t=a[i];a[i]=a[i+1];a[i+1]=t;
}
printf("it is\n");
for(i=0;i<10;i++)
printf("%5d",a[i]);
printf("\n");
}
转置矩阵
#include<stdio.h>
int main()
{int a[3][3],i,j;
printf("矩阵为\n");
for(i=0;i<3;i++)
{for(j=0;j<3;j++)
scanf("%d",&a[i][j]);}
for(i=0;i<3;i++)
{for(j=0;j<3;j++)
printf("%5d",a[j][i]);
printf("\n");}
return 0;
}
求100以内素数
#include<stdio.h>
int main()
{ int s(int a);
int a,n=0;
//printf("请输入一个101到200之间得数");
//scanf("%d",&a);
for(a=0;a<=100;a++)
{ n=s(a);
if(n==0)
printf("%d is\n",a);
//else printf("%d is not\n",a);
}
return 0;
}
int s(int a)
{ int i,n=0;
for(i=2;i<a;i++)
{ if(a%i==0)
n++;
else
;
}
return(n);
}
第七章
函数输出
#include <stdio.h>
int main()
{ void a();
void b();
a();
b();
a();
return 0;
}
void a()
{printf("**********\n");
}
void b()
{printf("HOW DO YOU DO!\n");}
MAX函数
#include <stdio.h>
int main()
{int max(int x,int y);
int a,b,c;
printf("please enter two number\n");
scanf("%d,%d",&a,&b);
c=max(a,b);
printf("the max is %d",c);
return 0;
}
int max(int x,int y)
{int z;
z=x;
if(y>z)
z=y;
return (z);}
和函数
#include <stdio.h>
int main()
{int sm(int x,int y);
int a,b,c;
printf("please enter two number\n");scanf("%d,%d",&a,&b);
c=sm(a,b);
printf("the sum is %d",c);
return 0;
}
int sm(int x,int y)
{int z;
z=x+y;
return (z);}