- 程序填空题
1.以下程序的功能是将字符串s中的数字字符放入d数组中,最后输出d中的字符串,例如,输入字符串abc123ed456gh,执行程序后输出123456。请填空。
main()
{ char s[80],d[80]; int i,j;
gets(s);
for(i=j=0;s[i]!='\0';i++)
if( s[i]>=’1’&&s[i]<=’9’ )
{ d[j]=s[i]; j++; }
d[j]='\0';
puts(d);
return 0; }
2.编程计算1+5+9+……+101的值
#include <stdio.h>
main()
{
int i, sum = 0;
for (i = 1; i<=101 ; i=i+4 )
sum = sum + i;
printf("sum=%d\n", sum);
}
3.以下程序是将字符串b的内容连接字符数组a的内容后面,形成新字符串a,请填空使程序完整。
main ( )
{ char a[40]=”Great ”, b[ ]=”Wall”;
int i=0,j=0 ;
while (a[i]!=’\0’) i++ ;
while ( j<strlen(b) )
{
a[i]=b[j] ; i++ ; j++ ;
}
a[i]='\0';
printf(“%s\n”,a);}
4.用递归方法,编写程序求n! 请填空。
int fac(int n) //定义递归函数fac
{
int f;
if(n<0)
printf("n<0,data error!");
else if ( n==0||n==1 )
f=1;
else
f=fac(n-1)*n;
return(f); }
int main()
{ int n;
int y;
printf("请输入数字,求阶乘:");
scanf("%d",&n);
y= fac(n) ; //调用fac函数,求n!
printf("%d!=%d\n",n,y);
return 0;}
5. 下面程序的功能是在a数组中查找与x值相同的元素所在位置,请填空。
#include <stdio.h>
void main()
{
int a[10],i,x;
printf("input 10 integers:");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
printf("input the number you want to find x:");
scanf("%d", &x );
for(i=0;i<10;i++)
if( a[i]==x )
break;
if( i<10 )
printf("the pos of x is:%d\n",i);
else
printf("can not find x!\n");
}
6.下面的程序输入学生的姓名和成绩,请填空使程序完整。
struct student
{ char name[20];
float score;
}stu, *p;
void main( )
{ p=&stu;
printf(“Enter name:”);
gets( p->name );
printf(“Enter score:”);
scanf(“%f”, &p-> score );
printf(“Output:%s, %f\n”,p->name,p->score);
}
C语言期末习题(部分)
最新推荐文章于 2023-06-08 19:50:25 发布