return(p);
}
48、下列程序的功能是把输入的十进制长整型数以十六进制数的形式输出main()
{charb[]="0123456789ABCDEF";
intc[64],d,i=0,base=16;
longn;
scanf("%ld",&n);
do
{c[i]=;i++;n=n/base;}while(n!
=0);
for(--i;i>=0;--i){d=c[i];printf("%c",b[d]);}
}
49、以下程序的功能是从键盘上输入两个数据,如果相等则输出。
main()
{inta,b,*pa,*pb,*p;
pa=&a;
pb=&b;scanf(“%d,%d”,pa,pb);
if()
printf(“%d<%d\n”,*pa,*pb);}
50、从键盘上输入一个字符串,统计字符串中的字符个数。
不许使用求字符串长度函数strlen()。
#include"stdio.h"
main()
{charstr[81],*p=str;
intnum=0;
printf("inputastring:
\n");
while()num++;
printf("length=%d\n",num);
}
51、编写程序,实现两个字符串的比较。
不许使用字符串比较函数strcmp()。
#include"stdio.h"
main()
{charstr1[81],str2[81],*p1=str1,*p2=str2;
printf("inputstringstr1:
");
gets(str1);
printf("inputstringstr2:
");
gets(str2);
while(*p1&&*p2)
if(*p1==*p2){p1++;p2++;}
else;
printf("%d\n",*p1-*p2);
}
52、下面程序的功能是:
从键盘输入若干个学生的成绩,统计并输出最高成绩和最低成绩,当输入负数时结束输入。
main()
{floatx,max,min;
scanf(“%f”,&x);
max=x;
min=x;
while()
{if(x>max)max=x;
if(xscanf(“%f”,&x);}
printf(“max=%fmin=%f”,max,min);
}
53、下面程序的功能是:
输出100以内能被3整除且个位数为6的所有整数,请填空。
main()
{inti,j;
for(i=0;i<10;i++)
{j=i*
10+6;
if()
continue;
printf(“%d”,j);
}
}
54、下列程序的功能是输出数组s中最大元素的下标
main()
{intk,i;
ints[]={3,-8,7,2,-1,4};
for(i=0,k=i;i<6;i++)
if(s[i]>s[k])
printf("k=%d\n",k);
}
55、下列程序的功能是将数组a的元素按行求和并且存储到数组s中。
main()
{int;
inta[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}};
inti,j;
for(i=0;i<3;i++)
{for(j=0;j<4;j++)s[i]+=a[i][j];printf(“%d”,s[i]);
}
printf(“\n”);
}
56、下列程序把b字符串连接到a字符串的后面,并返回a中新串的长度。
strcen(chara[],charb[])
{intnum=0,n=0;
while(*(a+num)!
=)num++;
while(b[n])
{*(a+num)=b[n];
num++;
n++;}
return(num);
}
57、输出1~100之间能被9整除的所有整数。
main()
{inti;
for(i=1;i<=100;i++)
{if(i%9)
printf("%d",i);
58、从键盘输入若干个字符(以回车键作为结束)组成一个字符串存入一个字符数组,然后输出该数组中的字符串。
#include"stdio.h"
main()
{charstr[81],*ptr;
inti;
for(i=0;i<80;i++)
{str[i]=getchar();
if(str[i]=='\n')break;
}
str[i]=;
ptr=str;
while(*ptr)putchar(*ptr++);
}
59、本程序使用指向函数的指针变量调用函数max()求最大值。
main()
{