第一题:填空题 数组xx[N]保存着一组3位数的无符号正整数,其元素的个数通过变量num传入funn函数。请补充fun函数,该函数的功能是:从数组xx中找出个位和百位的数字相等的所有无符号整数,结果保存在数组yy中,其个数由fun函数返回。
例如:当xx[8]={123,231,232,222,424,333,141,544}时,bb[5]={232,222,424,333,141}。
请勿改动主函数main和其他函数中的任何内容,仅在fun函数的横线上填入所编写的若干表达式或语句。
#include
#include
#define N 1000
int fun(int xx[], int bb[], int num)
{
int i, n = 0;
int g, b;
for (i=0; i { g = ___1___; b = xx[i]/100; if (g == b) ___2___; } return ___3___; } main() { int xx[8] = {123, 231, 232, 222, 424, 333, 141, 544}; int yy[N]; int num = 0, n = 0, i = 0; num = 8; printf("******original data *******\n "); for (i=0; i printf("%u ", xx[i]); printf("\n\n\n"); n = fun(xx, yy, num); printf("\nyy= "); for (i=0; i printf("%u ", yy[i]); } 第一题答案 1:(xx[1]%10) 答案2:(bb[n++]=xx[1]) 答案3:(n) 第二题:改错题 下列给定程序中,函数fun的功能是:求出数组中最大数和次最大数,并把最大数和a[0]中的数对调、次最大数和a[1]中的数对调。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或减行,也不得更改程序的结构! #include #include #define N 20 /********found********/ void fun(int *a, int n); { int i, m, t, k; for (i=0; i<2; i++) { /********found********/ m=0; for (k=i+1; k if (a[k] > a[m]) m = k; t = a[i]; a[i] = a[m]; a[m] = t; } } main() { int b[N] = {11, 5, 12, 0, 3, 6, 9, 7, 10, 8}, n = 10, i; for (i=0; i printf("%d ", b[i]); printf("\n"); fun(b, n); for (i=0; i printf("%d ", b[i]); printf("\n"); } 第二题答案: 第1处:void fun(int *a,int n);应改为void fun(int *a,int n) 第2处:m=o;应改为 m=i; 第三题:编程题 请编写一个函数void fun(char*ss),其功能是:将字符串ss中所有下标为奇数位置上的字母转换为大写(若该位置上不是字母,则不转换)。 例如,若输入abc4EFg,则应输入aBc4EFg.。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。 #include #include #include void fun(char *ss) { } void main( void ) { char tt[51]; FILE *out; printf("\nPlease enter an character string within 50 characters:\n" ); gets( tt ); printf("\n\nAfter changing, the string\n %s", tt ); fun(tt) ; printf( "\nbecomes\n %s", tt ); out=fopen ("out.dat", "w"); strcpy(tt, "After changing, the string"); fun(tt); fprintf(out, "%s", tt); fclose (out ); } 第三题答案: void fun(char *ss) { int i,n=0; char *p=ss; while(*p) { n++; p++; } for (i=0;i if((ss[i]>= ‘a’&& ss[i]<= ‘z’)&&i%2!=0) ss[i]=ss[i]-32; ss[i]= ‘\0’; }
北京 | 天津 | 上海 | 江苏 | 山东 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
广东 | 河北 | 湖南 | 广西 | 河南 |
海南 | 湖北 | 四川 | 重庆 | 云南 |
贵州 | 西藏 | 新疆 | 陕西 | 山西 |
宁夏 | 甘肃 | 青海 | 辽宁 | 吉林 |
黑龙江 | 内蒙古 |