程序填空题

2024-12-26 08:16:20
推荐回答(1个)
回答1:

1、求1!+2!+3!+。。。+10!
#include
void main(void)
{
float s = 0, t = 1;
int n;
for (n=1; n<=10 ; n++) {
t*=n ;
s+=t ;
}
printf(“1!+2!+3!+。。。+10!=%f”, s);
}
2、以下程序是用来统计从键盘输入的一个正整数中各位数字中零的个数,并求各位数字中最大者。例如:1080其零的个数是2,各位数字中最大者是8。
#include
void main(void)
{
unsigned long num, max, t;
int count;
count=max=0;
scanf("%ld", &num);
do {
t= num%10 ;
if(t==0) ++count;
else
if(max num/=10;
} while(num);
printf("count=%d,max=%ld\n", count, max);
}

3、下面程序的功能是:输出100以内能被3整除且个位数为6的所有整数。
#include
void main(void)
{
int i, j;
for(i=0; i<10 ; i++) {
j = i*10+6;
if ( j%3!=0 ) continue;
printf("%d",j);
}
}

4、以下函数的功能是,把两个整数指针所指的存储单元中的内容进行交换。
void exchange(int *x, int *y)
{

int t;
t=*y;
*y =*x ;
*x = t ;
}

三、阅读程序,写出程序的输出结果(24分)
1、#include
void main(void)
{
char *s, *s1 = “here is”, *s2 = “key”;
s = s1;
while (*s1!=’\0’) s1++;
while (*s1++=*s2++);
s2 = s;
while (*s2!=’\0’) s2++
printf(“%d\n”, s2-s);
}
这个程序貌似有错误。。

2、#include
void main(void)
{
static int a[] = {1, 3, 5, 7};
int *p[3] = {a+2, a+1, a};
int **q = p;
printf(“%d\n”, *(p[0]+1) + **(q+2));
}
8(p[0]是a[2]的地址,p[0]+1是a[3]的地址, *(p[0]+1) =a[3]=7, **(q+2)=*p[2]=a[0]=1)

3、include
void main(void)
{
int num,c;
printf("请输入一个整数:");
scanf("%d",&num);
do {
c=num%10;
printf("%d",c);
} while((num/=10)>0);
printf("\n");
}
输出值就是输入的整数倒过来的数,比如输入123,输出321

4、include
fut(int **s, int p[2][3])
{
**s=p[1][1];
}
void main(void)
{
int a[2][3] = {1,3,5,7,9,11}, *p;
p = (int *) malloc(sizeof(int));
fut(&p,a);
printf("%d\n",*P);
}
9(输出a[1][1]的值)