C语言学习知识实验一二.doc
-!实验一 最简单的C程序-顺序程序设计(验证性实验 2学时)(一)、实验目的1熟悉VC+6.0/C-Free等C语言程序编译软件运行环境2掌握运行一个C程序的步骤,理解并学会C程序的编辑、编译、链接方法3掌握C语言中使用最多的一种语句赋值语句4掌握数据的输入输出方法,能正确使用各种格式控制符(二)、实验内容1写出下列程序的运行结果(1)#include <stdio.h>void main()printf(“*n”);printf(“This is a c program. n”);printf(“*n”);运行结果及分析:将程序中的n去掉后,运行结果及分析:(2)#include <stdio.h>void main() int a=100,b=20,sum,sb;sum=a+b;sb=a/b; printf("sum=%d,sb=%d",sum,sb);运行结果及分析:(3)#include <stdio.h>void main( ) char c1,c2; c1=97;c2=98;printf("%c ,%cn",c1,c2);printf("%d,%dn",c1,c2);printf("%c %cn",c1+1,c2+2);运行结果及分析:2程序填空任意输入一个有五位数字的正整数x,分别输出每一数位上的数字(由高到低分别用b5,b4,b3,b2,b1表示),请将程序补充完整。#include <stdio.h>main() int b1,b2,b3,b4,b5; int x;Scanf( “ %ld ”,&x);b5= (x/10000)%10; ;b4=(x/1000)%10;b3= (x/100)%10; ;b2=(x/10)%10;b1x%10; ; printf(“the number is %d n”,x); printf(“its bit is:%d,%d,%d,%d,%dn”,b5,b4,b3,b2,b1); 程序分析:3程序改错(注意:题中的编号为行序号,并非程序本身)(1)计算任意一个半径为r的圆的面积和周长(结果保留两位小数)1)#include <stdio.h>2)main()3)float r; p=3.14,c,area;4) printf(“input r:”);5) scanf(“%f ”, r);6) c=2p*r;7) area=p*r*r8) printf(“c=%-7.2f,area=%-7.2f”,c,area);9)错误语句的行号: 3改正后的语句全行:float r,p=3.14,c,area;错误语句的行号: 5改正后的语句全行:scanf(“%f”,&r);错误语句的行号: 6改正后的语句全行:c=2*p*r错误语句的行号: 7改正后的语句全行:area=p*r*r,改错分析:(2)修改下面的源程序,并调试出运行结果,并以sum.c命名保存。#include <stdio.h>mian(); int a b sum;a=4,b=15;sum=a*b;prinf(“sum is %dn”,sum);运行结果及分析:t4.编写程序(1)编写程序,输入两个整数:1500和350,求出它们的商数和余数并进行输出。程序清单:#include <stdio.h>void main()int a;int b; int c,d;a=1500,b=350; c=a/b;d=a%b;printf("%dn",c);printf("%dn",d);d程序编写注意事项:(2)输入一个双精度类型的数,使该数保留小数点后两位,对第三位小数进行四舍五入处理后,输出此数,以便验证处理是否正确。程序清单:#include <stdio.h>void main()double x; printf("enter x:n");scanf("lf%",&x);printf("x1=%dn",x);x=x*100;x=x+0.5;x=(int)(x);x=x/100;printf("x2=%fn",x);程序编写注意事项:(3)编写程序,输入三个数a、b、c,然后交换它们中的数,把a中原来的值给b,把b中原来的值给c,把c中原来的值给a。 程序清单:#include <stdio.h>void main()int a=1;int b=2;int c=3; int temp;temp=a;a=c;c=b;b=temp;printf("%d,%d,%dn",a,b,c);l程序编写注意事项:(4)输入一个华氏温度,要求输出摄氏温度,公式为:C=5/9(F-32)(要求保留3位小数)。程序清单:#include <stdio.h>void main()float f,c;scanf("%f",&f);c=(f-32)*5/9;printf("%.3fn",c);程序编写注意事项:实验二 逻辑运算&顺序结构的程序设计(验证性实验 2学时)(一)、实验目的1.了解输入输出的方式;2.了解逻辑量在C语言中的表示方法3学会使用逻辑运算符和逻辑表达式3.掌握C的基本数据类型及其使用规则;4.重点熟悉C语言的基本语法单位;5.难点学习编写简单C程序。(二)、实验内容1写出下列程序的运行结果(1)#include <stdio.h>void main( ) int a,b,x=10,y=9;a=(-x = y+)? -x : +y;b= y;printf(“%d,%dn”,a,b);运行结果及分析:(2)#include <stdio.h>void main () int i=8,j=10,m,n;m=+i;n=j+; printf("%d,%d,%d,%d",i,j,m,n);运行结果及分析:再将本程序的第3行改为m=i+;n=+j;运行结果及分析:(3)先计算以下程序的结果,然后上机运行main()int x,y,z;x=y=z=1;x+=y+=z;printf("(1)%dn",x<y?y:x);printf("(2)%dn",x<y?x+:y+);printf("x=%d,y=%dn",x,y);printf("(3)%dn",z+=x<y?x+:y+);printf("x=%d,y=%d,z=%dn",x,y,z);x=5;y=z=6;printf("(4)%dn",(z>=y>=x)?1:0);printf("(5)%dn",(z>=y&&y>=x);程序运行结果分析:(4)分析以下程序,并输入软件调试。(掌握符号常量的用法)#define PI 3.14159 main() float r,s,l; r=5.0; s=PI*r*r; l=2*PI*r; printf(“s=%f,l=%fn”,s,l);程序清单:程序编写注意事项:(5).先计算以下程序的结果,然后上机运行int sum=10,cap=10;cap=sum+,cap+,+cap;printf("%dn",cap);程序清单:#include <stdio.h>void main()int sum=10,cap=10;cap=sum+,cap+,+cap;printf("%dn",cap);程序编写注意事项:2.改错以下程序多处有错。要按下面指定的形式输入数据和输出数据时,请对该程序做相应的修改。main( ) double a,b,c,s,v; printf(input a,b,c:n); scanf(“%d%d%d”,a,b,c); s=a*b; v=a*b*c; printf(“%d %d %d”,a,b,c);printf(“s=%fn,s”,”v=%dn,v”)#include <stdio.h>main( ) double a,b,c,s,v; printf("input a,b,c:n"); scanf("%d%d%d",&a,&b,&c); s=a*b; v=a*b*c; printf("%d %d %d",a,b,c); printf("s=%fn,s","v=%dn,v");程序分析:3编写程序(1)求下面算术表达式的值。1)x+a%3*(int)(x+y)%2/4设x=2.5,a=7,y=4.72)(float)(a+b)/2+(int)x%(int)y设a=2,b=3,x=3.5,y=2.5先自己分析,再试着用程序求解,看得到的结果是否一致。程序清单:ojrt1#include <stdio.h>main( )float x=2.5; int a=7; float y=4.7; double z; z=x+a%3*(int)(x+y)%2/4;printf("z=%fn",z);2 void main() #include<stdio.h>int a=2,b=3;float x=3.5,y=2.5; float m=(float)(a+b)/2+(int)x%(int)y;printf("%f",m);程序编写注意事项:(2)用程序的形式求出计算结果: 已知整型变量a的初值是5,b的初值是3,计算下列表达式的值。 1). !a&&b+; 0 2). a|b+4&&a*b; 1 3). a=1,b=2,a>b?+a:+b; 1 4). +b,a=10,a+5;4 5). a+=b%=a+b; 8 6.) a!=b>2<=a+1;1程序清单:(1) #include <stdio.h>void main() kint a,b,c;a=5;b=3;printf("%d",!a&&b+);程序编写注意事项:(3)要将“China”译成密码,密码规律是:用原来的字母后面第4个字母代替原来的字母。程序清单:, #include <stdio.h>void main()char c1,c2,c3,c4,c5;c1=C;c2=h;c3=i;c4=n;c5=a;printf("%c%c%c%c%cn",c1+5,c2+5,c3+5,c4+5,c5+5);程序编写注意事项: (4)从键盘输入一个大写字母,要求用小写字母形式输出该字母及对应的ASCII码值。程序清单:#include <stdio.h>void main() char c; printf("请输入一个大写字母:n"); scanf("%c",&c);printf("您输入的大写字母是%cn其对应的ASCII码值是%dn",c,c); printf("小写字母是%cn其对应的ASCII码值是%dn",c+32,c+32);程序编写注意事项:(5)从键盘输入三个数,求它们的平均值,并将最后的结果保留三位小数。程序清单:#include <stdio.h>void main()int a,b,c;double avg = 0.0;scanf("%d%d%d",&a,&b,&c);avg = (a + b + c) / 3;printf("%.3f",avg); 程序编写注意事项:(6) 已知圆柱体半径6米,高7米,求体积。v=p*r*r*h;程序清单:#include <stdio.h>void main()float r,h,p,v;r=6;h=7;p=3.14;v=p*r*r*h; printf("%f",v); 程序编写注意事项:(7)编写一个程序,求出给定半径r的圆的周长和面积,并且输出计算结果,其中r的值由用户输入,3.14的值用符号常量表示,结果保留三位有效数据.程序清单:#include <stdio.h>void main()float r,p,c,s;scanf("%f",&r);p=3.14;c=2*p*r;s=p*r*r;printf("%f,%f",c,s);程序编写注意事项:p(8)编写一个程序根据输入的年利率I和存款总额S计算一年后的本息和并输出.程序清单:#include <stdio.h>void main()float s,i; scanf("%f,%f",&i,&s);s+=s*i*0.01; printf("%fn",s);程序编写注意事项: