请补充函数fun(),该函数的功能是:把从主函数中输入的字符串str2接在字符串str1的后面。
例如:str1=“How do”,str2=“you do?”,结果输出: How do you do?
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的横线上填入所编写的若干表达式或语句。
试题程序:
include<stdio.h>
include<conio.h>
define N 40
void fun(char*str1,char *str2)
{
int i=0;
char *pl=str1;
char*p2=str2;
while(【 】)
i++;
for(;【 】;i++)
*(p1+i)=【 】;
*(p1+i)='\0';
}
main()
{
char str1[N],str2[N);
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);
}
第1题
以下程序的运行结果是( )。
main()
(int a=2,b=7,c=5;
switch(a>0)
{case 1:switch(b<0)
{case 1:switch(");break;
case 2:printf("!");break;
}
case 0:switch(c==5)
{case 0:printf("*");break;
case 1:printf("");break;
case 2:printf("$");break;
}
default:printf ("&");
}
printf("\n");
}
第2题
int i,j,max,temp; max=n-1; do{j=0; for(i=0;i<max;i++) if(a[i]<a[i+1]) {temp=a[i];a[i]=a[i+1];a[i+1]=temp; j=i; } max=j; }while(( )); }
第3题
的人数。具体要求为:A类为90~100分,B类为80~89分,C类为70~79分,D类为60~69分,59分以下的为E类。当成绩为0时结束成绩的输入,并且最后输入的0不进行统计。
例如,输入89,99,45,64,56,78,88,74,66,55,0。结果为
A:1 B:2 C:2 D:2 E:3
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在 main函数的横线上填入所编写的若干表达式或语句。
试题程序:
include<stdio.h>
include<conio.h>
define N 100
main()
{
float score[N];
int bb[5];
int grade, i=-1,n=0;
char ch='A';
clrscr();
printf("Input a score(0~100);\n");
do
{
i++;
n++;
printf("score[%d]=",i);
scanf (【 】);
}while (score[i]!=0);
for(i=0;i<5;i++)
【 】;
for(i=0;i<n-1;i++)
{
grade=【 】;
switch(grade)
{
case 10:
case 9:bb[0]++;break;
case 8:bb[1]++;break;
case 7:bb[2]++;break;
case 6:bb[3]++; break;
default:bb[4]++;
}
}
for(i=0;i<5;i++)
printf("\n%c:%d",ch+i,bb[i]);
}
第4题
以下程序的输出结果是【 】。
main()
{ unsigned short a=65536; int b;
printfC%d\n",b=a);
}
第5题
。
inClude<coMo.h>
inClude<stdio.h>
dehne M 5
/************fOUnd************/
int fun(int n,int xx[][])
{int i,j,sum=0;
printf("\n The%dx%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}};
clrscr( );
printf("\n The sum Of all elements On 2 diagnals is %d."fun(M,aa));
}
第6题
,并将该字符前的原字符向后顺序移动。例如,调用fun()函数之前给字符串输入fagAgBDh,调用后宁符串中的内容为AfaggBDh。
请改正程序中的错误,使它能得到正确结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
试题程序:
include<stdio.h>
/*************found************/
void fun(char p)
{
char min,*q;
int i=0;
min=p[i];
while(p[i]!=0)
{
if(min>p[i])
{
/*************found*************/
p=q+i;
min=p[i];
}
i++;
}
while(q>p)
{*q=*(q-1);
q--;
}
p[0]=min;
}
main()
{
char str[80];
printf("Enter a string:");
gets(str);
printf("\nThe original string:");
puts(str);
fun(str);
printf("\nThe string after moving:");
puts(str);
printf("\n\n");
}
第7题
下面程序的输出结果是( )。
main()
{int i=0,a=0;
while(i<20)
{ for(;;)
{ if((i%10)==0)break;
else i--;}
i+=11;
a+=i;
}
printf("%d\n",A);
}
第8题
在t中。高位在低位,低位在高位。例如当s中的数为25846513时,t中的数为6482。 请改正函数fun()中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
试题程序:
include <stdio.h>
include <conio.h>
void fun(long S,long *t)
{
int d;
long sl=l,i=1;
*t=0;
while(s/i>0)
i=i*10;
i=i/10;
while(s>0)
{
d=s/i
/*************found*************/
if(d%2!=0)
{
/*************found*************/
t=d*sl+t;
sl*=l0;
}
S=S%i;
i=i/10;
}
}
main()
{
long S,t;
clrscr();
printf("\nPlease enter S:");
scanf("%ld",&s);
fun(S,&t);
printf("The result is:%ld\n",t);
}
第9题
x的元素个数,并把这些值为x的元素下标依次保存在数组bb中。例如,在“abcdefahij”中查找‘a’,结果为:2个‘a’,下标依次为 0、6。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。
试题程序:
include<stdio.h>
include<conio.h>
define N 20
int bb[N];
int fun(char *str,char ch)
{
int i=0, n=0;
char t=ch;
char *p=str;
while(*p)
{
if (【 】)
【 】;
p++;
i++;
}
return【 】;
}
main()
{
char str[N];
char ch;
int i, j,n;
clrscr();
printf("***Input the original string
***\n");
gets(str);
printf("***The Original ***\n");
puts(str);
printf("***Input character ***\n");
scanf("%c",&ch);
n=fun(str,ch);
printf("\nThe numbr of character is:
%d\n", n);
printf{"***The suffix of character
***\n");
for(i=0;i<n;i++)
printf("%d ",bb[i]);
}
第10题
以下程序运行后的输出结果是( )。
main()
{char c;int n=100;
loat f=10;double x;
x=f*=n/=(c=50);
printf("%d%f\n",n,x);
}
为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!