请补充函数fun(),该函数的功能是:把从主函数中输入的由数字字符组成的字符串转换成—个无符号长整数,并且逆序输出。结果由函数返回。
例如,输入: 1 2 3 4 5 6,结果输出:6 5 4 3 2 1。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。
试题程序:
include<conio.h>
include<stdio.h>
include<string.h>
unsigned long fun(char *S)
{
unsigned long t=0;
int k;
int i=0;
i=strlen(S);
for(【 】;i>=0;i--)
{
k=【 】;
t=【 】;
}
return t;
}
main()
{
char str[8];
clrscr();
printf("Enter a string made up of'0'to
'9'digital character:\n");
gets(str);
printf("The string iS:%S\n",str);
if(strlen(str)>8)
printf("The string is too long!");
else
printf("The result:%lu\n",
fun(str));
}
第1题
数。例如, n=8时,输入193.199,195.673,195.757,196.051,196.092, 196.596,196.579,196.763,所得平均值为195.838745,在平均值以上的实数个数应为5。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
试题程序:
include <conio.h>
include <stdio.h>
int fun(float x[], int n)
/***************found*******************/
iht j, c=0;float xa=0.0;
for (j=0; j<n;.j++)
xa+=x[j]/n;
printf("ave=%f\n",xa);
for (j=0; j<n;j++)
if(x[j]>=xa)
c++;
returnc;
}
main()
{float x[l00]={ 193.199,195.673,195.757,
196.051,196.092,196.596,
196.579,196.763};
clrscr ();
printf("%d\n",fun (x,8));
}
第2题
字符和b所指字符串中的字符,按排列的顺序交叉合并到c所指数组中,过长的剩余字符接在c所指数组的尾部。例如,当a所指字符串中的内容为“abcdefg”,b所指字符串中的内容为“1234”1时,c所指数组中的内容应该为“a4b3e2dlefg”;而当a所指字符串中的内容为“1234”,b所指字符串中的内容为“abedefg”时,c所指数组中的内容应该为“lg2f3e4dcba”。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
第3题
数的功能是:统计字符串str中的单词个数,结果由变量num传回。每个单词之间都由空格隔开,并且字符串str开始不存在空格。
例如:str=“how do you do”,结果为:num=4。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。
试题程序:
include <stdio.h>
define N 80
void fun(char *s,int *num)
{
int i,n=0;
for(i=0;【 】;i++)
{
if(s[i]>='a',&&s[i]<='z',&&(s[i+1)==’’||s[i+1]=='\0'))
【 】;
}
【 】;
}
main()
{
char str[N];
int num=0;
printf("Enter a string:\n");
gets(str);
while(str[num])
num++;
fun(str,&num);
printf("The number of word is:
%d\n\n",num);
第4题
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fan的花括号中填入所编写的若干语句。
试题程序:
define M 4
include <stdio.h>
fun(int a[] [M])
{
}
main()
{
int arr[2][M]={5, 8, 3, 45, 76, -4, 12, 82};
printf("max=%d\n",fun(arr));
}
第5题
义)
int fun(int a[N][M])
{int i,j,row=0,col=0;
for(i=0;i<N;i++)
for(j=0;j<M;j++)
if(a[i][j]>a[row][col])(row=i;col=j;)
return(_____);
}
第6题
指向原字符串,删除指定字符后的字符串存放在b所指的数组中,n中存放指定的下标。
例如,输入一个字符串:World,然后输入3。则调用该函数后的结果为:Word。
注意:部分源程序在文件PROGl.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
第7题
的和。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在 main函数的横线上填入所编写的若干表达式或语句。
试题程序:
include<stdio.h>
main()
{
int n, i, j, k, flag, sum;
int aa [50];
sum=O;
k=O;
clrscr ();
for (i=2; i<100; i++)
{
【 】;
for (j=2; j<i&&flag; j++)
if (i%j==O)
{
【 】;
}
if (flag)
{
sum+=i;
【 】;
}
}
printf("\n*** prime number ***\n");
for (i=0; i<k; i++)
{
if (i%10==0)
printf ("\n");
printf ("%4d", aa [i]);
}
printf ("\nsum=%d", sum);
}
第8题
的值。注意数字全部为正整数。
例如,输入308*28,结果为8624.000000。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在 main函数的横线上填入所编写的若干表达式或语句。
试题程序:
include<stdio, h>
main ( )
{
int a=0, b=0, flag=l, fg=l;
float result;
char *p, ch;
char str[10];
clrscr ();
printf("\n Input a string \n");
gets (str);
p=str;
while (*p)
{
if (*p>='0' &&*p<='9' && flag==l )
a=【 】;
else
if (fg)
{
ch=*p;
flag=2;
fg=0;
}
if (*p>='0 ' &&*p<='9' &&flag==2)
b=【 】;
p++;
}
switch(【 】)
{
case '+': result=a+b;break;
case '-': result=a-b;break;
case '*' :result=a*b;break;
case '/' :result= (float) a/b;break;
printf ("\nresult=%f", result);
}
第10题
下列程序的输出结果是( )。
int t(int x,int y,int cp,int dp)
{cp=x% y+y*y;
dp=x+x-y*y;
}
main()
{ im a=4,b=3,c=9,d=8;
t(a,b,c,D);
printf("%d%d\n",c,D);
}
为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!