putchar(*ptr);
}
运行结果是________________________
5、以下程序运行时,当输入Language Programming[Enter],其结果是____________
#include
main()
{
charstr[30];
scanf("%s",str);
printf("%s\n",str);
}
6、阅读下面程序,设编译后生成的可执行文件名为cfile
#include
main(intargc,char*argv[])
{
while(argc>1)
{
++argv;
printf("\n%s",*argv);
--argc;
}
}
7、有以下程序
voidss(char*s,chart)
{while(*s)
{if(*s==t)*s=t-‘a’+’A’;
s++;
}
}
main()
{charstr1[100]=“abcddfefdbd”,c=’d’;
ss(str1,c);printf(“%s\n”,str1);
}
程序运行后的输出结果是_________________________
8、下面程序输出3到100之间的所有素数。
#include
main()
{ inti,j;
for(i=3;i<=100;i++)
{ for(j=2;j<=i-1;j++)
if(_____________)break;
if(____________)
printf(“%4d”,i);
}
}
9、下面的函数sum(intn)计算1~n的累加和
sum(intn)
{if(n<=0)
printf(“dataerror!
\n”);
if(n==1)______________;
else________________;
}
10、下面的程序是使用冒泡法对输入的10个浮点数从小到大进行排序。
#include
main()
{ floata[10],x;
inti,j;
printf(“input10numbersplease\n”);
for(i=0;___________;i++)
scanf(“%f”,&a[i]);
printf(“\n”);
for(i=1;____________;i++)
for(j=0;j<10-i;j++)
if(a[j]>a[j+1] )
{x=a[j];
________________;
a[j+1]=x;
}
三、编程
1、写一函数,求方程aX2+bX+c=0的根。
从主函数输入a、b、c的值
2、写一函数,输入一个二进制数,输出相应的十进制数
3.建立一个链表,每个结点包括:
学号、姓名、性别、年龄。
输入一个年龄,如果链表中的结点所包含的年龄等于此年龄,将此结点删去
习题8答案
一、选择题
1、C 2、B 3、D 4、C 5、D 6、A 7、C 8、C 9、D 10、A
11、C12、D13、D14、A 15、B
二、程序填空
1.Abother 2.8 4 3.i=10,j=11 4.Porm 5.Language
6.computer C_LANGUAGE 7.abcDDfefDbD
8、i%j==0 j==I
9、return
(1) return(sum(n-1)+n)
10、i<10 i<9 ja[j]=a[j+1]
三、编程
1.
#include
floatx1,x2,disc,p,q;
greater_than_zero(floata,floatb)
{x1=(-b+sqrt(disc))/(2*a);
x2=(-b-sqrt(disc))/(2*a);
}
equal_to_zero(floata,floatb)
{x1=x2=(-b)/(2*a);
}
smaller_than_zero(floata,floatb)
{ p=-b/(2*a);
q=sqrt(disc)/(2*a);
}
main()
{ floata,b,c;
scanf(“%f,%f,%f”,&a,&b,&c);
disc=b*b-4*a*c;
if(disc>0)
{ greater_than_zero(a,b);
printf(“x1=%5.2f\tx2=%5.2f\n\n”,x1,x2);
elseif(disc==0)
{equal_to_zero(a,b);
printf(“x1=%5.2f\tx2=%5.2f\n\n”,x1,x2);
}
else
{smaller_than_zero(a,b);
printf(“x1=%5.2f\tx2=%5.2f\n\n”,x1,x2);
}
}
2.
#include"stdio.h"
main()
{
intadd(intm,intn,intarr[]);
inttotal,a[3][4]={3,8,9,10,2,5,-3,5,7,0,-1,4};
total=add(3,4,a[0]);
printf("total=%d",total);
}
add(intm,intn,intarr[])
{
inti,j,sum=0;
for(i=0;i for(j=0;j sum=sum+arr[i*n+j];
for(j=0;j for(i=1;i sum=sum+arr[i*n+j];
return(sum);
}
3.
#defineNULL0
#defineLENsizeof(structstudent)
structstudent
{charnum[6];
charname[8];
charsex[2];
intage;
structstudent*next;
}stu[10];
main()
{ structstuent*p;*pt,*head;
intI,length,iage,flag=1;
intfind=0;
while(flag==1)
{ scanf(“%d”,&length);
if(length<10)
flag=0;
}
for(I=0;I {p=(structstudent*)malloc(LEN);
if(I==0)
head=pt=p;
else
pt->next=p;
pt=p;
scanf(“%s”,p->num);
scanf(“%s”,p->name);
scanf(“%s”,p->sex);
scanf(“%d”,&p->age);
}
p->next=NULL;
printf(“inputage:
”);
scanf(“%d”,&iage);
pt=head;
p=pt;if(pt->age==iage)