填空题若变量n中的值为24,则prnt函数共输出{{U}} 【20】 {{/U}}行。
void prnt(int n,int aa [])
{ int i;
for(i=1;i<=n;i++)
{printf("%6d",aa[i]);
if(!(i%5))printf("/n");
}
printf("/n");
}
填空题请补充main函数,该函数的功能是:输出一个NXN矩阵,要求非周边元素赋值0,周边元素赋值1。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在 main函数的横线上填入所编写的若干表达式或语句。
试题程序:
#include<stdio .h>
#define N 10
main()
{
int bb[N] IN];
iht i,j,n;
clrscr 0;
printf (" /nInput n: /n");
scanf ("%d",
for (i=0; i<n; i++ )
for (j=0; j<n; j++)
{
if({{U}}【1】{{/U}})
bb[i] [j]=l;
else
{{U}}【2】{{/U}};
}
printf(" /n*** the result *** /n");
for (i=0; i<n; i++)
{
printf (" /n/n");
for (j=0; j<n; j++)
printf ("%4d",bb [i] [j ] );
}
}
填空题软件工作三要素包括方法、工具和过程,其中,______支持软件开发的各个环节以及控制和管理。
填空题
给定程序MODI1.C中函数fun的功能是:计算n!。
例如,给n输入5,则输出120.000000。
请改正程序中的错误,使程序能输出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
给定源程序:
#include<stdio.h>
double fun(int n)
{double result=1.0;
/**********found**********/
if n==0
return 1.0;
while(n>1
}
main()
{ int n;
printf("Input N:");
scanf("%d",
printf("/n/n%d!=%lf/n/n", n, fun(n));
}
填空题下面程序的输出结果是{{U}} 【12】 {{/U}}。
char b[]="ABCD";
main()
{
char b[30];
strcpy(
printf("%s/n",b) ;
}
填空题以下程序建立了一个带有头结点的单向链表,链表结点中的数据通过键盘输入,当输人数据为-1时,表示输入结束(链表头结点的data域不放数据,表空的条件是ph->next=NULL). # include<stdio.h> struct list int datd;struct list * next;; {{U}} 【19】 {{/U}} creatlist( ) struct list * p,*q,*ph; int a; ph= (struct list*)malloc(sizeof(struct list)); p=q=ph; printf("Input an integer number,enter-1 to end:/n"); scanf("%d",&a); while(a!=-1) p=(struct list * )malloc(sizeof(struct list)); p->data=a; q->next=p; {{U}} 【20】 {{/U}} =p; scanf("%d",&a); p->next='/0'; return(ph); main( ) struct list head; head=creatlist( );
填空题下列程序的输出结果是______。
#include<stdio.h>
fun()
{ static int a=0;
a+=3;printf("%d",a);
}
main()
{ int cc;
for(cc=1 ;cc<5;cc++)fun();
printf("/n");
}
填空题设在主函数中有以下定义和函数调用语句,且fun函数为void类型;请写出fun函数的首部{{U}} 【9】 {{/U}}(要求形参名为b)。
main()
{ double s[10][22];
int n;
……
fun (s);
……
}
填空题给定程序中,函数fun的功能是:调用随机函数产生20个互不相同的整数放在形参a所指数组中(此数组在主函数中已置0)。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:
部分源程序在文件BLANK1.C中。不得增行或删行,也不得更改程序的结构!
[试题源程序]
#include<stdlib.h>
#include<stdio.h>
#define N 20
void fun(int*a)
{int i,x,n=0;
x=rand()%20;
/***********found**********/
while(n<______)
{for(i=0;i<n;i++)
/***********found**********/
if(x==a[i])
______;
/***********found**********/
if(i==______)
{a[n]=x;n++;}
x=rand()%20;
}
}
main()
{int x[N]={0},i;
fun(x);
printf("The result:/n");
for(i=0;i<N;i++)
{printf("%4d",x[i]);
if((i+1)%5==0)printf("/n");
}
printf("/n/n");
}
填空题复合语句在语法上被认为是______。空语句的形式是______。
填空题若s是int型变量,且s=8,则s%3+(s+1)%3表达式的值为______。
填空题执行下列语句段后,x的值是______。 int*P,x; x=100: p=&x; x=*p+50;
填空题下列程序的功能是通过函数func输入字符并统计输入字符的个数。输入时用字符@作为输入结束标志,请填空。 #include<stdio.h> long______;/*函数说明语句*/ main() long n; n=func();printf("n=%1d/n",n); long func() long m; for(m=0;getchar()!='@';______); return m;
填空题下列程序输出的结果是 【19】 。 fun(int x) static int a=3; a+=x; return(a); main() int k=2,m=1,n; n=fun(k); n=fun(m); printf("%d/n",n);
填空题给定程序中,函数fun的功能是:找出100至x(x≤999)之间各位上的数字之和为15的所有整数,然后输出;符合条件的整数个数作为函数值返回。
例如,当n值为500时,各位数字之和为15的整数有:159、168、177、186、195、249、258、267、276、285、294、339、348、357、366、375、384、393、429、438、447、456、465、474、483、492。共有26个。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在
下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
给定源程序:
#include<stdio.h>
int fun(int x)
{int n, s1, s2, s3, t;
/**********found**********/
n=______;
t=100;
/**********found**********/
while(t<=______)
{ s1=t%10; s2=(t/10)%10; s3=t/100;
if(s1+s2+s3==15)
{printf("%d", t);
n++;
}
/**********found**********/
______;
}
return n;
}
main()
{ int x=-1;
while(x>999||x<0)
{printf("Please input(0<x<=999):");
scanf("%d", }
printf("/nThe result is:%d/n", fun(x));
}
填空题请补充函数fun(),该函数的功能是:删去一维数组中所有相同的数,使之只剩一个。数组中的数已按由小到大的顺序排列,函数返回删除后数组中数据的个数。
例如,若一维数组中的数据是:1,1,1,2,2,2,3, 4,4,5,5,6,6,7,7,8,9,9,10,10。
删除后,数组中的内容应该是:1,2,3,4,5,6,7, 8,9,10。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。
试题程序:
#include<stdio.h>
#define N 80
int fun(int a[],int n)
{
int i, t,j=0;
t=a[0];
for(i=1;i<n;i++)
if({{U}} 【1】 {{/U}})
;
else
{
{{U}} 【2】 {{/U}};
t=a[i];
}
a[j++]=t;
return j;
}
main()
{
int a[N]={1,1,2,2,2,3,4,4,5,5,6,6,6,
7,7,8,9,9,10,10},i,n=20;
printf("The original data:/n");
for(i=0; i<n; i++)
printf("%4d",a[i]);
n=fun(a,n);
printf("/n/nThe data after deleted ;
/n");
for (i=0;i<n;i++)
printf("%4d",a[i]);
printf("/n");
}
填空题有一种攻击是针对网络低层协议而不是针对某项特定的应用服务,这种攻击称为 【15】 。 下面rotate函数的功能:将n行n列的矩阵A转置为A',请填空。 # define N 4 void rotate(int a[][N]) int i, j, t; fori=0; i<N; j++ forj=0; 【16】 ; j++ t=a[i][j]; a[i][j]=a[j][i]; a[j][i]=t;
填空题下面的if语句与y=(x>=10)?3*x-11:(x<1)?x:2*x-1;的功能相同,请补充完整。
if({{U}} 【10】 {{/U}})
if({{U}} 【11】 {{/U}})y=2*x-1;
else y=x;
else y=3*x-11;
填空题给定程序MODI1.C中函数fun的功能是输出M行M列整数方阵,然后求两条对角线上元素之和,返回此和数。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
给定源程序如下。
#include<stdio.h>
#define M 5
/*************found**********/
int fun(int n,int xx[][])
{ int i,j,sum=0;
printf("/nThe %d x %d matrix:/n",M,M);
for(i=0;i<M;i++)
{ for(j=0;j<M;j++)
/***********found*********/
printf("%f,xx[i][j]);
printf("/n");
}
for(i=0;i<n;i++)
sum+=xx[i][i]+xx[i][n-i-1];
return(sum);
}
main()
{ int aa[M][M]={{1,2,3,4,5},{4,3,2,1,0},
{6,7,8,9,0},{9,8,7,6,5},{3,4,5,6,7}};
printf("/nThe sum of all elements on 2 diagnals is%d.",fun(M,aa));
}
填空题53. 有两个C程序文件T18.c和myfun.c同在VC系统目录(文件夹)下,其中T18.c文件如下: #include <stdio.h> #include "myfun.c" main( ) fun(); prinff("//n"); myfun.c文件如下: void fun( ) char s[80],c;int n=0; while((c=getchar())! :'//n') s[n++] =c; n--; while ( n>=0) prinff("%c" , s [n--] ); 当编译连接通过后,运行程序T18时,输入"Thank!”,则输出结果是{{U}} {{/U}}。
