C语言程序设计基础教程 - 习题答案

内容发布更新时间 : 2025/6/21 4:04:59星期一 下面是文章的全部内容请认真阅读。

if(num[i]) printf(“%c: %d\\n”, i+?A?, num[i] );

以下程序调用findmax函数求数组中值最大的元素在数组中的下标,请补充填空。

# include

findmax (int *s ,int t ,int *k ) { int p;

for(p=0,*k=p;p

if ( s[p] > s[*k] ) __*k=p______; }

void main()

{ int a[10] , i , k ;

for ( i=0 ; i<10 ; i + + ) scanf(\findmax ( a,10,&k );

printf ( \} 8.2.5 以下程序求a数组中的所有素数的和,函数isprime用来判断自变量是否为素

数,请补充填空。

#include void main()

{ int i,a[10],*p= a ,sum=0; printf(\

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

if(isprime(*(p+i)) = = 1)

{ printf(\ sum+= a[i] //或者 *(a+i) 或者 *(p+i) ; } /*打印

素数*/

printf(\ /*打印所有素数的和*/ }

isprime(int x) { int i;

for(i=2;i<=x/2;i + + )

if(x%i = = 0) return (0); return 1 ; } 8.2.6 在下列程序中,其函数的功能是比较两个字符串的长度,比较的结果是函数返

回较长的字符串的地址。若两个字符串长度相同,则返回第一个字符串的地址。

#include

char * fun ( char *s, char *t) { char *ss=s, *tt=t; while((*ss)&&(*tt)) { ss++; tt++; } if (*tt) return tt;

else return ss ;

} 8.2.4

}

void main( )

{ char a[20],b[10],*p=a,*q=b; gets(p);

gets( q );

printf(\}

8.3 写出以下程序的运行结果 8.4.1

main( )

{ int a[ ]={2,4,6,8},*p=a,i;

for(i=0;i<4;i++) a[i]=*p++; printf(\}

运行结果: 6,8 8.4.2

#include void main( ) { int a,b,c;

int x=4,y=6,z=8;

int p1=&x,p2=&y,*p3; a=p1==&x;

b=3*(-*p1)/(*p2)+7; c=*(p3=&z)=*p1*(*p2); printf(\}

运行结果: 1,5,24 8.4.3

#i

>>展开全文<<
12@gma联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4 ceshi