填空题以下程序中函数huiwen的功能是检查一个字符串是否是回文,当字符串是回文时,函数返回字符串yes!,否则函数返回字符串no!,并在主函数中输出,所谓回文即正向与反向的拼写都一样,例如:adgda。请填空。 #include<string.h> char*huiwen (char*str) char*p1,*p2;int i,t=0; p1=str;p2=______。 for(i=0;i<strlen(str)/2;i++) if(*p1++!=*p2-)t=1;break; if(______)return("yes"!); else return("no!"); main() char str[50]; printf("Input:");scanf("%s",str); printf("%s/n", ______);
填空题下面函数用来求出两个整数之和,并通过形参传回两数相加之和值。请填空。
int add(int x,inty,{{U}} 【15】 {{/U}},)
{ {{U}} 【16】 {{/U}} =x + y;}
填空题函数fun的功能是:输出a所指数组中的前n个数据,要求每行输出5个数。
请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。
注意:不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdio.h>
#include<stdlib.h>
void fun(int*a,int n)
{int i;
for(i=0;i<n;i++)
{
/*********found*********/
if(______==0)
/*********found*********/
printf("______");
/*********found*********/
printf("%d",______);
}
}
inain()
{int a[100]={0},i,n;
n=22;
for(i=0;i<n;i++)
a[i]=rand()%21;
fun(a,n);
printf("/n");
}
填空题fseek函数的正确调用形式是______。
填空题以下程序的输出结果是 【13】 。 main() char s[]="ABCD",*p; for(p=s+1;p<s+4;p++)printf("%s/n",p);
填空题函数delete(s,i,n)的作用是从字符串s中删除从第i个字符开始的n个字符,请填空。
void delete(char s[],int i,int n)
{ int j,k,length=0;
whiles(length])
{{U}} 【16】 {{/U}};
-i;
j=i;
}
if({{U}} 【17】 {{/U}})
{ k=i+n;
if(i+n<=length)
while(k<length)
s[j++]=s[k++];
s[j]='/0';
}
填空题用指针法求出数组元素中最大者和最小者。 int max,min; void max_min_value(array,n) int array[],n; 【11】 ; max=min=*array; for( 【12】 ;p<array+n;p++) if(*p>max) max=*p; else if(*p<min)min=*p; main() int i,number[20],*p; p=number; printf("输入20个数据:/n"); for(i=0;i<20;i++,p++) scanf("%d",p); 【13】 ; max_min_value(p,10); printf("max=%-10dmin=%d/n",max,rain);
填空题有以下程序: #include <stdio.h> main() int t=1,i=5; for(;i>=0;i--) t*=i; printf("%d//n",t); 执行后的输出结果是{{U}} {{/U}}。
填空题若有如下程序: main() int x=4,y=1; printf("%d/n",sub(x,sub(x,y))); sub(int i,int j) static int a=0; int b=2; a+=i+b; b+=j+a; 则程序运行后的输出结果是 【17】 。
填空题以下说明语句中,{{U}} 【13】 {{/U}}是结构体类型名。
typedef struct
{ int n;
char ch[8];
}PER;
填空题给定程序中,函数fun的功能是:求出形参ss所指字符串数组中最长字符串的长度,将其余字符串右边用字符*补齐,使其与最长的字符串等长。ss所指字符串数组中共有M个字符串,且串长小于N。
请在程序的下划线处填入正确的内容,使程序得出正确的结果。
注意:部分源程序给出如下。
不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdio.h>
#include<string.h>
#define M 5
#define N 20
void fun(char(*ss)[N])
{int i,j,n,len=0;
for(i=0;i<M;i++)
{len=strlen(ss[i]);
if(i==0)n=len;
if(len>n)n=len;
}
for(i=0;i<M;i++){
/**********found**********/
n=strlen(______);
for(j=0;j<len-n;j++)
/**********found**********/
ss[i]______="*";
/**********found**********/
ss[i][n+j+______]="/0";
}
}
main()
{char ss[M][N]={"shanghai","guangzhou","beijing","tianjin","chongqing"};
int i;
printf("The original strings are:/n");
for(i=0;i<M;i++)
printf("%s",ss[i];
printf("/n");
fun(ss);
printf("The result is:/n");
for(i=0;i<M;i++)
printf("%s",ss[i]);
}
填空题字符串str由数字字符‘0’和‘1’组成(长度不超过8个字符),可看作二进制数,请补充函数fun(),该函数的功能是:把str字符串转换成十进制数,结果由函数返回。例如,输入“1001”,结果输出:9。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。
试题程序:
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int fun(char *str)
{
int n;
char *p=str;
{{U}}【1】 {{/U}};
p++;
while (*p)
{
n={{U}} 【2】 {{/U}};
p++;
}
return{{U}} 【3】 {{/U}};
}
main()
{
char str[9];
int i;
int n;
printf ("Enter a string made up of '0' and
'1' digital character:");
gets (str);
if (strlen(str)>8)
{
printf ("Error:string too longer!
please input again !/n/n");
exit(0);
}
for(i=0;str[i];i++)
if(str[i]<'0'||str[i]>'1')
{
printf("Error:%c not is '0'and
'1' digital character !/n/n",
str[i]);
exit(0);
}
printf("The original string:");
puts(str);
n=fun(str);
printf("/n%s is convered to decimal
number:%d/n/n",str,n);
}
填空题下列程序的输出结果是______。 #include<stdio.h> main() int x=1, y=1,a=1,b=1; switch(x) case 1: switch (y) case 0:a++; break; case 1:b++; break; case2: a++: b++; break; printf("a=%d,b=%d/n",a,b);
填空题下面程序的输出是 【6】 。 main() int arr[10],i,k=0; for(i=0;i<10;i++) arr[i]=i; for(i=1;i<4;i++) k+=arr[i]+i; printf("%d/n"k);
填空题下列程序运行后的输出结果是______。 #include<stdio.h> main() int k=1,s=0; do if((k%2)!=0)continue; s+=k;k++; whiIe(k>10); printf("s=%d/n",s);
填空题下列给定程序中,函数fun的功能是:实现两个整数的交换。例如,给a和b分别输入60和65,输出为:a=65 b=60。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
试题程序:
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
/**********found**********/
void fun(int a, b)
{
int t;
/**********found**********/
t=b; b=a; a=t;
}
void main()
{
int a, b;
system("CLS");
printf("Enter a, b:");
scanf("%d%d",
fun(
printf("a=%d b=%d/n", a, b);
}
填空题以下程序运行后的输出结果是______。 int a=5; fun (int B) static int a=10; a+=b++; printf("%d",A) ; main() int c=20; fun(C) , a+=C++; printf("%d/n",A) ;
填空题有以下语句段:
int n1=10,n2=20;
printf("{{U}} 【15】 {{/U}}",n1,n2);
要求按以下格式输出n1和n2的值:
n1=10
n2=20
每个输出行从第一列开始,请填空。
填空题下面程序的运行结果: 【3】 。 int f(int a[], int n) if(n>1) return a[0]+f( else return a[o]; main() int aa[3]=1, 2, 3, s; s=f( printf("% d/n", s);
填空题在内存中,存储字符'x'要占用1个字节,存储字符串"x"要占用 【11】 个字节。
