C语言题库2015(8)

2019-08-30 21:49

}

return sum / n; }

/* 函数功能:输入n个学生的某门课成绩 */

void ReadScore(int score[], int n) /* ReadScore()函数定义 */ {

int i;

printf(\ for (i = 0; i < n; i++) {

scanf(\ } }

Q1683.(10分)用二维数组作为函数参数,实现矩阵转置。按如下函数原型编程计算并输出m×n阶矩阵的转置矩阵。其中,m和n的值由用户从键盘输入。已知m和n的值都不超过10。

void Transpose(int a[][N], int at[][M], int m, int n); void InputMatrix(int a[][N], int m, int n); void PrintMatrix(int at[][M], int n, int m);

输入提示信息:\输入格式:\

输出提示信息和格式:\参考答案

#include #define M 10 #define N 10

void Transpose(int a[][N], int at[][M], int m, int n); void InputMatrix(int a[][N], int m, int n); void PrintMatrix(int at[][M], int n, int m); int main() {

int s[M][N], st[N][M], m, n; printf(\ scanf(\ InputMatrix(s, m, n); Transpose(s, st, m, n);

printf(\ PrintMatrix(st, n, m); return 0; }

/* 函数功能:计算m*n矩阵a的转置矩阵at */ void Transpose(int a[][N], int at[][M], int m, int n) {

int i, j;

for (i = 0; i < m; i++) {

for (j = 0; j < n; j++) {

at[j][i] = a[i][j]; } } }

/* 函数功能:输入m*n矩阵a的值 */ void InputMatrix(int a[][N], int m, int n) {

int i, j;

printf(\ for (i = 0; i < m; i++) {

for (j = 0; j < n; j++) {

scanf(\ } } }

/* 函数功能:输出n*m矩阵at的值 */ void PrintMatrix(int at[][M], int n, int m) {

int i, j;

for (i = 0; i < n; i++) {

for (j = 0; j < m; j++) {

printf(\ }

printf(\ } }

Q358.(10分)有一个3*4的矩阵,求其中的最大元素的值。矩阵为: {{1,3,5,7},{2,4,6,8},{15,17,34,12}}; **输出格式要求:\程序运行示例如下: max value is 34 参考答案

#include maxvalue(array)

int array[][4]; {

int i,j,k,max; max=array[0][0]; for(i=0;i<3;i++)

for(j=0;j<4;j++)

if(array[i][j]>max) max=array[i][j]; return max; }

main() {

static int a[3][4]={{1,3,5,7},{2,4,6,8},{15,17,34,12}}; printf(\}

Q434.(10分)除式还原(1)

给定下列除式,其中包含5和7,其它打X的位置上是任意数字,请加以还原。 X7X -------商 -------- -------被除数 除数------XX|XXXXX

X77 -------- X7X X7X ------- XX XX ------- 0

**输出格式要求:\程序运行示例如下: 51463/53=971 参考答案

#include #include main()

{ long int i; int j,k,l;

for(i=10000;i<=99999;i++) if(i00-i0==400) for(j=10;j<=99;j++)

if(i%j==0&&(l=i/j)0>=70&&i0<80&&i!=0&&l>100&&l<=999)

if(j*(l)<100&&j*(l)>10)

if(j*70>=70&&j*70<80)

if(j*(l/100)0==77&&j*(l/100)>100) printf(\}

Q337.(10分)求1到10的阶乘。

**输出格式要求:\ -!=%ld\每行输出5个数的阶乘。 程序运行示例如下:

1!=1 2!=2 3!=6 4!=24 5!=120

6!=720 7!=5040 8!=40320 9!=362880 10!=3628800 参考答案

#include main() {

long int n=1; int i;

for(i=1;i<=10;i++) {

n=n*i;

printf(i%5==0?\ -!=%ld\\n\ -!=%ld\ } }

Q1160.(10分)

下面程序的功能是删除字符串中第一次出现的a字符。找出其中错误,并改正之。 #include #include

void fun(char *x,int n,*t); { int i,k=0;

x[n]='a';x[n+1]='\\0'; while(x*k+!=’a’) k++; if(k==n){*t=0;break;} else

{ for(i=k;i

main() {

char x[20];

int len,t; gets(x); puts(x);

len=strlen(x); fun(x,len,t);

if(t==0) printf(\ else puts(x); }

参考答案

#include #include

void fun(char *x,int n,int *t) { int i,k=0;

x[n]='a';x[n+1]='\\0'; while(x[k]!='a') k++; if(k==n){*t=0;} else

{ for(i=k;i

main() {

char x[20]; int len,t; gets(x); puts(x);

len=strlen(x); fun(x,len,&t);

if(t==0) printf(\ else puts(x); }

Q275.(20分)输入某班学生某门课的成绩(最多不超过40人), 当输入为负值时,表示输入结束,

用函数编程统计成绩不低于平均分的学生人数。 要求:

(1)按如下函数原型进行编程: int GetAboveAver(int score[], int n); (2)在主函数中: 输入学生成绩,

然后调用函数GetAboveAver计算成绩不低于平均分的学生人数,


C语言题库2015(8).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:struts2笔记(入门)

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: