函数determ(S)返回S矩阵的行列式值。
第1题:
请编写一个函数unsigned short fun(unsigned short s)。其中s是一个大于10的无符号整数,若s是一个n(n≥2)位整数,函数求出s的n位数之和作为函数的返回值。
例如,s值为4315,则函数返回13。s值为13函数,则返回4。
注意:部分源程序已存在文件PROC15.cpp中。
请勿修改主函数和其他函数中的任何内容,仅在函数fun()的花括号中填写若干语句。
文件PROC15.cpp的内容如下:
//PROC15.cpp
include<iostream>
using namespace std;
unsigned short fun(unsigned short s);
int main()
{
unsigned short a;
cout<<"Enter a unsigned short integer number:";
cin>>a;
if(a<10)
cout<<"Data error!";
else
cout<<"The result: "<<fun(a)<<end1;
return 0;
}
unsigned short fun(unsigned short s)
{
//* * * * * *
}
第2题:
若给fun函数的形参s传送字符串:"]]6354abcc" (其中]表示空格字符),则函数的返回值是【19】。
#include <ctype.h>
long fun(char s[])
{long n;int sign;
for(;isspace(*s);s++);
sign=(*s==′-′)?-1:1;
if(*s==′+′||*s==′-′)s++;
for(n=0;isdigit(*s);s++)n=10*n+(*s-′0′);
return sign*n;
}
第3题:
函数my_cmp()的功能是比较字符串s和t的大小,当s等于t时返回0,否则返回s和t的第一个不同字符的ASCII码差值,即s > t时返回正值,当s < t时返回负值。请填空。
my_cmp(char *s, char *t)
{while (*s == *t)
{if (*s == ′\0′)return 0;
++s; ++t;
} return 【18】 ;
}
第4题:
请编写函数count Value(intn),它的功能是:求n以内(不包括n)同时能被3与7整除的所有自然数之和的平方根s, s作为函数返回值,最后结果S输出到文件out.dat中。 例如若n为1000时,函数值应为:s=153.909 064。
第5题:
函数mycmp(char *s,char *t)的功能是比较字符串s和t的大小,当s等于t时返回0,当s>t时返回正值,当s<t时返回负值,请填空。mycmp( char *s,char *t){ while (*s==*t) { if (*s==’\0’)return 0; ++s;++t; } return();}
第6题:
( 8 )已知有函数 f 的定义如下:
int f(){
static int s=0;
s+=2;
return s;
}
则在某程序中第 2 次执行函数调用语句 f( ) ; 时 , 函数 f 的返回值是 ___________ 。
第7题:
若给fun函数的形参s传送字符串:"abc-6354abc",则函数的返回值是( )。(字符串中包括空格)
long fun(char S[])
{long n;int sign;
for(;isspace(*s)||islower(*s);s++);
sign=(*s=='-')?-1:1;
if(*s=='+'||*s=='-')s++;
for(n=0;isdigit(*s);s++)
n=10*n+(*S-'0');
return sign*n;
}
第8题:
●试题二
阅读下列程序或函数说明和C代码,将应填入(n)处的字句写在答题纸的对应栏内。
【函数2.1说明】
函数strcmp()是比较两个字符串s和t的大小。若s<t函数返回负数;若s=t函数返回0;若s>t,函数返回正数。
【函数2.1】
int strcmp(char *s,char *t)
{ while(*s && *t && (1) ){
s++;t++;
}
return (2) ;
}
【程序2.2说明】
在n行n列的矩阵中,每行都有最大的数,本程序求这n个最大数中的最小一个。
【程序2.2】
#includestdio.h
#define N 100
int a[N][N];
void main()
{ int row ,col,max,min,n;
/*输入合法n(<100),和输入n×n个整数到数组a的代码略*/
for (row=0;row<n;row++){
for(max=a[row][0],col=1;col<n;col++)
if( (3) )max=a[row][col];
if( (4) )min=max;
else if( (5) )min=max;
}
printf ("The min of max numbers is %d\n",min);
}
●试题二
【答案】(1)*s == *t(2) *s - *t
【解析】*s 和 *t相等才执行循环体。返回二者差值,恰好符合题目要求。
【答案】(3) a[row][col]>max (4) row == 0(5) max<min
【解析】当前值比max大,则把它赋给max。max是本行最大值。初始化min为第一行的max。该行的max比min小,则将max赋给min。
第9题:
已知字符串s="Access",则函数Right(s,3)后,返回______。
第10题:
A.s*i
B.s*a
C.s+i*i
D.s+a*a