第一范文网 - 专业文章范例文档资料分享平台

c语言阅读程序题

来源:用户分享 时间:2025/7/23 9:00:41 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

阅读程序题(共13分)

6.以下程序运行时输出结果是 (6 ) 。 #include #define M 3 #defme N M+1 #define NN N*N/2 main() .

{printf(\,NN);}

7.以下程序运行时输出结果是 (7) 。 #include main()

{char a=256: int d=a;

prinff(\,d+1);

} 、

8•有如下程序,假定所用编译系统用两个字节存储一个int型操作数,已知输出结果第一行是FFD2,则第二行应当是( 8)

main()

{int a[10]={1,2,3,4,5,6,7,8,9,0},*p;

P=&a[5];

printf(\,p);printf(\

9•以下程序运行时输出结果的第一行是(9) ,第二行是(10)。 int C:

void fl(int x,int *sum) {static int y;

x++;y++;c=c+y; *sum=(x+y)/c; }

main()

{int a,b=100:

for(a=O;a<2;a++)

{f1(a,&b);printf(\,a,b,c)} ,

10.以下程序运行时输出结果的第一行是___(11)_______,第三行是______(12)__________

#include

void mat_change(int b[4][4]) {int i,j,m,n,k,c[6][6]; for(i=0;i<6;i++)

for(j=0;j<6;j++) c[i][j]=1; for(i=1;i<5;i++)

for(j=1;j<5;j++) c[i][j]=b[i-1][j-1];

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

{if(c[i][j]==0) {k=0;

for(m=-1;m<=1;m++)

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

if(!(m==O&&n==O))k=k+c[i+m][j+n]; if(k==8)c[i][j]=1; }

}

for(i=1;i<5;i++) for(j=1;j<5;j++) b[i-1][j-1]=c[i][j]; }

main()

{int i,j,a[4][4]={{0,1},{1,1,1,l},{0,1,0,1},{0,1,1,1}}; mat_change(a);

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

{for(j=0;j<4;j++)printf(\,a[i][j]); printf(\; }

}

11.以下程序运行时输出结果是(13) 。 #include

void f(int a[],int n,int x,int *c);

main()

{int a[10]={1,3,5,2,3,5,3,7,4,1},t=0; f(a,10,5,&t);printf(\,t); }

void f(int a[],int n,int X,int *c) {if(n==0)return; if(a[O]>=x)(*c)++;

f(a+1,n-1,x,c); }

12.以下程序运行时输出结果的第一行是 (14) ,第二行是(15) ,第三行是(16) #include typedef struct s {

int index; int value; }M;

main()

{static int i,j,k,c[4][4];

M a[10]={{0,1},{3,2},{5,3},{6,4},{9,5},{15,6},{-l,0}},*p=a, b[10]={{1,1},{3,2},{4,3},{6,4},{lO,5},{13,6},{-1,0}},*q=b; while(p->index!=-1) {

i=p->index/4; j=p->index%4; c[i][j]=P->value; p++; }

while(q->index!=-1) {

i=q->index/4; j=q->index%;

c[i][j]+=q->value; q++; }

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

for(j=0;j<4;j++) printf(\,c[i][j]); printf(\

} }

13.以下程守运行时输出结果的第一行是__(17)______ ,第二行是____(18)________ 。

void q(char *s,int left, int right) { int i,j;

char x,y;

i=left; j=right;

x=s[(1eft+right)/2]; do

{while(s[i]>x&&ileft)j--; if(i<=j) { y=s[i]; s[i]=s[j]; s[j]=y; i++;j--; }

}while(i<=j); }

main()

{char strl[6]=\,str2[7]=\; q(strl,0,4);puts(strl);

q(str2,1,4);puts(str2);

}

●完善程序题(共12分) 7

14.如果一个两位整数是质数,将组成它的两个数字交换位置后形成的整数仍为质数,则称这

样的数为绝对质数。例如,13就是一个绝对质数。以下程序用于找出所有两位绝对质数。

#include int a_prime(int n) {int j,k,m[2]; m[O]=n;

m[1]= _____(19)_______ ; for(j=0;j<2;j++)

for(k=m[j]/2;k>1;k--) if( (20) )return 0; return 1; }

main() {int i;

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

if(a_prime(i))printf(\,i);

} 20 i

15.计算∑ ∑n!的值,即求(1!)+(1!+2!)+(1!+2!+3!)+…+(1!+2!+3!+…+20!) i=1 n=1

main()

{int i,n;double s=0,t;

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

{ ________(21)__________ ;

for(n=1;_____(22)___________ ;n++) { t=t*n;s=s+t;}

}

printf(\\\n\,s); } .

16.以下程序中函数strmerge的功能是:合并a和b两个有序的字母字符串(字典序)而产生一

个新的字符串,在合并的过程中删除重复出现的字符,合并后的字符串仍然保持原序并保

存到c指向的数组中,函数返回在合并过程中删除的字符个数。main函数中输出合并后

的字符串“copy”以及在合并过程中删除的字符个数3。 include

int strmerge(char *a,char *b,char *c) {int i=0,j=0,k=O;char t;

搜索更多关于: c语言阅读程序题 的文档
c语言阅读程序题.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c0hhfb011p1797950l84t_1.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top