发布时间 : 星期三 文章c语言第9章书后习题 - 编程题更新完毕开始阅读
第9章 数 组
三、编程题
9.27 输入一行数字字符,请用数组元素作为计数器来统计每个数字字符的个数。用下标为0的元素统计字符’0’的个数,用下标为1的元素统计字符’1’的个数……
#include
int a[10]={0},i; char c;
while((c=getchar())!='\\n') { }
for(i=0;i<=9;i++)
printf(\字符的个数:%d\\n\if(c>='0' && c<='9')
a[c-'0']++;
}
9.28 编写函数,对具有10个整数的数组进行如下操作:从下标为n的元素开始直到最后一个元素,依次向前移动一个位置。输出移动后的结果。
#include
#include
void fun(int a[], int n, int m)//m代表数组的大小 { }
void main() {
int a[10],n,i;
for(i=0;i<=9;i++)//产生10个0~39的随机数,并输出 {
a[i]=rand()@; int i;
for(i=n;i } } printf(\ printf(\ scanf(\指定n的值 fun(a,n,10); 9.29 编写函数,把数组中所有奇数放在另一个数组中返回。 #include void fun(int a[], int b[],int * n)//n代表b数组有效数的多少 { } void main() { } 9.30 编写函数,对字符数组中的字母按由大到小的字母顺序进行排序。 int a[10],b[10]={0},i,n; for(i=0;i<=9;i++)//产生10个0~39的随机数,并输出 { } printf(\fun(a,b,&n); for(i=0;i printf(\ printf(\a[i]=rand()@; printf(\int i,j=0; for(i=0;i<10;i++) if(a[i]%2) b[j++]=a[i]; *n=j; #include void fun(char a[], int n)//n代表a数组的大小 { } void main() { } 9.31 输入若干个有序数放在数组中。然后输入一个数,插入到此有序数列中,插入后,数组中的数仍然有序。请对插在最前,插在最后, 插在中间三种情况运行程序,以便验证程序是否正确。 #include char a[10],i=0,n; while((a[i++]=getchar())!='\\n' && i<=9); //排序前输出数组中字符 for(i=0;i<=9;i++) { } printf(\fun(a,10);//排序 //排序后输出数组中字符 for(i=0;i<10;i++) printf(\putchar(a[i]); int i,j; char c;