C语言程序设计练习题(含程序及参考答案) 联系客服

发布时间 : 星期一 文章C语言程序设计练习题(含程序及参考答案)更新完毕开始阅读c8cbdbe8f8c75fbfc77db2db

while ((j>=0)&&(ch

{ j--; }

aa[j+1]=ch; } }

void main()

{ char a[N]=\ int i;

printf(\ insert(a);

printf(\}

30、假定整数数组a中元素的值不重复。删除a中值为x的元素(x从键盘输入)。

#include #define N 20

fun(int *a,int n,int x) { int p=0,i; a[n]=x; while(x!=a[p]) p=p+1;

if(p==n) return -1;

else

{

for(i=p;i

第 21 页 共 34 页

void main()

{ int w[N]={-3,0,1,5,7,99,10,15,30,90},x,n,i; n=10;

printf(\ for(i=0;i

printf(\ printf(\ n=fun(w,n,x);

if (n==-1) printf(\ else

{ printf(\

for(i=0;i

31、一个已按从小到大的顺序排好的数组a,编写程序,从键盘输入一个数x按原来排序的规律将它插入数组a中。 #include #define M 20

void InSort( int *n, int vv[], int k ) {

int i=0 , j;

while ( k > vv[i] && i < *n ) i++; if ( i<*n )

for ( j=*n; j>i; j-- ) vv[j] = vv[j-1]; vv[i] = k; ++*n; }

void main() {

int aa[M], i, k, m; system(\

printf( \ scanf( \

printf( \

第 22 页 共 34 页

for( i = 0; i < m; i++ ) scanf( \

printf( \ scanf( \ InSort( &m, aa, k );

for(k=0; k < m;k++)

printf( \}

32、使用数组的方法筛选出1-100中的素数#include void fun ( int *pt ) {

int i,j,flag; *pt=2;*pt++; for(i=3;i<100;i++) {

flag = 1; for(j=2;j

*pt = i;*pt++; } } *pt=0; }

void main( ) {

int *pointer,a[30]; pointer=a; fun(pointer);

printf(\

第 23 页 共 34 页

while(*pointer)

printf ( \ }

33、已知一个数组a中包括10个整数元素,从a中第二个元素起,分别将后项减前项之差存入数组b,并按每行3个元素输出数组b。 #include

void fun(int a[],int b[]) {

int i;

for(i=1;i<10;i++) b[i-1]=a[i]-a[i-1];

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

printf(“=”,b[i]); if((i+1)%3==0) } }

void main() { }

34、请编写函数fun,函数的功能是:将M行N列的二维数组中的字符数据按列的顺序依次放到一个字符串中。 例如,二维数组中的数据为: W W W W S S S S H H H H

则字符串中的内容应是:WSHWSHWSH。

第 24 页 共 34 页

int a[10]={1,2,3,4,5,6,7,8,9,10}; int b[9]; fun(a,b);

printf(“\\n”);