ImageVerifierCode 换一换
格式:DOCX , 页数:25 ,大小:143.41KB ,
资源ID:10185196      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/10185196.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(计算机.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

计算机.docx

1、计算机第一章 循 环1.1 实验目的 (1)掌握一维数组和二维数组的定义、赋值和输入输出的方法(2)掌握字符数组和字符串函数的使用;(3)掌握与数组有关的算法。1.2 实验要求 (1) 在报告中记录建立、保存C程序实习过程。(2) 完成典型题目,分析遇到的困难和实验中的收获。1.3 实验基本内容1.3.1 题目一打印出以下图案* * * * * * * * * * * * * * * * * * *(1) 题目分析:本题主要是用for循环来实现,通过for循环的嵌套,分别控制行数,空格以及*,把图形分成上下两部分来处理。(2) 程序:#includemain() int i,j,k; for(

2、i=1;i=4;i+) for(j=1;j=8-2*i;j+) printf( ); for(k=1;k=2*i-1;k+) printf(* ); printf(n); for(i=1;i=3;i+) for(k=1;k=2*i;k+) printf( ); for(j=1;j=7-2*i;j+) printf(* ); printf(n); (3) 运行结果:1.3.2 题目二编写程序实现输入整数n,输出如下所示由数字组成的菱形。(图中n=5) 11 2 11 2 3 2 11 2 3 4 3 2 11 2 3 4 5 4 3 2 11 2 3 4 3 2 11 2 3 2 11 2 11

3、 (1) 题目分析:这个题也用到for循环的嵌套,通过逐项运算达到。程序:#include stdio.h main() int i,j,n; scanf(%d,&n); for(j=1;j=n;j+) for(i=1;i=1;i-) printf(%d ,i); printf(n); for(j=n-1;j=1;j-) for(i=1;i=1;i-) printf(%d ,i); printf(n); return 0; (3)结果:2 思考题1以下不是死循环的语句是 D 。 A)for (y=1,x=9;x+y ; x=i+) i=x ; B)for ( ; ; x+=i ) ; C)wh

4、ile (1) x+ ; D)for (i=10 ; ; i-) sum+=i ;2. 下面程序段的运行结果是 B 。x=y=0;while (x15) y+,x+=+y ;printf(“%d,%d”,y,x); A)20,7 B)6,12 C)20,8 D)8,203. 以下for循环的执行次数是 C 。for (x=0,y=0; (y=123) & (x4) ; x+) ; A)无限循环 B)循环次数不定 C)4次 D)3次4写出下面程序运行的结果。2,0main ( ) int i,b,k=0 ; for (i=1; i=5 ; i+) b=i%2; while (b-=0) k+ ;

5、 printf(“%d,%d”,k,b);5. 写出下面程序运行的结果。8main ( ) int a,b; for (a=1,b=1 ; a=20) break; if (b%3=1) b+=3 ; continue ; b-=5; printf(“%dn”,a);6. 写出下面程序运行的结果。36main ( ) int k=1,n=263 ; do k*= n%10 ; n/=10 ; while (n) ; printf(“%dn”,k);第二章 数 组2.1 实验目的 (1) 掌握一维数组和二维数组的定义、赋值和输入输出的方法(2) 掌握字符数组和字符串函数的使用;(3) 掌握与数组

6、有关的算法。2.2 实验要求 (1) 在报告中记录建立、保存C程序实习过程。(2) 完成典型题目,分析遇到的困难和实验中的收获。2.3 实验基本内容第二次实验 数组1 编程1.1 打印以下图案:* * * * * * * * * * * * * * * * * * * * * * * * *(1) 题目分析:这个题与第一次实验的编程一题类似,只要用for控制行数空格和* ,就可以了。(2) 程序#includemain() int i,j,k; for(i=0;i5;i+) for(k=0;k=2*i;k+) printf( ); for(j=1;j=5;j+) printf(* ); pri

7、ntf(n); 实验结果:1.2 输入44的数组,编写程序实现:(1)求出对角线上各元素的和;(2)求出对角线上行、列下标均为偶数的各元素的积;(3)找出对角线上其值最大的元素和它在数组中的位置。程序#includevoid main() int a44=1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16; int i,j,m,n,Sum,Product,Max; Sum=Max=m=n=0; Product=1; for(i=0;i4;i+) for(j=0;jMax) Max=aij; m=i+1; n=j+1; for(i=0;i4;i+) for(j=0;j0

8、&chi=9;i+=2) s=10*s+chi-0; printf(“%dn”,s);A)1 B)1256 C)12ab56 D)ab2下面程序段的输出结果是 B 。char c5=a,b,0,c,0printf(“%s”,c);A)ab B)ab C)ab c D)abc3mian() int m 3=1,4,7,2,5,8,3,6,9; int i, j, k=2;for(i=0;i3;i+)printf(“%d”,mki);上程序输出的结果是:CA)456 B)258 C)369 D)7894若二维数组a有m列,则计算任一元素aij在数组中位置的公式为_C_.(假设a00位于数组的第一个

9、位置上。) a)i*m+j b)j*m+i c)i*m+j-1 d)i*m+j+15. 当运行下面程序时,从键盘上输入7 4 8 9 1 5,则写出下面程序的运行结果。 main ( ) int a6,i,j,k,m; for (i=0 ; i=0; i-) k=a5; for (j=4; j=0; j-) aj+1=aj ; a0=k; for (m=0 ; m6 ; m+) printf(“%d ”,am); printf(“n”); 第三章 函 数3.1 实验目的 (1) 掌握定义函数的方法;(2) 掌握函数实参与形参的对应关系以及“值传递”的方式;(3) 掌握函数的嵌套调用和递归调用的

10、方法;(4) 掌握全局变量和局部变量动态变量、静态变量的概念和使用方法。(5) 学习对多文件程序的编译和运行。3.2 实验要求 (1) 在报告中记录建立、保存C程序实习过程。(2) 完成典型题目,分析遇到的困难和实验中的收获。3.3 实验基本内容1 编程1.1 写一函数,输入一个4位数字,要求输出这4个数字字符,但每两个数字间空一个空格。如输入1990,应输出“1990”。(1) 题目分析:这个题主要是通过摸运算,除法运算把一个四位数各个位数分开。(2) 程序:#includemain() int x,i,j,k,l; scanf(%d,&x); if(x999&x10000) i=x/100

11、0; j=(x/100)%10; k=(x%100)/10; l=x%10; printf(%d %d %d %d,i,j,k,l); (3) 运行结果:输入1990 后的截图为:1.2 用递归法将一个整数n转换成字符串。例如,输入483,应输出字符串“483”。n的位数不确定,可以是任意位数的整数。(1) 题目分析:输入的数的范围在0255,输出的是字符,超过这个就是原样输出了。(2) 程序:#include void main() void exchange(int n); int n; printf(输入一个整数nn); scanf(%d,&n); printf(输出是:nn); if(

12、nb) return(a); else return(b);main() int x=3,y=8,z=6,r; r=fun(fun(x,y),2*z); printf(“%dn”,r);程序运行后的输出结果是 D A)3 B)6 C)8 D)122以下不正确的说法是 D 。A)全局变量,静态变量的初值是在编译时指定的B)静态变量如果没有指定初值,则其初值为0C)局部变量如果没有指定初值,则其初值不确定D)函数中的静态变量在函数每次调用时,都会重新设置初值3写出下面程序的运行结果。# define MAX 10int aMAX, i ;sub1 ( ) for (i=0; iMAX; i+) a

13、i=i+i ;sub2 ( ) int aMAX, i ,max ; max=5; for (i=0; iMAX; i+) ai=i ;sub3 (int a ) int i ; for (i=0; iMAX; i+) printf(“%d ”,ai); printf(“n”);main ( ) sub1( ); sub3(a); sub2( ); sub3(a);4. 若输入的值是125,写出下面程序的运行结果。#include fun (int n) int k,r ; for (k=2; k1) printf(“*”); r = n % k ; if (n!=1) printf(“%dn

14、”,n); main ( ) int n ; scanf(“%d”,&n); printf(“%d=”,n); if (n0) printf(“-”); n = fabs(n); fun(n);5. 写出下面程序的运行结果。int i=0;fun1 (int i) i = (i%i)*(i*i)/(2*i)+4 ; printf(“i=%dn”,i); return (i) ;fun2(int i) i = i=2 ? 5 : 0 ; return (i) ;main ( ) int i = 5 ; fun2(i/2) ; printf(“i=%dn”,i) ; fun2(i=i/2) ; p

15、rintf(“i=%dn”,i) ; fun2(i/2) ; printf(“i=%dn”,i) ; fun1(i/2) ; printf(“i=%dn”,i) ;6. 写出下面程序的功能。func (int n) int i,j,k; i=n/100; j=n/10-i*10 ; k=n%10 ; if (i*100+j*10+k) = i*i*i+j*j*j+k*k*k) return n ; return 0;main ( ) int n,k ; for (n=100; n1000 ; n+) if (k=func(n) printf(“%d”,k) ;功能是:找出一个三位数,使它各位数

16、的3次方的和等于这个数。第四章 指 针4.1 实验目的 (1) 掌握指针的概念,掌握定义和使用指针变量的方法。(2) 掌握使用数组的指针和指向数组的指针变量。(3) 掌握使用字符串的指针和指向字符串的指针变量。(4) 学习对多文件程序的编译和运行。4.2 实验要求 (1) 在报告中记录建立、保存C程序实习过程。(2) 完成典型题目,分析遇到的困难和实验中的收获。4.3 实验基本内容1 编程1.1 编一程序,输入月份号,输出该月的英文月名。例如,输入“3”,则输出“March”,要求用指针数组处理。(1) 题目分析:这道题通过指针数组完成,把输入的月份对应的找到它的地址,然后输出。(2) 程序:

17、#includevoid main()int n; char *name12=January,February,March,April,May,June,July,August,September,October,November,December;scanf(%d,&n);printf(%sn,namen+1);(3) 运行结果1.2 有一字符串,包含n个字符。写一函数,将此字符串中从第m个字符开始的全部字符复制成为另一个字符串(1) 程序:#include#include#includeint str(char * str1,char * str2,int n,int m) char *p

18、; p=&str1m-1; if(mn) str20=0; return 1; do *str2+=*p+; while(*p!=0); *str2=0; return 1;int main() char a9=abcdefsf,b80; str(a,b,8,3); printf(%sn,b); system(pause); return 0;(2) 运行结果2 思考题1若要对a进行自减运算,则a应有下面说明 A 。A)int p3; B)int k; C)char *a3 D)int b10; int *a=p; int *a=&k; int *a=b+1;2. 以下选项中,对指针变量p的不

19、正确操作是 C 。A)int a3, *p; B)int a5, *p; C)int a5; D)int a5p=&a; p=a; int *p=a=100; int *p1,*p2=a; *p1=*p2;3下面程序段的输出是 C 。int a =2,4,6,8,10,12,14,16,18,20,22,24,*q4,k;for (k=01 k4; k+) qk=&ak*3;printf(“%dn”,q30);A)8 B)16 C)20 D)输出不合法4下面程序的运行结果是 B 。main ( ) int x5=2,4,6,8,10, *p, *pp ; p=x , pp = &p ; pri

20、ntf(“%d”,*(p+); printf(“%3d”,*pp);A)4 4 B)2 4 C)2 2 D)4 6 5 .写出下面程序的运行结果。5func(char *s,char a,int n) int j; *s=a; j=n ; while (*ssj) j- ; return j;main ( ) char c6 ; int i ; for (i=1; i=5 ; i+) *(c+1)=A+i+1; printf(“%dn”,fun(c,E,5);第五章 综合练习5.1 实验目的 (1) 掌握指针的概念,掌握定义和使用指针变量的方法。(2) 掌握使用数组的指针和指向数组的指针变量。

21、(3) 掌握使用字符串的指针和指向字符串的指针变量。(4) 学习对多文件程序的编译和运行。5.2 实验要求 (1) 在报告中记录建立、保存C程序实习过程。(2) 完成典型题目,分析遇到的困难和实验中的收获。5.3 实验基本内容1 编程1.1 编写一个程序计算下式之和。1+(1+2)+(1+2+3)+(1+2+3+4)+.+(1+2+3+4+5+6+7+8+9+10)(1) 题目分析:(3) 程序:#includemain() int i,j; int sum=0; for(i=1;i=10;i+) for(j=1;j=i;j+) sum+=j; printf(%d,sum);(3) 运行结果1

22、.2 在主函数中输入一个字符串,然后删除该字符串里面所有的空格,并打印删除空格后的字符串。(用指针)(1) 程序:#include#include#includechar *fun(char *str) int i = 0 ; int j = 0 ; for( ; i strlen(str) ; i+ ) if( stri != )strj+ = stri ; strj = 0 ; return str ;void main() char s81,*ds; printf(nPlease enter a string:); gets(s); ds=fun(s); printf(nResult:%

23、sn,ds);(3)运行结果2. 设p1和p2是指向同一个字符串的指针变量,c为字符变量,则以下不能正确执行的赋值语句是 B 。A)c=*p1+*p2 B)p2=c C)p1=p2 D)c=*p1*(*p2)3若有函数max(a,b),并且已使函数指针变量p指向函数max,当调用该函数时,正确的调用方法是 A 。A)(*p)max(a,b) B)*pmax(a,b); C)(*p)(a,b); D )*p(a,b);4. 写出下面程序的运行结果 :6fun (char *s) char *p=s; while (*p) p+ ; return (p-s) ;main ( ) char *a=”abcdef” ; printf(“%dn”,fun(a) ;5当运行以下程序时,写出输入 6 的程序运行结果。:976531sub(char *a,char b) while (*(a+)!=0) ; while (*(a-1)b) *(a-)=*(a-1); *(a-)=b;main ( ) char s=”97531”,c; c = getchar ( ) ; fun(s,c); puts(s) ;

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1