#include #include #define LEN 20
void fun (char a[], char b[], int n)
{ a[n]=0 ;
strcpy(b , a) ;
strcat(b , a + strlen(a)+1);
} main( )
{ char str1[LEN], str2[LEN] ; int n ; void
printf(\ gets(str1) ;
printf(\ scanf(\ fun(str1, str2, n) ;
printf(\ }
6、请编写一个函数 unsigned fun ( unsigned w ),w 是一个大于10的无符号整数,若 w 是 n (n ≥ 2)位的整数,函数求出w的低 n-1位的数作为函数值返回。
例如:w 值为 5923,则函数返回 923; w 值为 923 则函数返回 23。
注意: 部分源程序存在文件PROG1.C中。
请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 #include
unsigned fun ( unsigned w )
{
unsigned num=w,n=1; while(num!=0) {
num=num/10; n=n*10; } n=n/10; return w%n;
} main( ) { void unsigned x;
printf ( \ printf ( \ if ( x < 10 ) printf (\ else printf ( \ }
7、假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是: 除了字符串前导和尾部的*号之外,将串中其它*号全部删除。形参h已指向字符串中第一个字母,形参p已指向字符串中最后一个字母。在编写函数时,不得使用C语言提供的字符串函数。
例如,字符串中的内容为:****A*BC*DEF*G********,删除后,字符串中的内容应当是:****ABCDEFG********。在编写函数时,不得使用C语言提供的字符串函数。 注意: 部分源程序在文件PROG1.C中。
请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 #include
void fun( char *a, char *h,char *p )
{ char *r,*q;
for(q=p;q>h;q--) {
if(*q == '*') { r=q;
while(*r!='\\0') { *r=*(r+1); r++; } } }
}
main()
{ char s[81],*t, *f; void
printf(\ t=f=s; while(*t)t++; t--;
while(*t=='*')t--; while(*f=='*')f++; fun( s , f,t );
printf(\ }
8、已知学生的记录由学号和学习成绩构成,N名学生的数据已存入a结构体数组中。请编写函数 fun,函数的功能是:找出成绩最低的学生记录,通过形参返回主函数(规定只有一个最低分)。 注意: 部分源程序存在文件PROG1.C文件中。
请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 #include #include #define N 10 typedef struct ss
{ char num[10]; int s; } STU; void fun( STU a[], STU *s )
{ int i;
*s=a[0]; for(i=1;i < N;i++) {
if((*s).s > a[i].s ) *s=a[i]; }
} main ( )
{ STU a[N]={ {\ {\ int i;void
printf(\
for ( i=0; i< N; i++ )printf(\ fun ( a, &m );
printf (\ printf (\ }
9、请编写函数 fun,函数的功能是求出二维数组周边元素之和,作为函数值返回。二维数组中的值在主函数中赋予。
例如:二维数组中的值为 1 3 5 7 9 2 9 9 9 4 6 9 9 9 8