填空题下列程序把数组元素中的最大值放入a[0]中。则在if语句中的条件表达式应该是______。
main()
{ int a [10]={6,7,2,9,1,10,5,8,4,3},*p=a,i,b
for(i=0:i<10:i++,p++)if(______){b=*a;*a=*p;*p=b;}
printf("%d",*a):
}
填空题pow(3.0,2.0)的函数值是______。
填空题以下程序的输出结果是{{U}} 【12】 {{/U}}。
fun(int x,int y,int z)
{ z=x*x+y*y;}
main()
{ int a=31
fun(6,3,a)
printf("%d",a)
}
填空题请补充函数fun(),该函数的功能是:把从主函数中输入的字符串str2倒置后接在字符串str1后面。
例如:str1=“How do”,str2=“?od uoy”,结果输出:“How do you do?”。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。
试题程序:
#include<stdio.h>
#include<conio.h>
#define N 40
void fun(char *str1,char *str2)
{
int i=0,j=0,k=0,n;
char ch;
char *p1=str1;
char *p2=str2;
while(*(p1+i))
i++;
while(*(p2+j))
j++;
n={{U}} 【1】 {{/U}};
for(;k=j/2;k++,j--)
{
ch=*(p2+k);
*(p2+k)=*(p2+j);
*(p2+j)=ch;
}
{{U}}【2】 {{/U}};
for(;{{U}} 【3】 {{/U}};i++)
*(p1+i)=*p2++;
*(p1+i)='/0';
}
main()
{
char str1[N],str2[N];
int m,n,k;
clrscr();
printf("***Input the string str1 & str2
***/n");
printf("/nstr1:");
gets(str1);
printf("/nstr2:");
gets(str2);
printf("***The string str1 & str2 ***/n");
puts(str1);
puts(str2);
fun(str1,str2);
printf("*** The new string ***/n");
puts (str1);
}
填空题下面程序的输出结果是{{U}} 【15】 {{/U}}。
long fun5(int n)
{ long s;
if((n==1)||(n==2))
s=2;
else
s=n+fun5(n-1);
return(s);}
main()
{ long x;
x=fun5(4);
printf("%ld/n",x);}
填空题请补充main函数,该函数的功能是:从字符串str中取出所有数字字符,并分别计数,然后把结果保存在数组b中并输出,把其他字符保存在N[10]中。
例如:当str1=“ab123456789cde090”时,结果为:
0: 2 1: 1 2: 1 3: 1 4: 1 5: 1 6: 1 7: 1 8: 1 9:2 other charactor:5
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。
试题程序:
#include <stdio.h>
#include <conio.h>
main()
{
int i,b[11];
char *str="abl23456789cde090";
char *p=str;
clrscr();
printf("***the origial data ***/n");
puts(str);
for(i=0;i<11;i++)
b[i]=0;
while(*p)
{
switch({{U}} 【1】 {{/U}})
{
case '0':b[0]++;break;
case '1':b[1]++;break;
case '2':b[2]++;break;
case '3':b[3]++;break;
case '4':b[4]++;break;
case '5':b[5]++;break;
case '6':b[6]++;break;
case '7':b[7]++;break;
case '8':b[8]++;break;
case '9':b[9]++;break;
{{U}} 【2】 {{/U}}
}
{{U}} 【3】 {{/U}}
}
printf("****** the result ********/n");
for(i=0;i<10;i++)
printf("/n%d:%d",i,b[i]);
printf("/nother charactor:%d",b[i]);
}
填空题函数min()的功能是:在带头结点的单链表中查找数据域中值最小的结点。请填空
#include <stdio.h>
struct node
{ int data;
struct node *next;
};
int min(struct node *first)/*指针first为链表头指针*/
{ struct node *p; int m;
p=first->next; re=p->data; p=p->next;
for( ;p!=NULL;p={{U}} 【20】 {{/U}})
if(p->data<m ) re=p->data;
return m;
}
填空题以下程序的运行结果为 【11】 。main() static int number[6]=1,2,3,4,5,6; int m=4,j; move(number,6,m); for (j=0;i<5;j++) printf("%d,",number[j]); printf("%d",number[5]);move(array,n,m)int n,m,array[6]; int *p,array_end; array_end=*(array+n-1); for(p=array+n-1;p>array;p--) *p=*(p-1); *array=array_end; m--; if(m>0)move(array,n,m);
填空题需求分析的最终结果是产生 【1】 。
填空题设X、y、Z均为int型变量,请写出描述“X或y中至少有一个小于Z”的表达式 (6) 。
填空题以下程序运行后的输出结果是 【12】 。 mam() char a[]="123456789",*p; int i=0; p=a; while(*p) if(i%2=0) *p='*'; p++;i++; puts(A) ;
填空题有以下程序: int fa(int x)return x*x; int fb(int x)return x*x*x; int f(int(*f1)(),int(*f2)(),int x) return f2(x)-f1(x); main() int i:i=f(fa,fb,2);printf("%d/n",i); 程序运行后,输出结果是 【8】 。
填空题下面程序的输出结果是______。 maim( ) char b[]="Hello you"; b[5]=0; printf("%s/n",b);
填空题以下程序由终端键盘输入一个文件名,然后把从终端键盘输入的字符依次放到该文件中,用井作为结束输入的标志。请填空。 # include<stdio.h> main( ) FILE * fp; char ch,fname[10]; printf("Input the name of file/n"); gets(fname); if((fp= 【16】 )==NULL) printf("Can not ope/n");exit(O); printf("Enter data/n"); while((ch=getchar())!=' # ') fputc( 【17】 ,fp); fclose(fp);
填空题以下程序的功能是:对输入的一行字符串的数字字符按它们的字面值累加,输出此累加和。例如,输入一行字符是:ab34dh8u,输出值应当是15。请填空。 #include <stdio.h> #include <ctype.h> main() char ch; int a,s; 【11】 ; while((ch=getchar()) 【12】 ) if( isdigit (ch)) a= 【13】 ;s+=a; printf("s=%d/n/n",s);
填空题下列给定程序中,函数proc()的功能是:从m个学生的成绩中统计出低于平均分的学生人数,人数由函数值返回,平均分存放在形参aver所指的存储单元中。例如输入8名学生的成绩:
60 70 80 90 65 75 85 95
则低于平均分的学生人数为4(平均分为77.5)。实际输入时学生数以回车键作为结束,成绩与成绩之间也与回车键作为分隔。
请修改程序中的错误,使它能得到正确结果。
注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。
试题程序:
#inelude<stdlib.h>
#include<stdio.h>
#include<conio.h>
#define M 20
int proc (float *s, int n, float * aver)
{
//************found*************
int ave, t=0;
int count=0, k, i;
for(k=0; k<n; k++)
t+=s[k];
ave=t/n;
for(i=0; i<n; i++)
//************found************
if(s[i]>ave)
count++;
//************found*************
aver=ave;
return count;
}
void main()
{
float stu[30], aver;
int m, i;
system("CLS");
printf("/nPlease enter m: ");
scanf("%d", &m);
printf("/nPlease enter%d mark: /n", m);
for(i=0; i<m; i++)
scanf("%f", stu+i);
printf("/nThe number of students: %d/n",
proc(stu, m, &aver));
printf("Ave=%f/n", aver);
}
填空题有以下程序: #include<stdio.h> #include<string.h> void fun(char*str) char temp;int n,i; n=strlen(str); temp=str[n-1]; for(i=n-1;i>0;i--)str[i]=str[i-1]; str[0]=temp; main() char s[50]; scanf("%s",s);fun(s);printf("%s/n",s); 程序运行后输入:abcdef<回车>,则输出结果是______。
填空题以下程序运行后的输出结果是______。 #include<stdio.h> main() int a=37; a%=9;printf("%d/n",a);
填空题请补充main()函数,该函数的功能是:先以只写方式打开文件“out.dat”,再把字符串str中的字符保存到这个磁盘文件中。
注意:部分源程序给出如下。
请勿改动main()函数和其他函数中的任何内容,仅在横线上填入所编写的若干表达式或语句。
试题程序:
#include<stdlib.h>
#include<stdio.h>
#include<conio.h>
#define M 80
void main ()
{ FILE*fp;
int i=0;
char ch;
str[M]="I"m a student!";
system("CLS");
if((fp=fopen(______))==NULL)
{
printf("cannot open out.dat/n");
exit(0);
}
while (str[i])
{
ch=str[i];
______;
putchar(ch);
i++;
}
______;
}
填空题下列程序的输出结果是{{U}} 【13】 {{/U}}。
void fun(int*n)
{while ((*n)--);
printf("%d",++(*n));
}
main()
{ int a=1000;
fun(
}
