当前位置:文档之家› c语言实验常见题目

c语言实验常见题目

c语言实验常见题目
c语言实验常见题目

C语言实验题答案

(仅供参考)

01.*****求圆柱体的体积、表面积、周长、底面积。注意符号常量的使用。#include

#define PI 3.14

void main()

{

float r,h;

double V,S,s,c;

printf("请输入圆柱体的半径r和高h:");

scanf("%f%f",&r,&h);

V=PI*r*r*h;

S=2*PI*r*h;

s=PI*r*r;

c=2*PI*r;

printf("%f\t%f\t%f\t%f\n",V,S,s,c);

}

02. *****输入并运行下面的程序,注意变量的定义与赋值。

#include

void main()

{

int a=3,b=5;

float x,y;

x=1.5;

y=1.5;

printf("%d\t%d\n",a,b);

printf("%f\t%f\n",x,y);

}

03. *****从键盘输入两个整数x,y.求x+y; x-y x*y; x/y; x%y.

#include

void main()

{

int x,y;

printf("请输入两个整数x,y:");

scanf("%d %d",&x,&y);

printf("%d\t%d\t%d\t%d\n",x+y,x-y,x*y,x/y,x%y);

}

04. *****.鸡和兔的头数h,鸡和兔的脚的个数f.求多少鸡和兔。

#include

void main()

标注:因题目繁多,可能不全,如有遗漏或错误,请告诉我,我会告

{

int a,b,h,f;

printf("请输入鸡和兔的头数为h头和鸡和兔的脚的个数为f个:");

scanf("%d%d",&h,&f);

a=(4*h-f)/2;

b=(f-2*h)/2;

printf("鸡的只数a=%d\n,兔的只数b=%d\n",a,b);

}

05. *****A以15m/s的速度行驶十分钟后,B以20m/s的速度追赶,问多长时间能追上。

#include

void main()

{

float u,v,t,x;

u=20,v=15,t=600;

x=v*t/(u-v);

printf("%f\n",x);

06.*****编写程序,输入三角形的边长,求三角形面积。

#include

#include

void main()

{

float a,b,c,area,s;

printf("请输入有效的三边长为a,b,c:\n");

scanf("%f%f%f",&a,&b,&c);

s=(a+b+c)/2;

area=sqrt(s*(s-a)*(s-b)*(s-c));

printf("%f\n",area);

}

07. *****编写程序,分别求三个实数的整数部分与小数部分之和。

#include

void main()

{

float a,b,c;

int x,y, xs;

double ls;

printf("请输入三个实数a,b,c:");

scanf("%f%f%f",&a,&b,&c);

x=(int)a;

y=(int)b;

xs=(int)a+(int)b+(int)c;

标注:因题目繁多,可能不全,如有遗漏或错误,请告诉我,我会告

ls=(a-(int)a)+(b-(int)b)+(c-(int)c);

printf("%d\t%d\n",x,y);

printf("%d\t%f\n",xs,ls);

}

08. *****从键盘输入一个四位的整数,求该四位数的千位数,百位数,十位数,个位数。

#include

void main()

{

int x,qian,bai,shi,ge;

printf("请输入一个四位的整数x:");

scanf("%d",&x);

qian=x/1000;

bai=x%1000/100;

shi=x%100/10;

ge=x%10;

printf("%d\t%d\t%d\t%d\n",qian,bai,shi,ge);

}

09. *****输入一个字符,如果为大写字母或在0到9之间则字符不变输出,其他字符,用*代替输出。

#include

void main()

{

char a,p;

scanf("%c",&a);

p=('A'<=a&&a<='Z'||'0'<=a&&a<='9')?a:'*';

printf("%c\n",p);

}

10. .*****从键盘上输入一个四位整数x,分别获取四位数的千位,百位,十位,个位,组成新的一个四位整数y,它是由原四位数的百位,个位,千位,十位,顺序组成,在计算差值(y-x);

在组成两个三位数,m是由个位,百位,千位顺序组成,n是由千位,个位,百位组成。

#include

void main()

{

int ge,shi,bai,qian,x,y,cha,m,n;

printf("请输入一个四位整数x:");

scanf("%d",&x);

ge=x%10;

shi=x%100/10;

bai=x%1000/100;

标注:因题目繁多,可能不全,如有遗漏或错误,请告诉我,我会告

qian=x/1000;

y=bai*1000+ge*100+qian*10+shi;

printf("%d\n%d\n%d\n%d\n",ge,shi,bai,qian);

m=ge*100+bai*10+qian;

n=qian*100+ge*10+bai;

cha=y-x;

printf("%d\t%d\t%d\t%d\n",y,cha,m,n);

}

11. *****用符号常量编程求解圆的周长和面积,球的体积和表面积,圆锥的体积,圆柱的体积。输出时要有中文文字说明,且小数点后保留两位有效数字。#include

#define PI 3.14

void main()

{

float r,h;

double c,s,V1,S,V2,V3;

printf("请输入半径r和高h:");

scanf("%f%f",&r,&h);

c=2*PI*r;

s=PI*r*r;

V1=4.0/3*PI*r*r*r;

S=4*PI*r*r;

V2=1.0/3*PI*r*r*r;

V3=PI*r*r*h;

printf("圆的周长c=%0.2f\n圆的面积s=%0.2f\n球的体积V1=%0.2f\n球的表面积S=%0.2f\n圆锥的体积V2=%0.2f\n圆柱的体积V3=%0.2f\n",c,s,V1,S,V2,V3);

}

12. *****将两个两位a,b正整数,形成一个四位数,a的十位做四位数的千位,a的个位做四位数的十位,b的个位做四位数的百位。

#include

void main()

{

int x,y,a,b,c,d,p;

printf("请输入两个两位正整数想x,y:\n");

scanf("%d%d",&x,&y);

a=x/10;

b=x%10;

c=y/10;

d=y%10;

p=a*1000+d*100+b*10+c;

printf("%d\n",p);

标注:因题目繁多,可能不全,如有遗漏或错误,请告诉我,我会告

}

13. *****从键盘上输入一个七个字母的单词,字母逆着顺序输出。

#include

void main()

{

char c1,c2,c3,c4,c5,c6,c7;

c1='s';c2='t';c3='u';c4='d';

c5='e';c6='n';c7='t';

putchar(c7);putchar(c6);putchar(c5);putchar(c4);

putchar(c3);putchar(c2);putchar(c1);putchar('\n');

}

14. *****从键盘输入x,求其绝对值。

#include

void main()

{

float x;

printf("请输入一个数x:\n");

scanf("%f",&x);

if(x>=0)

printf("%f\n",x);

if(x<0)

printf("%f\n",-x);

}

15. *****输入字符。如果为a,输出(about).如果为r,输出(retry),如果为f,输出(fasil);

#include

void main()

{

char x;

printf("请输入一个字符x:\n");

scanf("%c",&x);

if(x=='a')

printf("about\n");

if (x=='r')

printf("retry\n");

if (x=='f')

printf("fasil\n");

}

16. *****输入两个实数a,b,u=(r+s)*(r+s) { a

a>b r=b*b-a*a s=a/b+4 }

#include

标注:因题目繁多,可能不全,如有遗漏或错误,请告诉我,我会告

void main()

{

float a,b,u,r,s;

printf("请输入两个实数a,b:\n");

scanf("%f%f",&a,&b);

if(a

{r=a*a-b*b;

s=a/b;}

else

{r=b*b-a*a;

s=a/b+4;}

u=(r+s)*(r+s);

printf("%f\n",u);

}

17. *****求1+1/3+1/5+……+1/n+1的和。

#include

void main()

{

int i,n;

float t=0,s=0;

printf("请输入n的值:\n");

scanf("%d",&n);

for(i=1;i<=n;i++)

{ t=i;

s=s+1/(2*t-1); }

printf("s=%f\n",s);

}

18. *****从键盘上输入12个数按每行3个输出并输出平均值、最大值、最小值

#include

void main()

{int i,j,max,min,a[4][3];

float pin,sum=0;

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

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

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

max=a[0][0];

min=a[0][0];

for(i=1;i<4;i++)

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

{if(a[i][j]>max)

标注:因题目繁多,可能不全,如有遗漏或错误,请告诉我,我会告

max=a[i][j];

if(a[i][j]

min=a[i][j];}

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

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

sum+=a[i][j];

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

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

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

printf("\n");}

pin=sum/12;

printf("最大值是:%d\n",max);

printf("最小值是:%d\n",min);

printf("平均值是:%f\n",pin);

}

19. *****从键盘上输入n个整数,试编程序,使数组从大到小输出

#include

void main()

{int i,j,m,a[10];

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

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

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

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

if(a[j+1]>a[j])

{m=a[j];a[j]=a[j+1];a[j+1]=m;}

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

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

}

20. *****统计全班某门功课的平均分及优良等级

#include

void main()

{int i,y=0,l=0,z=0,j=0,a[10];

float pin,sum=0;

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

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

}

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

sum+=a[i];

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

if(a[i]>=90)

y++;

else if(a[i]>=80)

标注:因题目繁多,可能不全,如有遗漏或错误,请告诉我,我会告

l++;

else if(a[i]>=70)

z++;

else if(a[i]>=60)

j++;

pin=sum/10;

printf("优秀人数是:%d\n",y);

printf("良好人数是:%d\n",l);

printf("中等人数是:%d\n",z);

printf("及格人数是:%d\n",j);

printf("平均成绩是:%f\n",pin);

}

21. ***** n*n转置矩阵

#include

#define n 3

void main()

{int a[n][n]={{1,2,3},{4,5,6},{7,8,9}},b[n][n];

int i,j;

printf("array a:\n");

for(i=0;i

{

for(j=0;j

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

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

printf("\n");}

printf("array b:\n");

for(i=0;i

{for(j=0;j

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

printf("\n");}

}

22. *****输出3*3矩阵的主、次对角线及上三角

#include

void main()

{int i,j,a[3][3]={1,2,3,4,5,6,7,8,9};

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

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

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

printf("\n");}

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

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

{if(i+j<=2)

标注:因题目繁多,可能不全,如有遗漏或错误,请告诉我,我会告

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

else printf(" ");} //五个空格//

printf("\n");}

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

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

{if(i==j)

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

else printf(" ");} //五个空格//

printf("\n");}

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

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

{if(i+j==2)

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

else printf(" ");} //五个空格//

printf("\n");}

}

23. *****菱形

#include

#define n 3

void main()

{int i,j;

for(i=1;i

{for(j=1;j

{if(j<=n-i)

printf(" ");

else printf("%2d",j+i-n);}

for(j=n;j>=1;j--)

{if(j<=n-i)

printf(" ");

else printf("%2d",j+i-n);}

printf("\n");}

for(i=n;i>=1;i--)

{for(j=1;j

{if(j<=n-i)

printf(" ");

else printf("%2d",j+i-n);}

for(j=n;j>=1;j--)

{if(j<=n-i)

printf(" ");

else printf("%2d",j+i-n);}

printf("\n");}

}

标注:因题目繁多,可能不全,如有遗漏或错误,请告诉我,我会告

24. *****用and替换the并统计the的个数

#include

#include

void main()

{int i=0,sum=0;

char a[81],c;

gets(a);

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

{if(i>3)

{if(a[i]==' '&&a[i-1]=='e'&&a[i-2]=='h'&&a[i-3]=='t'&&a[i-4]==' ')

{a[i-3]='a';a[i-2]='n';a[i-1]='d';sum++;}}

else

{if(a[i-1]=='e'&&a[i-2]=='h'&&a[i-3]=='t')

{a[i-3]='a';a[i-2]='n';a[i-1]='d';sum++;}}}

printf("%s\n",a);

printf("'the'的个数有%d个\n",sum);

}

25. *****用自定义函数求四个整数中的最大数。

程序如下:

#include

int max(int x,int y)

{

int z;

z=(x>y)?x:y;

return(z);

}

void main()

{

int a,b,c,d,m;

printf("请输入四个数:\n");

scanf("%d %d %d %d",&a,&b,&c,&d);

m=max(max(a,b),max(c,d));

printf("四个数中的最大数是:%d\n",m);

}

26. *****用swap函数实现两个数的交换,要求在主函数中输入,输出交换结

果。

程序如下:

#include

void swap(float x,float y)

{

float temp;

temp=x;x=y;y=temp;

标注:因题目繁多,可能不全,如有遗漏或错误,请告诉我,我会告

printf("交换后的结果:\nx=%f y=%f\n",x,y);

}

void main()

{

int a,b;

printf("请输入两个数:\n");

scanf("%d %d",&a,&b);

swap(a,b);

}

27. *****编写函数输入一个四位数,判断是否满足以下条件:是完全平方

数,1、3位数之和是10, 2、4位之积是12。

程序如下:

#include

#include

void siweishu(int x)

{

int a,b,c,d,m;

m=sqrt(x);

a=x/1000;

b=(x-a*1000)/100;

c=(x-a*1000-b*100)/10;

d=x-a*1000-b*100-c*10;

if(b+d==10&&a*c==12&&m*m==x)

printf("YES");

else

printf("NO");

}

void main()

{

int m;

printf("请输入一个四位数");

scanf("%d",&m);

siweishu(m);

}

28. *****从主函数输入一个数,判断是否是素数。

程序如下:

#include

void sushu(int x)

{

int i,flag=1;

for(i=2;i

标注:因题目繁多,可能不全,如有遗漏或错误,请告诉我,我会告

{ if(x%i==0)

{flag=0;break;}

}

if(flag)

printf("是素数!\n");

else

printf("不是素数!\n");

}

void main()

{

int a;

printf("请输入一个数:\n");

scanf("%d",&a);

sushu(a);

}

29.*****编写两个函数,求三个数的最大公约数、最小公倍数。

程序如下:

#include

int gongyue(int m,int n)

{

int r;

if(m

{r=m;m=n;n=r;}

r=m%n;

while(r!=0)

{m=n;n=r;r=m%n;}

return(n);

}

int gongbei(int m,int n)

{

int r,p;p=m*n;

if(m

{r=m;m=n;n=r;}

r=m%n;

while(r!=0)

{m=n;n=r;r=m%n;}

return(p/n);

}

void main()

{

int a,b,c,zdgy,zxgb;

printf("请输入三个数:\n");

标注:因题目繁多,可能不全,如有遗漏或错误,请告诉我,我会告

scanf("%d %d %d",&a,&b,&c);

zdgy=gongyue(a,gongyue(b,c));

zxgb=gongbei(a,gongbei(b,c));

printf("最大公约数为:%d\n",zdgy);

printf("最小公倍数为:%d\n",zxgb);

}

???30. *****编写5个函数分别用来求两个整数的加减乘除及余数。

制作一个菜单,列出这五种运算,每一种运算前面有数字序号,以

便让用户能够用输入数字的方法选择要进行的运算。

程序如下:

#include

void add()

{

int x,y,z;

scanf(“%d %d”,&x,&y);

z=x+y;

printf(“两个数的和是:%d”,z);

}

void sub()

{

int x,y,z;

scanf(“%d %d”,&x,&y);

z=x-y;

printf(“两个数的差是:%d”,z);

}

void mul()

{

int x,y,z;

scanf(“%d %d”,&x,&y);

z=x*y;

printf(“两个数的积是:%d”,z);

}

void div()

{

int x,y,z;

scanf(“%d %d”,&x,&y);

z=x/y;

printf(“两个数的商是:%d”,z);

}

void rem()

{

int x,y,z;

标注:因题目繁多,可能不全,如有遗漏或错误,请告诉我,我会告

scanf(“%d %d”,&x,&y);

z=x%y;

printf(“两个数的余数是:%d”,z);

}

void main()

{

char c;

while(1)

{

printf(“***********************\n”);

printf(“请选择一种运算\n”);

printf(“***********************\n”);

printf(“ 1.加法运算\n”);

printf(“ 2.减法运算\n”);

printf(“ 3.乘法运算\n”);

printf(“ 4.除法运算\n”);

printf(“ 5.求余运算\n”);

printf(“ 6.结束\n”);

do

{

printf(“请输入选择的序号1—6:”);

c=getchar();getchar();

}

while(c<’1’||c>’6’);

switch(c)

{

case’1’:add();break;

case’2’:sub();break;

case’3’:mul();break;

case’4’:div();break;

case’5’:rem();break;

case’6’:return;

}

}

}

31. ***** 输出1900——2000中闰年的年份。

程序如下:

#include

void main()

{ int i;

for(i=1900;i<=2000;i++)

if(i%4==0&&i%100!=0||i%400==0)

标注:因题目繁多,可能不全,如有遗漏或错误,请告诉我,我会告

printf("%d\t",i);

}

32. *****求两个正整数的最大公约数和最小公倍数。

程序如下:

#include

void main()

{

int m,n,p,q,r;

printf("请输入两个整数:\n");

scanf("%d %d",&m,&n);

p=m*n;

if(m

{r=m;m=n;n=r;}

r=m%n;

while(r!=0)

{m=n;n=r;r=m%n;}

q=p/n;

printf("最大公约数:%d\n",n);

printf("最小公倍数:%d\n",q);

}

33.***** 输出各位数字的立方和等于216的三位数。

程序如下:

#include

void main()

{

int a,b,c,s,i;

for(i=100;i<=999;i++)

{a=i/100;b=(i-a*100)/10;c=i-a*100-b*100;

s=a*a*a+b*b*b+c*c*c;

if(s==216)

printf("%d\n",i);}

}

34.***** 输入一行字符,统计英文字母、空格、数字各多少个。

程序如下:

#include

void main()

{

int m=0,n=0,p=0;

char c; c=getchar();

while(c!='\n')

{if(c==' ')

m++;

标注:因题目繁多,可能不全,如有遗漏或错误,请告诉我,我会告

else if('A'

n++;

else if('0'

p++;

c=getchar();}

printf("空格个数%d\n",m);

printf("英文字母%d\n",n);

printf("数字个数%d\n",p);

}

35.*****求200——300之间满足这样条件的数:各位数之和是12,各位数之积是42.

#include

void main()

{

int a,b,c,i;

for(i=200;i<=300;i++)

{a=i/100;

b=(i-a*100)/10;

c=i-a*100-b*10;

if((a+b+c==12)&&a*b*c==42)

printf("%d\n",i);

}

}

36. *****有1020个西瓜,每天卖前一天剩的一半多两个,问几天卖完。

#include

void main()

{

int i,n;

for(n=0,i=1020;i>0;n++)

i=i/2-2;

printf("卖了%d天\n",n);

}

37.***** 某次比赛,7个评委打分,去掉最低分和最高分,求平均分。

#include

void main()

{

float a,x,i,max,min,average,sum=0;

scanf("%f",&x);

a=max=min=x;

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

标注:因题目繁多,可能不全,如有遗漏或错误,请告诉我,我会告

{

scanf("%f",&x);

sum+=x;

if(max

if(min>x)min=x;

}

average=(sum+a-max-min)/5;

printf("平均分:%f\n",average);

}

38.***** 输入一串字符,将所有的数字替换成“*”。

#include

#include

void tihuan(char a[])

{

int i,len;

len=strlen(a);

for(i=0;i

{

if(a[i]>='0'&&a[i]<='9')

a[i]='*';

}

}

void main()

{

char s[80];

gets(s);

tihuan(s);

puts(s);

}

39.***** 编写递归函数求阶乘,并求阶乘和。

#include

long jc(int n)

{

if(n==0||n==1)

return 1;

else

return n*jc(n-1);

}

void main()

{ int n,i;long sum=0;

标注:因题目繁多,可能不全,如有遗漏或错误,请告诉我,我会告

scanf("%d",&n);

for(i=1;i<=n;i++)

sum+=jc(i);

printf("%ld\n",sum);

}

40. *****编一函数,将一个3*3的矩阵主对角线和次对角线元素互换。

#include

#define N 3

int a[N][N];

void main()

{ void convert (int a[][3]);

int i,j;

printf("请输入矩阵\n");

for(i=0;i

for(j=0;j

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

printf("原来矩阵\n");

for(i=0;i

{for(j=0;j

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

printf("\n");

}

convert(a);

printf("主次对角线互换\n");

for(i=0;i

{for(j=0;j

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

printf("\n");

}

}

void convert(int a[][3])

{int i,j,t,m;

{t=a[0][0];

a[0][0]=a[0][2];

a[0][2]=t;}

{m=a[2][0];

a[2][0]=a[2][2];

a[2][2]=m;}

}

41. *****编一函数,求某班某门课的平均成绩,最高分,最低分,统计超过平均值的人数,(使用全局变量)。

#include

标注:因题目繁多,可能不全,如有遗漏或错误,请告诉我,我会告

int max,min,y=0,N;

float ping;

void main()

{printf("请输入班级人数:");

scanf("%d",&N);

void fun();

fun();

printf("平均分是:%f\n",ping);

printf("最高分是:%d\n",max);

printf("最低分是:%d",min);

printf("超过平均分的有:%d\n",y);

}

void fun()

{int i,a[80];

float sum=0;

for(i=0;i

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

sum+=a[i];}

ping=sum/N;

max=a[0],min=a[0];

for(i=0;i

{if(a[i]

min=a[i];

if(a[i]>max)

max=a[i];

if(a[i]>ping)

y++;}

}

42.*****编写几个函数,

1)输入5个学生的姓名,学号,成绩。

2)按学生的成绩高低顺序排序,姓名,学号也要调整。

3)要求输入一个学生的学号,给出该学生的成绩以及等级。

#include

#include

char xm[5][10],xh[5][10],cj[5][10];

int i,j;

void main()

{void px();

void cx();

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

{gets(xm[i]);

gets(xh[i]);

标注:因题目繁多,可能不全,如有遗漏或错误,请告诉我,我会告

gets(cj[i]);}

px();

cx();

}

void px()

{char a[10],b[10],c[10];

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

{for(j=i+1;j<5;j++)

{if(strcmp(cj[j],cj[i])>0)

{strcpy(a,xm[i]);

strcpy(xm[i],xm[j]);

strcpy(xm[j],a);

strcpy(b,xh[i]);

strcpy(xh[i],xh[j]);

strcpy(xh[j],b);

strcpy(c,cj[i]);

strcpy(cj[i],cj[j]);

strcpy(cj[j],c);}}}

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

printf("%s %s %s\n",xm[i],xh[i],cj[i]);

}

void cx()

{

char x[10],a[2]={'9','0'},b[2]={'8','0'},c[2]={'7','0'},d[2]={'6','0'};

printf("请输入学号:");

gets(x);

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

{if(strcmp(x,xh[i])==0)

{printf("%s\n",xm[i]);

if(strcmp(cj[i],a)>=0)

printf("成绩等级是:优秀\n");

else if(strcmp(cj[i],b)>=0)

printf("成绩等级是:良好\n");

else if(strcmp(cj[i],c)>=0)

printf("成绩等级是:中等\n");

else if(strcmp(cj[i],d)>=0)

printf("成绩等级是:及格\n");

else

printf("成绩等级是:不及格\n");}}

}

43.*****计算阶层的和。S=1!—2!+3!。。。。。n!.

#include

标注:因题目繁多,可能不全,如有遗漏或错误,请告诉我,我会告

哈工大C语言实验题

Q308.(10分)第5章实验2:体型判断。 医务工作者经广泛的调查和统计分析,根据身高与体重因素给出了以下按“体指数”进行体型判断的方法。体指数计算公式是: t = w /(h*h) 其中:t是体指数;w是体重,其单位为千克;h是身高,其单位为米。根据给定的体指数t计算公式,可判断你的体重属于何种类型: 当t<18 时,为低体重; 当18≤t<25 时,为正常体重; 当25≤t<27 时,为超重体重; 当t≥27 时,为肥胖。 ****输入提示信息格式:"Please enter h,w:\n" ****输入数据格式要求:"%f,%f"(先读入身高,再读入体重,身高以米读入,体重以千克读入) ****输出数据格式要求: 当t<18 时,输出:"Lower weight!\n" 当18≤t<25 时,输出:"Standard weight!\n"

当25≤t<27 时,输出:"Higher weight!\n" 当t≥27 时,输出:"Too fat!\n" #include #include main() { float t,w,h; printf("Please enter h,w:\n"); scanf("%f,%f",&h,&w); t = w/(h*h); if(t<18) printf("Lower weight!\n"); else if(t>=18&&t<25) printf("Standard weight!\n"); else if(t>=25&&t<27) printf("Higher weight!\n");

c语言实验答案

c语言实验答案

//1.1编写一程序,在屏幕上输出如下内容:// X | X | X //---+---+--- // | | //---+---+--- // 0 | 0 | 0 #include void main() { printf(" X | X | X\n"); //注意转义字符\n的用法 printf("---+---+---\n "); printf(" | |\n"); printf("---+---+---\n "); printf(" 0 | 0 | 0\n"); } //1.2输出"Hello world!"语句 #include void main() { printf("Hello world!\n"); } //2.1编写一程序,接受用户输入的两个整数,并计算它们的和、差、积、商,程序运行结果应如下所示。 //注意,尖括号部分表示用户输入数据或要被替换的输出内容,尖括号本身并不需要输入或输出。 //多使用几组整数尝试一下,你发现了什么?//The program gets two integers,and

computes their sum,difference,produc t and quotient. //The first number:<第一个整数在此输入> //The second number:<第二个整数在此输入> //Results as follows: //<第一个整数>+<第二个整数>=<和> //<第一个整数>-<第二个整数>=<差> //<第一个整数>*<第二个整数>=<积> //<第一个整数>/<第二个整数>=<商> #include void main() { int a,b; printf("The program gets two integers,and computes their sum,difference,produc t and quotient.\n"); printf("The first number:"); scanf("%d",&a); printf("The second number"); scanf("%d",&b); printf("Results as follows:\n"); printf("%d+%d=% d\n",a,b,a+b); printf("%d-%d=% d\n",a,b,a-b); printf("%d*%d=% d\n",a,b,a*b); printf("%d+%d=% f\n",a,b,1.0*a/b); //做除法时要注意,除得的

C语言实验报告参考答案

《C语言程序设计》 实 验 手 册

《C语言程序设计》实验课程简介 课程名称:C语言程序设计实验 课程性质:专业必修课 课程属性:专业必修课 学时学分:学时32 学分1 开课实验室:软件实验室 面向专业:网络工程、软件工程、计算机科学与技术 一、课程的任务和基本要求 C语言程序设计实验是面向计算机相关专业学生开设的《C语言程序设计》实验课,是配合《C语言程序设计》课程而开设的实验性教育环节。本课程的主要任务是让学生充分掌握C 语言程序设计的基本概念、各种数据类型的使用技巧、模块化程序设计的方法等。C语言程序设计实验对课程中所涉及的知识进行验证,同时也是学生很好地学习课程的辅助手段。通过C语言上机实验的教学活动,使学生真正全面掌握C语言的基础知识,培养和提高学生的程序开发能力。 二、实验项目 【实验一】最简单的C程序---顺序程序设计 【实验二】逻辑运算和判断选取控制 【实验三】循环结构程序设计(一) 【实验四】循环结构程序设计(二) 【实验五】函数 【实验六】数组(一) 【实验七】数组(二) 【实验八】指针 【实验九】结构体、共用体和文件 【实验十】C程序综合性实验 三、有关说明 1、与其它课程和教学环节的联系: 先修课程:计算机文化 后续课程:面向对象程序设计、Java程序设计、数据结构、软件工程 2、教材和主要参考书目: (1)教材: 《C程序设计习题解答与上机指导》,谭浩强吴伟民著,北京:清华大学出版社,2003年。(2)主要参考书目: 《C语言程序设计》谭浩强主编,清华大学出版社,2003年。

三、实验内容 实验一最简单的C程序---顺序程序设计 (验证性实验 2学时) (一)、实验目的 1.熟悉win-tc程序运行环境 2.掌握运行一个C程序的步骤,理解并学会C程序的编辑、编译、链接方法 3.掌握C语言中使用最多的一种语句——赋值语句 4.掌握数据的输入输出方法,能正确使用各种格式控制符 (二)、实验内容 1.写出下列程序的运行结果 (1)#include void main() { printf(“*****************\n”); printf(“This is a c program. \n”); printf(“****************\n”); } 运行结果及分析:运行结果为: Printf函数语句表示输出引号内的字符串,最后的\n表示换行, 将程序中的\n去掉后,运行结果及分析:运行结果为: 去掉\n后不换行连续显示 (2)#include void main() { int a=100,b=20,sum,sb; sum=a+b; sb=a/b; printf("sum=%d,sb=%d",sum,sb); } 运行结果及分析: sum=100+20=120;sb=100/20=5. (3)#include void main( )

C语言实验报告参考答案原

C语言实验报告参考答案 实验一熟悉C语言程序开发环境及数据描述 四、程序清单 1.编写程序实现在屏幕上显示以下结果: The dress is long The shoes are big The trousers are black 答案: #include<> main() { printf("The dress is long\n"); printf("The shoes are big\n"); printf("The trousers are black\n"); } 2.编写程序: (1) a=150,b=20,c=45,编写求a/b、a/c(商)和a%b、a%c(余数)的程序。 (2)a=160,b=46,c=18,d=170, 编写求(a+b)/(b-c)*(c-d)的程序。 答案: (1) #include<> main() {

int a,b,c,x,y; a=150; b=20; c=45; x=a/b; y=a/c; printf("a/b的商=%d\n",x); printf("a/c的商=%d\n",y); x=a%b; y=a%c; printf("a/b的余数=%d\n",x); printf("a/c的余数=%d\n",y); } (2) #include<> main() { int a,b,c,d; float x; a=160; b=46; c=18;

d=170; x=(a+b)/(b-c)*(c-d); printf("(a+b)/(b-c)*(c-d)=%f\n",x); } 3. 设变量a的值为0,b的值为-10,编写程序:当a>b时,将b赋给c;当a<=b 时,将0赋给c。(提示:用条件运算符) 答案: #include<> main() { int a,b,c; a=0; b=-10; c= (a>b) b:a; printf("c = %d\n",c); } 五、调试和测试结果 1.编译、连接无错,运行后屏幕上显示以下结果: The dress is long The shoes are big The trousers are black 2、(1) 编译、连接无错,运行后屏幕上显示以下结果: a/b的商=7

c语言实验题目

实验3 顺序结构编程 (2) 实验4 if分支结构编程 (3) 实验5 if分支结构和switch分支结构编程 (5) 实验6 分支结构嵌套和for循环编程练习 (9) 实验7和while和do-while练习 (12) 实验8 for循环嵌套练习 (15) 实验9 函数设计编程练习 (18) 实验10函数设计编程练习 (20) 实验11 数组编程练习 (23)

实验3 顺序结构编程 实验题目1 输入两个整型数x,y,求x,y之和、差、积、x/y的商和余数 提示: (1)定义整形变量变量int x,y; (2)和、差、积、商和求余数的运算符分别是+、-、*、/、% (3)输入两个整型数可以调用scanf()函数scanf("%d %d", &x,&y); 实验题目2 按下列要求编写程序,对变量a,b,c进行unsigned int型说明,将65赋给a,66赋给b,67赋给c,对变量a,b,c用%c格式输出显示 提示: (1)定义变量unsigned int a ,b,c; (2)字符型数据输出的格式控制符是%c (3)C语言中的赋值符号是=“65赋给a”表示为a = 65; 实验题目3 输入三角形的三条边的边长,求三角形的面积 从键盘输入三个整数,判断能否构成三角形的三边,如果能就计算输出三角形面积,按照下图给出的公式计算三角形的面积: s=(a+b+c)/2 a,b,c代表三角形的三条边 提示1、开根号的数学库函数是sqrt,例如y=sqrt(x),表示求变量x开根号,并把结果赋值给变量y。 2、调用数学库函数必须用如下命令#include 要求:(1)存储三角形三边的变量用double型 (2)打印三角形面积时小数保留两位%.2lf 实验题目4 已知半径r=3.4cm,编程求圆的周长和面积: 提示: (1)定义浮点型变量使用关键字float; (2)浮点型数据输出的格式控制符是%f (3)C语言中没有∏这个符号,编写程序时直接使用3.14159。 (4)C语言中没有求次方的运算符,半径的平方需用乘号*。

c语言实验习题及答案详解

1.数据类型 a.输入一个小数点后有多位数字的小数,实现将其保留三位小数,并输出;, #include<> main() {double b,d; printf("请输入一个小数:"); scanf("%lf",&b); printf("输出原来的数:%f\n",b); b*=1000; b+=; b=(int)b; d=b/1000; printf("输出现在的数:%.3lf\n0",d); } b.输入一个4位整数,求其得各位数字的平方和;(1234 1+4+9+16=30) #include<> main() {int n,sum=0,i,t; printf("请输入一个四位整数:\n"); scanf("%d",&n); for(i=0;i<4;i++) {t=n%10; n/=10; sum+=t*t; } printf("%d\n",sum);

} c.定义字符型变量ch,写出六种给ch赋值字符’A’的代码; #include<> main() {char ch; ch='A'; ch=65; ch=0x41; ch=0101; ch='\101'; ch='\x41'; } d.编写程序输出26组大小写字母;(AaBbCc……….XxYyZz) #include<> main() {int i; for(i=65;i<91;i++) {printf("%c",i); printf("%c",i+32); } printf("\n"); } e.定义浮点型变量f1、f2,为f1赋值10的-30次,为f2赋值10的30次 #include<> main() { double f1,f2; f1=10e-30;

C语言实验答案

一1 #include void main() { int iNum; float fNum=134.23; printf("a=%d\tf=%.2f\n",iNum,fNum); } 一2 #include void main() { int a,b,c,sum=0; scanf("a=%d,%d%d",&a,&b,&c); sum=a+b+c; printf("a=%d,b=%d,c=%d\n",a,b,c); printf("sum=%d\n",sum); } 一3

#include void main() { char a,b; scanf("%3c%4c",&a,&b); printf("c1=%c,c2=%c\n",a+1,b-1); } 一4 #include #include void main() { float a; printf("Enter a:"); scanf("%f",&a); printf("The original data is:%f\n\n",a); printf("h=%.2f\n",a); }

一5 #include void main() { int a,b,c,s,e; printf("Please input two numbers:\n"); scanf("%d%d",&a,&b); c=a+b; s=c*c; e=s+s; printf("%d,%d,%d\n",c,s,e); } 一6 #include void main() { float a,b; printf("input a:"); scanf("%f",&a); b=5*(a-32)/9; printf("%.0f(℉)=%.2f(℃)\n",a,b);

C语言程序设计实验-答案

-前言- /*非常感谢度娘以及各位网上C语言高手的支持,才能让敝人完成此文档的整理。 本文档集合了本人、度娘、众网友的力量,其中代码的正确率约为90%(不正确的有标注)。为回报度娘及众网友的帮助,本文档免费下载。 */ /*配“电子科技大学出版社(周信东主编)”的C语言程序设计实验*/ /*努力吧,骚年以及学妹们!*/ /*整理ed by 口玉刀一of GUET.*/ ===================== 实验一C语言程序初步 ===================== 1.---------------------------- 已知a=5,b=4,c=6,求出s并换行 #include"stdio.h" main() { int a,b,c,s; a=5;b=4;c=6; s=(a+b+c)/3; printf("a=%d,b=%d,c=%d\n,s=%d",a,b,c,s); } 2.------------------------------- 输入一个数字求他的平方 #include main() { int r,s; scanf("%d",&r); s=r*r; printf("s=%d\n",s); } 3.-------------------------------- (1) #include main() { printf(" *\n"); printf("***\n"); printf(" *\n"); } (2) #include

{ int v; int a,b,c; //a,b,c aer sides,v is volume of cube a=3;b=3;c=5; v=a*b*c; printf("v=%d\n",v); } ================================= 实验二数据类型、运算符和表达式 ================================= 1. (1)-------------------------------------------------- //总觉得打印结果怪怪的,DO YOU THINK SO? main() { char s1='3',s2='4',s3='5'; int c1=101,c2=102; printf("3%c\t4%c\t5%c\n",s1,s2,s3); //3%c为输出3和%c printf("s1=%d\ts2=%d\ts3=%d\n",s1,s2,s3);//注意哦,s1,s2,s3是char!而%d:输入输出为整形%ld 长整型%hd 短整型%hu无符号整形%u %lu%s:输入输出为字符串%c字符%f:输入输出为浮点型%lf双精度浮点型printf("c1=%d\t~%c\n",c1,c1); //换码符'\t',表示水平制表位(horizeontal tab),它的作用是将光标移到最接近8的倍数的位置 printf("c2=%d\t~%c\n",c2,c2); //注意c1,c2的类型 } (2) //运行结果为8.300000 %是求余数先运算x-y,把结果转换为int型的有利于四则运算 main() { float x=8.3,y=4.2,s; int a=7; s=x+a%5*(int)(x-y)%2/3; printf("s=%f",s); }

C语言课后实验设计题目及答案

C语言实验题目及答案 1、实验项目一 C程序的编辑、编译、连接和运行 题目:编写程序,要求屏幕上显示如下信息: *********************** This is a C program . *********************** 程序: #include void main() { printf(“***********************\n”); printf(“This is a C programn .\n”); printf(“***********************\n”); } 实验项目二数据类型、运算符、表达式 题目 (1)程序填空:输入1 个实数x,计算并输出其平方根(保留1 位小数)。 填空 1.double x,root; 2.root=sqrt(x); (2)输入一个大写英文字母,输出相应的小写字母。 填空 1.ch=ch+32; 1、#include "stdafx.h" #include "stdio.h" #include "math.h" int main(int argc, char* argv[]) { printf("This is a Cprogram\n"); return 0;

} 2、#include "stdafx.h" #include "stdio.h" #include "math.h" int main(int argc, char* argv[]) { double x; printf("x="); scanf("%lf",&x); printf("%lf\n",sqrt(x)); return 0; }

C语言实验报告参考答案完整版

C语言实验报告参考答 案 HEN system office room 【HEN16H-HENS2AHENS8Q8-HENH1688】

长沙理工大学2010C语言实验报告参考答案 实验一熟悉C语言程序开发环境及数据描述 四、程序清单 1.编写程序实现在屏幕上显示以下结果: The dress is long The shoes are big The trousers are black 答案: #include<> main() { printf("The dress is long\n"); printf("The shoes are big\n"); printf("The trousers are black\n"); } 2.改错题(将正确程序写在指定位置) 正确的程序为: #include <> main() { printf("商品名称价格\n"); printf("TCL电视机¥7600\n"); printf("美的空调¥2000\n"); printf("SunRose键盘¥\n"); } 2.编写程序: a=150,b=20,c=45,编写求a/b、a/c(商)和a%b、a%c(余数)的程序。 答案: #include<> main() { int a,b,c,x,y; a=150; b=20;

c=45; x=a/b; y=a/c; printf("a/b的商=%d\n",x); printf("a/c的商=%d\n",y); x=a%b; y=a%c; printf("a/b的余数=%d\n",x); printf("a/c的余数=%d\n",y); } 4. 设变量a的值为0,b的值为-10,编写程序:当a>b时,将b赋给c;当a<=b时,将a赋给c。(提示:用条件运算符) 答案: #include<> main() { int a,b,c; a=0; b=-10; c= (a>b) b:a; printf("c = %d\n",c); } 五、调试和测试结果 1.编译、连接无错,运行后屏幕上显示以下结果: The dress is long The shoes are big The trousers are black 3、编译、连接无错,运行后屏幕上显示以下结果: a/b的商=7 a/c的商=3 a/b的余数=10 a/c的余数=15 4. 编译、连接无错,运行后屏幕上显示以下结果: c =-10 实验二顺序结构程序设计 四、程序清单 1.键盘输入与屏幕输出练习 问题1 D 。

C语言-数组-实验题目及答案

实验六数组程序设计 【实验目的】 1、掌握使用一维数组编程方法 2、掌握使用二维数组进行程序设计 【实验内容】 一、上机验证程序,并分析结果 要求:读懂程序,写出分析结果;上机运行程序,得到运行结果,比较之。1、#include int main() { int a[ ]={1,2,3,4,5} , i, j, s=0 ; j = 1; for ( i = 4 ; i>=0 ; i--) { s = s+ a[i] * j ; j = j * 10 ; } printf(" s= %d \n" , s ); return 0; } 二、程序改错题 1.下面程序的功能,是从键盘输入一个数组(数组长度为10),查找数组中正数的个数。源代码如下,程序中存在错误,请将其改正。 #include int main()

{ int a(10);/*定义数组*/ int count,i;/* i循环变量 count 正数个数*/ for(i=0;i<=10;i++) {/*循环输入*/ scanf("%d",a[i]); } count=1; for(i=0;i<=10;i++) {/*查找正数*/ if(a(i)>0) count++; } printf("数组中正数有:%d个\n",count); return 0; } 三编写程序 1.编写程序要求输入30个学生的单科成绩,输出高于平均分的成绩。#include #define N 30 int main() { float score[N],sum=0,aver; int i; for(i=0;i<30;i++) { scanf("%f",&score[i]); sum=sum+score[i]; } aver=sum/30; printf("平均分为:%.2f\n",aver); for(i=0;iaver) printf("%.2f ",score[i]); printf("\n");

C语言实验参考答案

C语言实验参考答案 实验一 5、输入并运行自已编写的程序(教材第一章P14 三编程题)。 实验二 1、编写一个程序,从键盘接收3个实数(分别为10.0、20.0、5.0),输出这3个数的和s、乘积t和平均值a。 #include main() {float x,y,z,s,t,a; printf(“x,y,z=”); scanf(“%f,%f,%f”,&x,&y,&z); s=x+y+z; t=x*y*z; a=s/3; printf(“s=%f,t=%f,a=%f\n”,s,t,a); } 2、编程。要求用户输入两个整数a、b(分别为20、10),读取用户从键盘输入的值,然后: 1)用整数输出这两个数的和、差; 2)用长整型输出这两个数的积,用float输出商; 3)用整数输出这两个数的余数,用float输出平均值。 #include

main() {int a,b,he,cha,yu; long ji; float shang,aver; printf(“a,b=”); scanf(“%d,%d”,&a,&b); he=a+b; cha=a-b; ji=(long)a*b; shang=1.0*a/b; yu=a%b; aver=(a+b)/2.0; printf(“a+b=%d,a-b=%d,a*b=%ld\n”,he,cha,ji); printf(“a/b=%f,a%%b=%d,aver=%f\n”,shang,yu,aver); } 实验三 1、编写一个程序,从键盘接收一个一位的整型数,经转换,用字符函数putchar输出。例如,输入整数5,程序运行后输出字符5。 #include main() {int a; char c;

C语言实训题目

2011秋季 1.学生成绩管理系统 功能要求: (1)可以从文件导入或录入多名学生的多门课程的学习成绩;(2)完成按姓名查找学生记录,并显示; (3)排序功能: 按学生平均成绩进行排序; (4)插入功能: 按平均成绩高低插入一条学生记录; (5)要求使用结构体,录入结果存放到文件; 显示要求: 程序输出菜单,用户按照提示操作,最终得到操作结果。 2.个人通讯录 功能需求: (1)可以对多名人物的信息进行输入; (2)显示所有的记录信息,若无记录,则给出提示信息;(3)可以按姓名查询该记录的有关信息; (4)可以按姓名对任意一种记录信息进行删除; (5)可以任意修改记录信息 (6)通过文件储存所输入的记录; (7)可以通过一个文件读入已有的通信录记录;

显示要求: 程序输出菜单,用户按照提示操作,最终得到操作结果。 3.火车订票系统 功能要求: (1)列车原始信息从文件导入或从控制台录入,包括车次、票数等; (2)可以按车次进行列车信息查询; (3)客户对某一天订票,订票成功后,当日的票数需要被更改; (4)客户退票; (5)要求使用结构体; 显示要求: 程序输出菜单,用户按照提示操作,最终得到操作结果。 4、万年历系统 功能要求: (1)从2000年开始,用户输入年份与月份,将显示出该年该月份的日历,对应的星期。 (2)注意闰年情况 显示格式要求如下: (1)第一行显示月份(中英文都可以) (2)下一行显示星期,从周日到周六,中英文都可以 (3)下一行开始显示日期从1号开始,并按其是星期几实际情况与上面的星期数垂直对齐

(4)程序输出菜单,用户按照提示操作,最终得到计算结果。 5、积分的实现 功能要求: (1)使用复合梯形公式求解函数f=1+x 2、f=log(1+x)以及f=1/(1+x2)三个函数的定积分。 (2)积分上下限及步长由C语言函数参数传递。 (3)用户输入函数编号,上下限和步长,程序输入结果。 显示要求: 程序输出菜单,用户按照提示操作,最终得到计算结果。 6、矩阵的运算 功能要求: 使用三个C语言函数分别实现两个矩阵的加、减和相乘功能。结果存放在第三个矩阵中。 并编写程序验证三个函数功能。 每个函数的参数可选择 (1): 二位数组名,行数,列数 (2)指针变量名,行数,列数 返回值: 用户自定义的运算状态,正常或其他异常情况。 显示要求:

c语言上机实验完整答案

%c 字符形式输出, %d 整数形式输出, 实验一 自测练习1 程序代码 #include void main() { int x; scanf("%d",&x); //%d十进制整型,&指x在内 存中的地址。上面 scanf的作用是:按照 x在内存的地址将x 的值存进去, if (x%2 !=0) printf("%d is an odd\n",x); else printf("%d is an even\n",x); }

运行结果 自测练习2 程序代码 #include void main() { int i, sum; i=1 ; sum=0;

while (i<=100) { sum=sum+i; i++; } printf("sum=%d\n",sum); } 运行结果 自测练习3 程序代码 #include void main( ) { int i, n; long p;

p=1; printf("Enter n:"); scanf("%d",&n); for (i=1; i<=n; i++) p=p*i; printf(" p=%ld\n", p); } 运行结果 自测练习4 程序代码 #include"stdio.h" int max(int x,int y) {int z; if (x>y) z=x;else z=y; return(z); } void main() {int a,b,c;

scanf("%d,%d",&a,&b); c=max(a,b); printf("max=%d\n",c); } 运行结果 自测练习5 程序代码 #include"stdio.h" void main() {int x,y; for(x=0;x<=25;x++) for(y=0;y<=50;y++) if(4*x+y*2==100) printf("兔=%d,鸡=%\n",x,y); } 运行结果

C语言习题与实验

习题与上机实验总的目的和要求 目的: 实验作为教学的一个重要环节,其目的在于更深入地理解和掌握课程教学中的有关基本概念,应用基本技术解决实际问题,从而进一步提高分析问题和解决问题的能力。C 程序设计课程实践性很强,即要求独立编写程序,学会独立上机调试程序。 学会独立上机调试程序。也就是要善于发现程序中的错误,并且能很快地排除这些错误,使程序能正确运行。计算机技术是实践性很强的技术,要求从事这一领域的人不仅能了解和熟悉有关理论和方法,还要求自己动手实践。对程序设计来说,要求会编写程序并上机调试通过。因此调式程序本身是程序设计课程的一个重要的内容和基本要求,应给予充分的重视。调式程序的经验固然可以借鉴他人的现成经验,但更重要的是通过自己的直接实践来积累,而且有些经验是只能“会意”难以“言传”。因此,在实验时不但要达到通过程序完成每一次的实验任务,而且应当在已通过的程序基础上作进一步的修改、提高和完善。甚至于“自设障碍”,即把正确的程序改为有错的(如用scanf函数为输入变量输入数据时,漏写“&”符号,double变量使用格式符“%f”;使数组下标出界;使整数溢出等等),观察和分析所出现的情况。这样的学习才会有真正的收获。实验目的可归纳如下: 1.验证自己已建立起来的概念或所编写的程序是否正确; 2.加深对课堂所学内容的理解和语法规则的记忆; 3.理解和掌握运用计算机高级语言进行编程的思想方法; 4.掌握常用算法的设计与应用实现; 5.熟悉UNIX等程序开发环境,掌握C程序常用的调试手段; 6.学会上机调试程序的方法,不断积累调试经验,提高排错能力; 7.使自己具有独立的应用编程和熟练的程序调试能力。 要求: 1.做好每一次上机前的准备以提高上机效率: ①预先认真阅读相关实验内容,做到心中有明确的目的要求和任务,要有备而来; ②按照实验内容规定的习题题目,事先在实验预习报告上编写好源程序及运行程序 所需的典型数据,并经人工静态检查认为无误;手编程序应书写整齐,应在每个题目之间留出一定的空间,以备记录上机调试情况和运行结果等;对程序中自己有疑问的地方,应作出记号,以便上机时给以注意。 ③将想要上机验证的问题草拟提纲;制定一个简捷的程序调试计划。

c语言实验答案

n"); printf("The first number:"); scanf("%d",&a); printf("The second number"); scanf("%d",&b); printf("Results as follows:\n"); printf("%d+%d=%d\n",a,b,a+b); printf("%d-%d=%d\n",a,b,a-b); printf("%d*%d=%d\n",a,b,a*b); printf("%d+%d=%f\n",a,b,*a/b); .+1/n!的值。 #include<> void main() { int n,p=1,i; float sum=0; printf("please input n:"); scanf("%d",&n); for(i=1;i<=n;i++) { p=p*i; sum+=p; } printf("sum=%f\n",sum); } .14 p=j; switch(p) umber); for(j=0;j<3;j++) printf("%",stu[i].score[j]); printf(" ave=%.2f\n",average(stu[i]));umber); printf("score:"); for(j=0;j<3;j++) scanf("%f",&(stu[i].score[j])); } } void main() { struct student stu[3]; //定义结构体数组 input(stu); //数组名做参数,传递的是地址 output(stu); } //静态链表的建立,有三个学生,包括学号(sno char(8)),姓名(sname char(20)),分数(grade float[]), //定义结构体类型数组存学生信息,使用链表所有学生,实现链表的输入输出。 //静态的书上有原题目,我写成动态的了,用子函数的方式实现 #include <> #include<> #include <> struct stu //定义全局结构体 { char sno[8]; char sname[20]; float grade; struct stu *next; } ; //////////////////////////////////////////////////////// void main( ) { struct stu *creat(struct stu *); void print(struct stu*); struct stu *head; head=NULL; head=creat(head); print(head); } ///////////////////////////////////////////////////////// struct stu *creat(struct stu*head) //建立链表 { struct stu *p,*q; q=(struct stu*)malloc(sizeof(struct stu)); //分配空间 printf("please input sno:"); scanf("%s",q->sno); printf("please input sname:"); scanf("%s",q->sname);

C语言实验课题目

目录 实验1 输入输出 (2) 实验2 选择语句 (4) 实验3 循环语句 (5) 实验4 函数 (6) 实验5 指针 (8) 实验6 数组 (9) 实验7 结构体 (10)

实验1 输入输出 要求掌握: 1、VC++平台的使用; 2、C源程序的建立、保存、编译和运行; 3、变量的定义、赋值和运算; 4、printf函数的使用; 5、scanf函数的使用; 6、int、long、float、double、unsigned的含义; 7、关键字、预定义标识符和用户标识符的区别; 8、自加自减运算符的使用。 完成下列题目: 1. 键盘输入与屏幕输出练习 问题1 要使下面程序的输出语句在屏幕上显示1, 2, 34,则从键盘输入的数据格式应为以下备选答案中的。 #include main() { char a,b; int c; scanf("%c%c%d",&a,&b,&c); printf("%c,%c,%d\n",a,b,c); } A)1 2 34 B)1, 2, 34 C)’1’,’2’,34D)12 34 问题2 在与上面程序的键盘输入相同的情况下,要使上面程序的输出语句在屏幕上显示12 34,则应修改程序中的哪条语句?怎样修改? 问题 3 要使上面程序的键盘输入数据格式为1,2,34,输出语句在屏幕上显示的结果也为1,2,34,则应修改程序中的哪条语句?怎样修改? 问题4 要使上面程序的键盘输入数据格式为1,2,34,而输出语句在屏幕上显示的结果为'1', '2',34,则应修改程序中的哪条语句?怎样修改? [提示:利用转义字符输出字符单引号字符。]

c语言实验答案

//1.1编写一程序,在屏幕上输出如下内容:// X | X | X //---+---+--- // | | //---+---+--- // 0 | 0 | 0 #include void main() { printf(" X | X | X\n"); //注意转义字符\n的用法 printf("---+---+---\n"); printf(" | |\n"); printf("---+---+---\n"); printf(" 0 | 0 | 0\n"); } //1.2输出"Hello world!"语句 #include void main() { printf("Hello world!\n"); } //2.1编写一程序,接受用户输入的两个整数,并计算它们的和、差、积、商,程序运行结果应如下所示。 //注意,尖括号部分表示用户输入数据或要被替换的输出内容,尖括号本身并不需要输入或输出。 //多使用几组整数尝试一下,你发现了什么? //The program gets two integers,and computes their sum,difference,product and quotient. //The first number:<第一个整数在此输入> //The second number:<第二个整数在此输入> //Results as follows: //<第一个整数>+<第二个整数>=<和> //<第一个整数>-<第二个整数>=<差> //<第一个整数>*<第二个整数>=<积> //<第一个整数>/<第二个整数>=<商> #include void main() { int a,b; printf("The program gets two integers,and computes their sum,difference,product and quotient.\n"); printf("The first number:"); scanf("%d",&a); printf("The second number"); scanf("%d",&b); printf("Results as follows:\n"); printf("%d+%d=%d\n",a,b,a+b); printf("%d-%d=%d\n",a,b,a-b); printf("%d*%d=%d\n",a,b,a*b); printf("%d+%d=%f\n",a,b,1.0*a/b); //做除法时要注意,除得的结果是实数 } //2.2输入半径r的值,求出圆周长,圆面积 #include #define PI 3.14 void main() { int r; float zhouchang,mianji; printf("please input r:"); scanf("%d",&r); zhouchang=2*PI*r; mianji=2*PI*r*r; printf("zhouchang=%f\n",zhouchang ); printf("mianji=%f\n",mianji); } //3.1如何实现下述输出要求? //A.输出整数1234,输出共占8位,数据左对齐。 //B.输出整数1234,输出共占10位,数据右对齐。 //C.输出十六进制整数0xFFDE3C02,输出共占8位,数据左对齐。 //D.输出十六进制整数0xFFDE3C,输出共占8位,数据右对齐,前补0。

(最新版)C语言实验报告(答案)

《C程序设计》实验报告 学期: 教师姓名: 教研室:

实验1 熟悉C语言程序的运行环境,掌握数据描述 1.1 实验目的 1.了解在开发环境中如何编辑、编译、连接和运行一个C语言程序。 2.通过运行简单的C语言程序,初步了解C语言程序的结构特点。 3.掌握C语言数据类型的概念,学会使用C语言的相关运算符构成表达式。 1.2 实验预习 1.熟悉Visual C++的启动和退出及Visual C++中的编辑、编译、连接和运行命令。 2.了解下列命令及函数:include、main、printf、scanf。 3.熟悉Visual C++环境下每个菜单项的功能及相关命令对应的操作。 4.各种数据类型变量的定义形式及取值范围;熟悉下列标识符的含义。 int、short (int)、long (int)、unsigned (int)、float、double、char、void 5.各类运算符的优先级和结合规则。 6.常量与变量的区别和联系。 运行环境: 1.双击桌面Visual C++快捷方式进入Visual C++,或通过执行“开始——>程序——> Microsoft Visual Studio 6.0——> Microsoft Visual C++6.0”或执行文件"C:\Program Files\Microsoft Visual Studio\COMMON\MSDev98\Bin\MSDEV.EXE"。 2.单击“文件”菜单的“新建”命令。 3.在打开的“新建”对话框中选择“文件”标签。 4.选择C++ Source File,在目录输入栏选择文件保存位置,然后在文件输入栏中输入文件名,扩展名为.c (例如first.c) ,单击确定按钮。如图所示:

相关主题
文本预览