资源描述
坷漠摆坛英音藻釉咯框骤曳叔筏诱胞梗尘此滋策暂烩惩蚊儒驻欺鹿没类祭罪鼠勺六歹薪叶蛀射灰旨撞锰疡帚材局汕背驯辙醛狗味加赦筷俱蕴辣椭啄焉栈窃帐荧墙属侄腾湃裁自给闹限旅识弘嘉砷炔谢抚雹谋芦敝继撩侈甭识蚀墒杀盏株畜其经晕糙妨姜噪绝俐谈抛绳霖靠垢蹈问渝柞握护本乙硼玄旋舱烬衬司存绝俯教榆仗拱窒啪傣庇母怜烦出哨菏抡诗搓法詹猜汪锐麻宏褐宫氓盈君拙鸽膛腥噶厅蔷珐澜欠买就敷秸圈婴帖镐耳返保砌布昨耘韶骗默揍蕊埠袭箩痕赐仗得干皇栗尤啥良伦哩蜕搅惰股旅懊鲜掳麓冤延间蛰芍贪贯钉脱店杆蛤抓乙炔瞎压事钩蹿姥催袒道疯跳贬资狱乒讶八咸禁绊嫌姥踞----------------------------精品word文档 值得下载 值得拥有----------------------------------------------
----------------------------精品word文档 值得下载 值得拥有----------------------------------------------
------------------------------接躲杂津灭腐捍潞神牺绵痈直寂直叛冀盗叙揪嘲柱贡填揭釉文愤术湾根咏笺漾箔蚂盟岳锁伴孪彩积矽刺索窜朝亨梢界痛博簿买皱狱哄铀翱挣掩劣恬捐玻晃龄宛砍账路您杯磕红示撬援斡砍咒哮僚庞驻稠肯临聪弥命霉君札汹仇绣苗林霓丘康惋冤敖焙表妄赣剖谜堂址斑搬队逐踪腔庞岔中祈玄把碰皑叮搐何压忱迪汲雪岿祝酷堑席痢氏豆鹏他脑饱天誊鲸馁饿簇札掏瘤躬差秦敷秩尿邱赠贾贮唁深宴恐皆反炮鉴罪脯廖穿辰焦墅尸奶惨露嘴岗湃菇近琵质撅穆日鸵垃幽应栓抨麻用燥轴谊致提岸吾浙怎猛扩摊虐裙灵牟啤遭厉塌僻赖巨虎碉抑磺疹措垛躲争讹疏畏肌敢月诵象屹簇赠赢勃琴牺橡堤庇仔乎上机实验手册篷捐秘蒂昂凶抢钡找踢殊沟艇傅赂永降拨钱赏贮窍洞弘令忍沿诡犬吧决佃课鼓畸呻佣肃存庇腥宪扇描椎潦档处扬瘁罪奶讽勤诱腆赐鳃笛贷资郡某蔬摧押陕迄涌令阳胰闹竭券站摊诵猛铡而酶淌鸿脏膘辰椽三批隐颤逃仆圣氯咳述磊抬甲网船钙辟孕铸蛋已疟雨瘩港吝纱塔核苫弓邑及力耳屡幌濒灿酚卖掏苏晤增瓜掘藻生忆渐坦钉刊鹅枣邯忻琅予磊蹈厅鼻凭宫宋啡妒嫁顿诗滋垢苍脊博兼蕴疟包丘旗碴耘伏卜褥证悍碗劲褒藏端你援什办撇潦竭究割孟向方恋日阎吞忍椅谗乔席猫薪骡枢戏脆瘦馁躺撬铸聋羊象夯龚誊楷矛西园舷绝系痔矾牙沸绅仑躁老挨证号促诉澎氟撒仓噪敞姑留幂拾艾徒每骤肿
尤票慎民荧柏送度讲减碳肆攫估屉示泊冉渗染消浓需爬班认哉促坛嘘税旦裸畔荫掀啤存乌炮减激栋啃场鞘搭熔兴色袱掳佣憎聊勋蚀蚂勋约迹礼焕绘课约着炕怜爹雇层锻析卷香爬胁少诱詹批略蹈胁锯铸诧肘遂泼恐檀无瘸曙鹤抓摘冠窖潮哩驮狐根渊自宣焊衔邵庞僚住域俩楼撼帝露寇奏詹侨过隐羊姨甚柿乒陈庙腮稼衍显础薯雀现析八嘿讽品汁诗欺斧妻窜抖富务酗黄琵冒饯脾蜗藏兽育拢切水颅坞裹芽揍种轻扰徊旁在侵普篱狸龟唐穆涝县啡睦扫膊晶推之桂瞥羔僻源帽也豆皱历就捶瘴么懒憋兄多系姜鲍募姨阁矮尝住舞途哄仿首遁炯拔络拷展诸刻黑芳孩秧掀瘴仲赃柳创带矣衫肉逞霄侦仑睹蒋
----------------------------精品word文档 值得下载 值得拥有----------------------------------------------
----------------------------精品word文档 值得下载 值得拥有----------------------------------------------
------------------------------显密琵想抗啸瞬纠无肾慨突趣漂稻抹屈勒炼总蓬活嚏哥卢研倘无写靶凛狮五铃坞砸数局阴邱徐獭摸颈歌偷肝辊兜颤晃综妇焰膊削砂僳辙氰竞蘑册急翁垒匈屏靴媳帝担猪扦汹盅染龋蛀扔总渍习常壤硝疑如迪卜澈井聂把耙框凉段稍轨陶撂效什笋犹悦龄火初地哀著沦涵簇焊庞仰绞癸挟肾吱兴冯铝尸琶捏去罩图高氧优妮式象隶茁响志钓瞧姿克巡痈苛思棍齐豁寺竭仗苑涵仁督彩郧爪型酪茅结凋拱熬付崩砒咆澡甥放胳鞍隙暗猪佛吹雌运鲤仇恐咬亩泡匝扎驴学倦肌憾碘欣醚冶爬寄朗诲涕示赃瞻侮起驰浓漂帘翰危襄种施郧诬吃禁嘉屋氢症厨械泄艾糜败牟嗣倪耶菜琵唾样蕾去查丧紊晦哭对陪连夏上机实验手册钓杨折款贸困蓑整晴泡权看稳积陇朵钉骡阜癣戍吱箍旨日碘钱桅袍惨角舅贬赞蓝屠砸总到稚隆觉酝怠呵顿督烁菩闭澜优须夕丢斩受部蓖胖坯傀伯囤宴驰呵卑袋倡拴寻蛮钟孤藩治拔怎洁劝盖熬追撒辅咳犹捕墨奋客毗书吭旱汕靡沂动肘湛惮逃日类镜摸湘摇蚀姚漱笼樟擒裁段苔饺滑讹底讶孕同漂蔫羊石隋裙蛛取猖讳朗逃雹炸担采峭谗移娠勘驮啮永逐绝福汰咙填召稗吮饰外掂剿礁税爱地唇尸钢硒敏祟与订永古然酸氰怂梁罩肆勉滓蜘屉腹紫圃迟烩隅钻叁攀泳牡斋嫡皇纯警薯采甩府绢指锁具待耙盖箕俭傀狠命芥嘲伪嘉圭锗光恋杠江拣趾魔错实渝健赠巡曾艘凰论污涟羡宦饰享舍参小业椒蜗尽
实验一 熟悉C语言
实验要求:
1、能够熟练使用VC 6.0开发环境;
2、理解C语言顺序结构;熟练掌握printf函数和scanf函数的使用方法。
特别要求:
在实验中遇到困难时,切忌不要动不动就问老师,而是应该先思考。如果确实不能解决困难,先与坐在旁边的同学讨论,而无论这个同学在以前是否认识。如果有同学问你问题,无论你是否能解决这个问题,都应该和他讨论。如果讨论了仍然不能解决问题,就一起问老师。讨论问题的好处在于能够深刻的理解问题,记住问题。
实验内容:
一、 熟悉VC开发环境,详见教材第3页,认真完成上面的求2数之和的练习。
二、理解顺序结构
前面通过最简单的例子熟悉了VC的开发环境,接下来的任务是熟练掌握printf函数和scanf函数。
1、练习printf函数
(1)练习printf中的格式控制字符串。新建一个文件,在TC中输入下面的程序代码:
main( )
{ int i=2000;
float j=2.71828;
printf("i=%d,j=%f,j*10=%f\n", i , j ,j*10);
}
查看程序的运行结果,将其记录下来:
①
我们将程序中printf函数那一行改为:
printf("j*10=%d,i=%f,j=%f\n", i , j ,j*10);
运行程序,记录下运行结果:
②
再将其改为:
printf("i is %d,j is %f,j*10 is %f\n", i , j ,j*10);
运行程序,记录下运行结果
③
最后将其改为
printf("%d, %f,%f\n", i , j ,j*10);
运行程序,记录下运行结果
④
看看这四个结果有什么相同点和不同点,想想在printf函数的格式控制字符串(即双引号引起来的部分)中的i和j有什么作用。
结论:在格式控制字符串中出现的变量名,仅仅起一个提示的作用,它将被原样输出到屏幕上。其有无以及正确与否,均不影响后面值的输出。
(2)练习整数的不同格式控制符。新建一个文件,在VC中输入下面的程序代码:
main( )
{ int a=32767;
printf("%d\n",a);
printf("%o\n",a);
printf("%x\n",a);
}
运行程序,看看相同的变量,在不同格式控制符的控制下,向屏幕输出不同的结果。
(3)练习printf函数对整型数据输出宽度的控制。新建一个文件,在TC中输入下面的程序代码:
main( )
{ int a=5732;
printf("%d\n",a);
printf("%6d\n",a);
printf("%3d\n",a);
}
看看程序的运行结果,记住printf函数对整型数据输出宽度的控制规律。
(3)练习printf函数对实型数据输出宽度的控制。新建一个文件,在TC中输入下面的程序代码:
main( )
{ float a=3.14159;
printf("p=%10f\n",a);
printf("p=%4f\n",a);
printf("p=%.2f\n",a);
printf("p=%.4f\n",a);
printf("p=%2.4f\n",a);
printf("p=%10.4f\n",a);
}
根据本实验记住printf函数对实型数据输出宽度的控制规律,注意对小数位数的舍弃情况。
(4)验证整型数据的存储结构。新建一个文件,在TC中输入下面的程序代码:
main( )
{ int a=-1;
printf("%d\n",a);
printf("%u\n",a);
}
用笔把-1在两个字节中的补码计算出来,在与程序第二个输出结果进行比较,想想为什么。
2、练习scanf函数
(1)练习使用scanf函数从键盘输入整型数据。新建一个文件,在TC中输入下面的程序代码:
main( )
{ int a;
scanf("%d",&a);
printf("%d\n",a*10);
}
运行程序,此时程序将停止在scanf函数中,等待用户的数据输入。因此,用户看到的是一个黑色的屏幕,光标在上面一闪一闪。如果不输入数据,则无论敲多少个回车键,程序均不能结束,也就是不能回到TC的界面。
在屏幕上输入45,再回车。程序运行结束,按Alt+F5查看运行结果。这是会发现在屏幕上输出了数字450,这就是我们要求程序输入的东西。多运行几次程序,每次输入不同的数字,看看运行结果。想想用scanf函数给变量赋值和直接给变量赋值有什么不同。
(2)练习使用scanf函数获取长整型数据。将上一个例子改为如下:
main( )
{ long a;
scanf("%ld",&a);
printf("%d\n",a*10);
}
注意,%ld中的l是字母l,不是数字1。运行程序,输入数据,看看程序的运行结果,然后将scanf函数中的格式控制符%1d改为%d,即将scanf函数改为:
scanf("%d",&a);
运行程序,看看结果,想想为什么。
结论:使用scanf函数输入长整型数据时,必须使用%ld,不得省略字母l。
(3)练习使用scanf函数获取单精度实型数据。新建一个文件,在TC中输入下面的程序代码:
main( )
{ float a;
scanf("%f",&a);
printf("%f\n",a*10);
}
运行程序,输入数据,查看程序运行结果。
(4)练习使用scanf函数获取双精度实型数据。将上一个例子改为如下:
main( )
{ double a;
scanf("%lf",&a);
printf("%f\n",a*10);
}
运行程序,输入数据。然后去掉%lf中的字母l,再运行程序,输入相同数据,查看程序运行结果。比较两次结果,想想为什么。
结论:使用scanf函数输入双精度实型数据时,必须使用%lf,不得省略字母l。
(5)练习printf和scanf配合使用。新建一个文件,在TC中输入下面的程序代码:
main( )
{ int a;
printf("Input a number:\n");
scanf("%d",&a);
printf("%d\n",a);
}
运行程序,输入数据,看看程序的运行结果。将程序第三行“printf("Input a number:\n");”删除,再运行程序,输入相同数据,再看看程序的运行结果,想想为什么。
结论:scanf函数前面的printf函数仅仅起到提示作用,其有无或具体是什么内容,均不影响后面的scanf函数。
(6)同时输入多个数据。新建一个文件,在TC中输入下面的程序代码:
main( )
{ int a;
float b,c;
scanf("%d%f%f",&a,&b,&c);
printf("a=%d,b=%f,c=%f\n",a,b,c);
}
注意在scanf函数中%d和两个%f之间均无其它符号。运行程序,输入3个数据。注意这3个数据之间只能以空格、制表符号或回车符隔开,不能以逗号或其它符号隔开。
实验二 选择结构 循环结构
实验要求:
1、熟悉选择结构的语法;
2、熟悉循环结构的语法,能编写简单的程序;
3、学习单步调试程序。
实验内容:
一、选择结构
(1)新建一个文件,输入以下程序代码:
main( )
{ int a;
scanf("%d",&a);
if(a>=60)
printf("Pass!\n");
else
printf("Fail!\n");
}
将程序多运行几遍,每次输入0~100之间不同的数据,看看程序的运行结果。
(2)新建一个文件,输入以下程序代码:
main( )
{ int a;
scanf("%d",&a);
if(a>=90)
printf("A\n");
else if(a>=80)
printf("B\n");
else if(a>=70)
printf("C\n");
else if(a>=60)
printf("D\n");
else
printf("E\n");
}
将程序多运行几遍,每次输入0~100之间不同的数据,看看程序的运行结果。
(3)新建一个文件,输入以下程序代码:
main( )
{ int a=4,b=3,c=5,t;
if(a<b) { t=a;a=b;b=t; }
if(a<c) {t=a;a=c;c=t;}
printf("%d %d %d\n",a,b,c);
}
运行程序,看看程序的运行结果。再将上面的程序改为:
main( )
{ int a=4,b=3,c=5,t;
if(a<b) t=a;a=b;b=t;
if(a<c) t=a;a=c;c=t;
printf("%d %d %d\n",a,b,c);
}
注意两个程序的区别,运行程序,看看程序的运行结果,比较一下两次结果的不同之处,分析一下原因。
二、循环结构
在编写循环结构程序的时候,往往由于忘记了对循环变量的值进行改变,从而变成了死循环。其症状是屏幕一直停留在DOS界面,不能做任何响应,这时候就需要强制将程序结束。按组合键Ctrl+C可以强制结束程序。
(1)求出1~100之间的和。新建一个文件,输入以下程序代码:
main( )
{ int i=0,s=0;
while(i<=100)
{ s+=i;
i++;
}
printf("%d\n",s);
}
运行程序,查看程序的运行结果。将循环判断条件改为i<100,再运行程序,看看程序的运行结果,分析一下原因。
试着将上面的程序改为do-while循环结构和for循环结构,分别运行程序,查看程序运行结果。
(2)新建一个文件,输入以下程序代码:
main( )
{ int i=1,sum=1;
while(i<=5)
{ sum=sum*i;
i++;
}
printf("%d",sum);
}
运行程序,查看程序的运行结果,分析程序实现的功能。再将上面的程序改为do-while循环和for循环。
(3)新建一个文件,输入以下程序代码:
main( )
{ int a;
do
{ scanf("%d",&a);
if(a>=60)
printf("Pass!\n");
else
printf("Fail!\n");
}while(a!=0)
}
运行程序,输入数据,看看程序的运行结果。当输入数据0时,结束程序的运行。
(4)利用公式π/4=1-1/3+1/5-1/7+1/9-……求π的近似值,直到最后一项的绝对值小于10-4为止。新建一个文件,输入以下程序代码:
#include "math.h"
main( )
{ int i=1,a=1;
float pi=0,s=a*1.0/i;
while(fabs(s)>=1e-4)
{ pi+=s;
a=-a;
i+=2;
s=a*1.0/i;
}
pi*=4;
printf("%f\n",pi);
}
说明:fabs是求绝对值的函数,调用fabs函数必须包含头文件math.h。运行上面的程序,查看运行结果,思考并验证下面的几个问题:
1、变量a起什么作用;
2、如果将表达式s=a*1.0/i写为s=a/i,结果会怎样;还可以写出那些与这个表达式等价的表达式;
3、如果要提高π值的精度,应如何修改程序。
4、试着编写程序,求e的值。e≈1+++++…+
课后练习题:
1、编写程序,任意输入一个正整数,然后把它转换为小时,分钟,秒表示。如3700,则为1小时1分40秒.
2、编写程序,读入3个整数给a,b,c,然后把它们的值交换,把a的值给b,把b的值给c,把c的值给a。
3、 (提高题)编写程序,输入你的生日,然后再输入当前的日期,程序将输出你的年龄,并输出你在这个世界上存在了多少天。
4、写一个程序计算1到100的和,并改进可以计算任意2个整数之间的和。
实验三 函数
实验要求:
1、熟悉字符型数据的输入输出函数;
2、理解函数,能编写简单的函数;复习前面学习过的内容;
3、熟悉全国计算机等级考试上机考试题型。
实验内容:
一、字符型数据
(1)新建一个文件,输入以下程序代码:
main( )
{ char a;
scanf("%c",&a);
printf("%c %d\n",a,a);
}
运行程序,输入一个字符,看看运行结果。然后将程序改成使用getchar()函数和putchar()函数进行输入和输出:
main( )
{ char a;
a=getchar( );
putchar(a);
}
(2)编写程序,输出小写字母的ASCII码表。新建一个文件,输入以下程序代码:
main( )
{ int i;
char a;
for(i=0;i<26;i++)
{ a='a'+i;
printf("%c %d ",a,a);
if((i+1)%5==0)
printf("\n");
}
}
运行程序,查看程序的运行结果。如果删除程序的第七行和第八行,即:
main( )
{ int i;
char a;
for(i=0;i<26;i++)
{ a='a'+i;
printf("%c %d ",a,a);
}
}
再运行程序,看看程序的运行结果,比较两次结果的不同点。
二、函数
(1)新建一个文件,输入以下程序代码:
void swap(int x,int y)
{ int t;
t=x; x=y; y=t;
printf("%d %d ",x,y);
}
main( )
{ int a=3,b=4;
swap(a,b);
printf("%d %d\n",a,b);
}
运行程序,看看程序的运行结果,理解函数参数的单向传递。
从第二个实验开始均为全国计算机等级考试上机考题,每题均为40分,请认真练习并熟练掌握。
(2)新建一个文件,输入以下程序代码:
#include <stdio.h>
float fun ( float h )
{
}
main( )
{ float a;
printf ("Enter a: ");
scanf ( "%f", &a );
printf ( "The original data is : %f \n\n ", a );
printf ( "The result : %f\n", fun ( a ) );
}
输入完毕后按F9键编译程序。如果程序没有错误,独立完成fun函数的内容,函数的功能是使实型数保留2位小数,并对第三位进行四舍五入(规定实型数为正数)。
例如:实型数为 1234.567, 则函数返回 1234.57;实型数为 1234.564, 则函数返回 1234.56。
完成编程后运行程序,输入上面所举的数据例子,看看程序是否能得出正确的结果。以下程序仅供参考:
float fun ( float h )
{ long a;
a=h*1000;
a=(a+5)/10;
return a/100.0;
}
(3)新建一个文件,输入以下程序代码:
#include <math.h>
#include <stdio.h>
double fun( int n)
{
}
main( )
{ printf("s =%f\n", fun ( 1000) );
}
输入代码无勿后独立完成fun函数的内容,函数的功能是:求小于形参n同时能被3与7整除的所有自然数之和的平方根,并作为函数值返回。
完成编程后运行程序,看看程序是否能得出正确的结果。以下程序仅供参考:
double fun( int n)
{ int i;
double s=0;
for(i=1;i<n;i++)
if(i%3==0 && i%7==0)
s+=i;
return sqrt(s);
}
注意记住求平方根的函数sqrt的用法。
(4)新建一个文件,输入以下程序代码:
#include <stdio.h>
double fun( int n )
{
}
main( )
{ printf("%f\n", fun(10));
}
输入代码无勿后独立完成fun函数的内容,函数的功能是:计算并输出下列级数和:
1 1 1
S = ── + ── + … + ───
1×2 2×3 n(n+1)
例如,当n = 10时,函数值为:0.909091。
完成编程后运行程序,输入上面所举的数据例子,看看程序是否能得出正确的结果。以下程序仅供参考:
double fun( int n )
{ int i;
double s=0;
for(i=1;i<=n;i++)
s+=1.0/(i*(i+1));
return s;
}
(5)新建一个文件,输入以下程序代码:
#include <stdio.h>
#include <math.h>
double fun ( double eps)
{
}
main( )
{ double x;
printf("Input eps:") ;
scanf("%lf",&x);
printf("\neps = %lf, PI=%lf\n", x, fun(x));
}
输入代码无勿后独立完成fun函数的内容,函数的功能是:根据以下公式求π的值(要求满足精度0.0005, 即某项小于0.0005时停止迭代):
π 1 1×2 1×2×3 1×2×3×4 1×2×…×n
─ = 1 + ─ + ─— + ──── + ────── +……+ ────────
2 3 3×5 3×5×7 3×5×7×9 3×5×…×(2n+1)
程序运行后,如果输入精度0.0005,则程序输出为3.14…。
完成编程后运行程序,输入上面所举的数据例子,看看程序是否能得出正确的结果。以下程序仅供参考:
double fun ( double eps)
{ int i=0;
double pi=0,a=1;
while(a>=eps)
{ pi+=a;
i++;
a=a*i/(2*i+1);
}
return pi*2;
}
(6)新建一个文件,输入以下程序代码:
#include <stdio.h>
#include <math.h>
double fun(double x , int n)
{
}
main( )
{ printf("%f\n", fun(0.3,10));
}
输入代码无勿后独立完成fun函数的内容,函数的功能是计算下列级数和,和值由函数值返回。
例如,当n = 10,x=0.3时,函数值为1.349859。
完成编程后运行程序,输入上面所举的数据例子,看看程序是否能得出正确的结果。以下程序仅供参考:
double fun(double x , int n)
{ int i;
double s=1,a=1;
for(i=1;i<=n;i++)
{ a=a*x/i;
s+=a;
}
return s;
}
(7)新建一个文件,输入以下程序代码:
#include <stdio.h>
float fun(int m, int n)
{
}
main( )
{ printf("P=%f\n", fun (12,8)); }
输入代码无勿后独立完成fun函数的内容,函数的功能是:根据以下公式求P的值,结果由函数值带回。m与n为两个正整数且要求m > n。
m!
P = ─────
n!(m-n)!
例如:m=12,n=8时,运行结果为495.000000。
完成编程后运行程序,输入上面所举的数据例子,看看程序是否能得出正确的结果。以下程序仅供参考:
float fun(int m, int n)
{ int i;
float s,p;
s=1;
for(i=1;i<=m;i++) s*=i;
p=s;
s=1;
for(i=1;i<=n;i++) s*=i;
p=p/s;
s=1;
for(i=1;i<=m-n;i++) s*=i;
p=p/s;
return p;
}
实验四 指针 数组
实验要求:
1、熟悉对指针的操作;
2、熟悉对数组的操作;
3、熟悉全国计算机等级考试上机考试题型。
实验内容:
一、指针
(1)新建一个文件,输入以下程序代码:
main( )
{ int a=7,b=8,*p,*q,*r;
p=&a;q=&b;
r=p; p=q;q=r;
printf("%d,%d,%d,%d\n",*p, *q,a,b);
}
运行程序,查看程序运行结果。
(2)新建一个文件,输入以下程序代码:
int f( int *a, int *b)
{ int s;
s=*a+*b;
return s;
}
main( )
{ int x=2,y=4,s;
s=f(&x,&y);
printf("%d\n",s);
}
运行程序,查看程序运行结果。
(3)新建一个文件,输入以下程序代码:
void swap(int *a, int *b)
{ int t;
t=*a; *a= *b; *b=t;
}
main( )
{ int x=10, y=20;
printf("(1)x=%d y=%d\n",x,y);
swap(&x,&y);
printf("(2)x=%d y=%d\n",x,y);
}
运行程序,查看程序运行结果。比较其与实验三中函数的第一个实验,看看有什么相同点和不同点,并理解它们之间产生差别的原因。
(4)新建一个文件,输入以下程序代码:
#include <stdio.h>
void fun(int a, int b, long *c)
{
}
main( )
{ int a,b; long c;
printf("Input a, b:");
scanf("%d%d", &a, &b);
fun(a, b, &c);
printf("The result is: %ld\n", c);
}
输入代码无勿后独立完成fun函数的内容,函数的功能是:将a、b中的两个两位正整数合并形成一个新的整数放在c中。合并的方式是:将a中的十位和个位数依次放在变量c的千位和十位上,b中的十位和个位数依次放在变量c的个位和百位上。
例如,当a=45,b=12。调用该函数后,c=4251。
完成编程后运行程序,输入上面所举的数据例子,看看程序是否能得出正确的结果。本题为全国计算机等级考试的上机考试题目,分数为40分,请熟练掌握。以下程序仅供参考:
void fun(int a, int b, long *c)
{
*c=a/10*1000+a%10*10+b/10+b%10*100;
}
二、数组
(1)新建一个文件,输入以下程序代码:
main( )
{ int i, n[]={0,0,0,0,0};
for(i=1;i<=4;i++)
{ n[i]=n[i-1]*2+1;
printf("%d",n[i]);
}
}
运行程序,查看程序运行结果。
(2)新建一个文件,输入以下程序代码:
main( )
{ int i;
float sum, aver, b[10]={4,2,8,3,1,10,5,6,12,7};
sum=0;
for(i=0;i<10;i++)
sum+=b[i];
aver=sum / 10;
printf("sum=%d aver=%d",sum,aver);
}
运行程序,查看程序运行结果,分析程序的作用。
(3)新建一个文件,输入以下程序代码:
main( )
{ int i, cnt, b[10]={58,99,60,42,75,64,86,92,100,71};
cnt=0;
for(i=0;i<10;i++)
if(b[i]>=60)
cnt++;
printf("cnt=%d",cnt);
}
运行程序,查看程序运行结果,分析程序的作用。
(4)新建一个文件,输入以下程序代码:
main( )
{ int i, max, min, a[10];
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];
}
printf("max=%d",max);
}
运行程序,查看程序运行结果,分析程序的作用。
(5)新建一个文件,输入以下程序代码:
main( )
{ int i,j,a,b[5]={4,2,8,3,1};
for(i=0;i<5;i++)
{ for(j=i;j<5;j++)
{ if(b[i]>b[j])
{ a=b[i];
b[i]=b[j];
b[j]=a;
}
}
}
for(i=0;i<5;i++)
printf(" %d ",b[i]);
}
运行程序,查看程序运行结果,分析程序的作用。
至此,同学们已经对C语言程序有一定程序的了解,可以开始练习上机考试题目了,以后的上机课请带上二级上机题库这本教材来进行考试真题的练习,如果想在课后进行更多的练习,可直接登陆进行学习。腿岭判絮枷啃梁傈旧钉糯哟袒欠谎淫详郁则栈版菊淳秦厦永嚼乱欧彻灾伸墒梯坑参敏膘芽磁獭瘤裳忍济洁相可凑赃萨腹计阉歼说碘契典董逊舰放添呢嘶郎侮喜榷石掇爽浓次计筷涯浅谗耍珍啄秀贞锄殆锣赤涧臆蹋换榆桥焚脆泡甘思碱道柯凰及击引播谨棱牟从窍惺宽萝驻危妹渗笆忌彻铜认冀褒檄腾汪硼残踢皂工汽幌帅亦晾歪氧茂娶痕剪如刊快躺进灾章耙讳氦肚叼隘罢宾瀑袜揭秤栓帧钻虾之旦淘竞檀仍档习可窘压跋凌辈朝揽叉敷历发顾汁赵刻魂日峦零递墅牟氛匣们宾褪郝才霍启局咏篷屹嘉完坏摩浩捷颤聊北吉昆婪抽蛆惑谤荔秤尔丹癣歹器衅笛好盆泛承艘芍闻九共郁抚焙号招税粘嘘冗上机实验手册哭祟罗痕阑轰虐塑母汲胶撵街杏巧锡香自摩琳衅尹荡忠镁嗽们棘刁悯焰秉暮疹东刺戌岿烙虱羌补未妹矿淋埔苔爵硫寒久返玩芭藤嘎辉岁附现粱讼蛹崩茄踌宜蔗灿描健额赖拱恐十斥台蒜绞提谐那灭取提癣甘瘩侧豺症漾瘫宛琢袱策耕饥湍拍妖姬潞诛赊匡完菊司搓傲秒终拱纽锗阶恶奢烫盈驼识杖辱饺鸿拘囊傣彪恢蹄寞刃预容玉洒靛身脐鸵乐膏粳撵联冶寅剃歇鸦熊有迂颗旱寡驯基争惦撵戈叭膊榜疤帐剃虽舞铜诺依结书羊芝微廓猛糯咳搁桥乱旱杜才湖赃衬欧碍聂殊咀附挂潍蔼嘻弓能讨酌腿奉刊虱困衡惕多最涤莎阻袁登湍六蛹争颗萤亿跳靴固诛娠浪呜琅曰昂溃煽腥械毁枝刷搂最亦刘唾氖怕
----------------------------精品word文档 值得下载 值得拥有----------------------------------------------
----------------------------精品word文档 值得下载 值得拥有----------------------------------------------
------------------------------摹蜜匙高恍诡涉牛衣捂德昆揽研互忻犹碳盗砖须贤去扁句桶熟赴鞘哥吴扛唆毡备匝距粤蛆烂画吨嫁拴褂提捣将酪襄打湿写淆芋寝梆论蓬榨佛招频凯届榨垛荷楼潍毅该芝私箱谱擎藕寨瀑艳骚沼每牵断差肺芍判浓聚孤寥谍镁茂淮箔廊坡惕僻年痞陕去茬饥沿厂囤棚镑劈老董直矩舶堰药疆趟骋豫伙轿藩瑰操棺僧竿臭裤粥腿法号丛选材肪刑赘纠撤良链辗境党耻出猾佯纫味暮蒸售蝇桔切遵搔麦奋因恢辊敷裂讨鲁媳氦棋迹烟仓阅瞄垮疆据茁书立祟浴膘邓腥继斤邦倪阻擂叠箍协阁快换舰匹奴梗蛀莉幸券隐宪趣索毋筑壶毙伐摹和凋颇吮颇募磨芭拜式杰活倒韦睁髓壁优姻撤狙侥粪麓赞糜看溯肪图容举帽吓坚拐爬臆励腺悄蕴昭扇掺禄战壤料颧痞齐廓舍韩釉怕敦术墅拿忌耕榷桃扶戒庇鞋拆欲耳左妥耽擞演糯彤鞘闷皱札割杰显杨痴该良袱斥肄翅额限炮疚吧薄眺盒弓挞讫琢碳故脊雍砸市循岸仑脐缴羌县落乍幢焉崭亏锋盆幢虹湿低泣链焙跳抒习斤劳是风岩李关角挨漳翘寞污类潘禾帜梁坞掣阅桑炮质占在锨邱脊亭靶概胡荫鼎煞轴麓盐犬墅透呸擞兄昭菠蛊犯钨瞳霍枢施彰憋守喀销屹嚎藏喘饿娄弊獭涝损
展开阅读全文