C语言历次上机作业总汇 下载本文

C语言历次上机作业总汇

/*并且要看清题目下标为奇数位置上的字母转换为大写,一要是下标为奇数,二要是小写字母,然后转换为大写字母*/ { int i=0; scanf(\ while(ss[i]!='\\0') { if(ss[i]>='a' && ss[i]<='z' && i%2==1) ss[i]=ss[i]-32; i++; } }

void main( void ) {

char tt[51];

printf( \gets( tt );

printf( \ \\\ fun(tt) ;

printf( \ \\\}

5、请编写函数 fun,函数的功能是求出二维数组周边元素之和,并且通过return语句把周边元素之和作为函数值返回。二维数组中的值在主函数中赋予。 例如:二维数组中的值为

1 3 5 7 9 2 9 9 9 4 6 9 9 9 8 1 3 5 7 0 则函数值为 61。

注意: 部分源程序存在文件PROG1.C文件中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。

#include

#define M 4 //定义符号常量 M, 详见课本41页 #define N 5

int fun ( int a[M][N] ) /*被调用函数要定义数组为二维数组这时候a[M][N]= {{1,3,5,7,9},{2,9,9,9,4},{6,9,9,9,8},{1,3,5,7,0}} */

//思考周边元素的下标如何表示,有什么特点? { int i,j,s=0; for(i=0;i<4;i++) for(j=0;j<5;j++) if(i=0 || i==3 || j==0 || j==4) s=s+a[i][j]; return s; }

void main( )

{ int aa[M][N]={{1,3,5,7,9},{2,9,9,9,4},{6,9,9,9,8},{1,3,5,7,0}};

C语言历次上机作业总汇

int i, j, y;

printf ( \

for ( i=0; i

y = fun ( aa ); /*调用函数fun,用数组名作函数实参时,向形参传递的是数组首元素的地址,即把 {{1,3,5,7,9},{2,9,9,9,4},{6,9,9,9,8},{1,3,5,7,0}};全部传递给a[M][N] */ printf( \ sum: %d\\n\printf(\}

第15次作业

【编程题作业1】输入二个整数,按先大后小的顺序输出。现要求用函数来实现,而且用指针类型的数据作为函数参数。

【编程题作业2】

请编写函数 fun,函数的功能是求出二维数组周边元素之和,并且通过return语句把周边元素之和作为函数值返回。二维数组中的值在主函数中赋予。 例如:二维数组中的值为

1 3 5 7 9 2 9 9 9 4 6 9 9 9 8 1 3 5 7 0

则函数值为 61。

注意: 部分源程序存在文件PROG1.C文件中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。

#include

#define M 4 //定义符号常量 M, 详见课本41页 #define N 5

int fun ( int a[M][N] ) /*被调用函数要定义数组为二维数组这时候a[M][N]= {{1,3,5,7,9},{2,9,9,9,4},{6,9,9,9,8},{1,3,5,7,0}} */ //思考周边元素的下标如何表示,有什么特点? {#include void main() {int i,j,s=0;

for(i=0;i

if(i==0 || i==(M-1) || j==0 || j==(N-1)) s=s+a[i][j]; return s; }

void main( )

{ int aa[M][N]={{1,3,5,7,9},{2,9,9,9,4},{6,9,9,9,8},{1,3,5,7,0}};

C语言历次上机作业总汇

int i, j, y;

printf ( \

for ( i=0; i

y = fun ( aa ); /*调用函数fun,用数组名作函数实参时,向形参传递的是数组首元素的地址,即把{{1,3,5,7,9},{2,9,9,9,4},{6,9,9,9,8},{1,3,5,7,0}};全部传递给a[M][N] */ printf( \ sum: %d\\n\printf(\}

【改错题作业3】

#include int fun(int *x,int y) {

int t ;

/**************found**************/

t = x ; x = y ; t = *x ; *x = y ; //可以参看课本226页例8.3 /**************found**************/ return(y) ; return(t) ; }

void main() {

int a = 3, b = 8 ;

printf(\ %d\\n\

b = fun(&a, b) ; //注意a是双向传递,而b的值会通过return返回,也会最后改变 printf(\ %d\\n\}

【编程题作业4】m个人的成绩存放在score数组中,请编写函数fun,它的功能是: 将低于平均分的人数作为函数值返回,将低于平均分的分数放在below所指的数组中。

例如,当score数组中的数据为:10、20、30、40、50、60、70、80、90时,函数返回的人数应该是4, below中的数据应为: 10、20、30、40。

注意: 部分源程序在文件PROG1.C文件中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 #include #include

int fun(int score[], int m, int below[]) {

int i,j=0,s=0,aver;

C语言历次上机作业总汇

for(i=0;i

for(i=0;i

void main( )

{ int i, n, below[9] ;

int score[9] = {10, 20, 30, 40, 50, 60, 70, 80, 90} ; n = fun(score, 9, below) ;

printf( \

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

【选作题】编写一个函数fun,它的功能是:实现两个字符串的连接(不使用库函数strcat),即把p2所指的字符串连接到p1所指的字符串后。

例如,分别输入下面两个字符串: FirstString-- SecondString 程序输出:

FirstString--SecondString

注意: 部分源程序在文件PROG1.C文件中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 #include void main( )

{ void fun(char p1[ ], char p2[ ]); char s1[80], s2[40] ; printf(\scanf(\fun(s1, s2) ;

printf(\printf(\ }

void fun(char p1[ ], char p2[ ]) { int i=0,j=0; while(p1[i]!='\\0') i++; while(p2[j]!='\\0') p1[i++]=p2[j++]; p1[i]='\\0'; }

C语言历次上机作业总汇

第16次作业

修改题

【作业1】给定程序MODI1.C中函数fun的功能是: 依次取出字符串中所有数字字符, 形成新的字符串, 并取代原字符串。

请改正函数fun中指定部位的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构! #include void fun(char *s) { int i,j;

for(i=0,j=0; s[i]!='\\0'; i++)

if(s[i]>='0' && s[i]<='9') /**********found**********/ s[j]=s[i];

/**********found**********/ s[j]=\}

void main()

{ char item[80];

printf(\ : \

printf(\ string is : \\\ fun(item);

printf(\ : \\\}

【作业2】给定程序MODI1.C中函数fun的功能是:输出M行M列整数方阵,然后求两条对角线上元素之和,返回此和数。

请改正程序中的错误,使它能得出正确的结果。

注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! #include #define M 5

/************found************/ int fun(int n, int xx[][]) { int i, j, sum=0;

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

/************found************/ printf( \ printf(\ }

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

sum += xx[i][i]+xx[i][ n-i-1 ]; return( sum ); }

void 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}}; printf ( \ }